从一个不错的留言本弄的mysql数据库操作类 2015-01-25 来源:网络 字号:大 中 小 我要评论 收藏本文
从一个不错的留言本弄的mysql数据库操作类,初学php的朋友可以参考下 复制代码 代码如下: <?php class mysql{ var $querynum = 0; function connect($dbhost, $dbuser, $dbpw, $dbname = '',$dbcharset='') { if(!@mysql_connect($dbhost, $dbuser, $dbpw)) { $this->show('Can not connect to MySQL server'); return false; } if($dbname) { $this->select_db($dbname); } if($this->version() > '4.1' && $dbcharset) { $this->query("SET NAMES '".$dbcharset."'"); } return true; } function select_db($dbname) { return mysql_select_db($dbname); } function fetch_array($query, $result_type = MYSQL_ASSOC) { return @mysql_fetch_array($query, $result_type); } function query($sql, $type = '') { if(!($query = mysql_query($sql))) $this->show('MySQL Query Error', $sql); $this->querynum++; return $query; } function affected_rows() { return mysql_affected_rows(); } function result($query, $row) { return mysql_result($query, $row); } function num_rows($query) { return @mysql_num_rows($query); } function num_fields($query) { return mysql_num_fields($query); } function free_result($query) { return mysql_free_result($query); } function insert_id() { return mysql_insert_id(); } function fetch_row($query) { return mysql_fetch_row($query); } function version() { return mysql_get_server_info(); } function close() { return mysql_close(); } function error() { return mysql_error(); } function show($message = '', $sql = '') { if(!$sql) echo $message; else echo $message.'<br>'.$sql.'<br>'.$this->error(); } } class page extends mysql{ function pagination($sql,$maxnum,$page,$maxpages,$pagepre,$ext=''){ global $sum,$stail,$link,$lmid,$ltail,$curpage;//$ext='&class=3' $SELF = $_SERVER['PHP_SELF']; $query = $this->query($sql); $rows = $this->fetch_array($query,MYSQL_NUM); $totalrows = $rows[0]; $totalpages = ceil($totalrows/$maxnum); $startnum = ($page - 1)*$maxnum; $string = $sum.$totalrows.$stail.$sum.$page."/".$totalpages.$stail; if($page != 1){ $string .= $link.$SELF."?page=1".$ext.$lmid."|‹".$ltail; $string .= $link.$SELF.'?page='.($page - 1).$ext.$lmid."‹‹".$ltail; } if($maxpages>=$totalpages){ $pgstart = 1;$pgend = $totalpages; } elseif(($page-$pagepre-1+$maxpages)>$totalpages){ $pgstart = $totalpages - $maxpages + 1; $pgend = $totalpages; } else{ $pgstart=(($page<=$pagepre)?1:($page-$pagepre)); $pgend=(($pgstart==1)?$maxpages:($pgstart+$maxpages-1)); } for($pg=$pgstart;$pg<=$pgend;$pg++){ if($pg == $page){ $string .= $curpage.$SELF."?page=".$pg.$ext.$lmid.$pg.$ltail; } else $string .= $link.$SELF."?page=".$pg.$ext.$lmid.$pg.$ltail; } if($page != $totalpages){ $string .= $link.$SELF.'?page='.($page + 1).$ext.$lmid."››".$ltail; $string .= $link.$SELF.'?page='.$totalpages.$ext.$lmid."›|".$ltail; } return $string; } } function html($str,$allowhtml=0){ $str = get_magic_quotes_gpc()?$str:addslashes($str); if(!$allowhtml){$str = htmlspecialchars($str);} return $str; } function dehtml($str,$allowhtml=0){ $str = stripslashes($str); if(!$allowhtml){$str = nl2br($str);} return $str; } function deip($str){ $arr = explode('.',$str); $str = $arr[0].'.'.$arr[1].'.'.$arr[2].'.*'; return $str; } function setting($login=false){ global $db,$mydbpre; if($login) $sql = "select * from {$mydbpre}setting"; else $sql = "select * from {$mydbpre}setting where keyword != 'username' and keyword != 'password'"; $query = $db->query($sql); while($row = $db->fetch_array($query)){ $arr[$row['keyword']] = $row['val']; if($row['keyword'] == 'name') $arr['title'] = $row['val'].' - Powered by PHPfans'; } return $arr; } function checkcontent($content){ global $db,$mydbpre,$mearr; $arrword = $arrip = array(); $sql = "select * from {$mydbpre}ban where b_type != 0"; $query = $db->query($sql); while($row = $db->fetch_array($query)){ if($row['b_type'] == 1) $arrword[] = $row['b_val']; elseif($row['b_type'] == 2) $arrip[] = $row['b_reval']; } foreach($arrip as $value){ $value = preg_quote($value,'/'); $value = str_replace('\*','\d{1,3}',$value); if(preg_match('/^('.$value.')$/',$_SERVER['REMOTE_ADDR'])){ showmessage($mearr[8],'index.php'); } } foreach($arrword as $val){ $val = preg_quote($val,'/'); if(preg_match('/'.$val.'/',$content)){ showmessage($mearr[7],'index.php'); } } } function replaceword($content){ global $db,$mydbpre; $sql = "select * from {$mydbpre}ban where b_type = 0"; $query = $db->query($sql); while($row = $db->fetch_array($query)){ $content = str_replace($row['b_val'],$row['b_reval'],$content); } return $content; } function showadmin($message,$referer=''){ $str = ''; if($referer != '') $str .= '<meta http-equiv="refresh" content="2;URL='.$referer.'" />'; $str .= ' <table width="45%" align="center" style="border:1px solid #eeeeee; margin-top:50px;"> <tr bgcolor="#CCCCCC"> <td height="25">信息提示</td> </tr> <tr align="center"> <td style="padding:10px 0 10px 0">'.$message; if($referer != '') $str .= '<br /> <br /> <a href="'.$referer.'">如果你的页面没有跳转,请点这里</a>'; $str .= ' </td> </tr> </table>'; echo $str; exit; } function showmessage($message,$referer=''){ global $setting,$db; $start = gettime(); echo <<<EOT <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gbk" /> <title>php爱好者留言簿_提示信息</title> <link type="text/css" href="guest.css" rel="stylesheet"> EOT; if($referer != '') echo '<meta http-equiv="Refresh" content="2;URL='.$referer.'" />'; echo <<<EOT </head> <body> <center> EOT; require_once('header.html'); echo <<<EOT <div class="message"> <h1>php爱好者留言簿 提示信息</h1> {$message} EOT; if($referer != ''){ echo <<<EOT <br /> <a href="{$referer}">如果您的浏览器没有自动跳转,请点击这里</a> </div> EOT; } require_once('footer.html'); echo <<<EOT </center> </body> </html> EOT; exit; } function gettime() { $t = explode(" ",microtime()); return $t[1] + $t[0]; } function checklogin($exit=true){ if(!isset($_COOKIE['islogin']) || $_COOKIE['islogin'] != 1){ if($exit) { echo "请先登陆,谢谢。"; exit; } } else setcookie('islogin',1,time()+60*20); } ?> |
相关热词搜索:从一个不错的留言本弄的mysql数据库操作类
上一篇:真正的ZIP文件操作类(php)
下一篇:php+mysql开源XNA 聚合程序发布 下载
看完本文,您的心情是?
分享到:
收藏
评论排行
Warning: file_put_contents(/home/beiniaofbzepi7n3ica1o/wwwroot/diannao_wang/caches/caches_tpl_data/caches_data/01d36631596929002c517d704775059b.cache.php): failed to open stream: Permission denied in /home/beiniaofbzepi7n3ica1o/wwwroot/diannao_wang/phpcms/libs/classes/cache_file.class.php on line 60- ·如何清除DNS缓存 使用命令清理dns缓存方法(2)
- ·Win8.1升级Win10遇到错误代码0xc190010...(1)
- ·Windows RT 8.1 Update 3九月发布 ...(0)
- ·如何将ubuntu安装到U盘实现即插即用(0)
- ·微软否认Xbox One有远程关闭开关(0)
- ·Surface Book详细拆解:千万不要自己动手修(0)
- ·WIN10免费升级正版手册(5分钟读懂WIN10...(0)
- ·你的今日头条账号为什么会被封?(0)
- ·win7电脑怎么翻墙看国外的网站?(0)
- ·shell脚本运行5秒后自动退出的代码(0)
- ·jsp 不支持EL表达式,解决办法(0)
- ·table合并单元格与img图片铺满整个td的html(0)
- ·Mac OS X 系统备份指南(0)
- ·Shell脚本注释写法(0)
- ·windows8激活码、序列号、激活密钥、激...(0)
- ·从一个不错的留言本弄的mysql数据库操作类(0)
- ·PHP漏洞全解(详细介绍)(0)
- ·phpBB BBcode处理的漏洞(0)
- ·安装Win10技术预览版有风险吗?win10预...(0)
- ·基于mysql的论坛(6)(0)
猜你喜欢
- ·PHP中list方法用法示例
- ·PHP 和 XML: 使用expat函数(三)
- ·ThinkPHP中URL路径访问与模块控制器之间的...
- ·关于php几种字符串连接的效率比较(详解)
- ·《Head First 设计模式》代码之PHP版(面...
- ·php中debug_backtrace、debug_print_back...
- ·PHP数据库万能引擎类adodb配置使用以及实...
- ·PHP MVC模式在网站架构中的实现分析
- ·PHP foreach遍历多维数组实现方式
- ·让codeigniter与swfupload整合的最佳解决方案
- ·关于php程序报date()警告的处理(date_def...
- ·PHP中浮点数计算比较及取整不准确的解决方法
- ·php判断数组元素中是否存在某个字符串的方法
- ·PHP处理Json字符串解码返回NULL的解决方法
- ·PHP5.0对象模型探索之抽象方法和抽象类
- ·透析PHP的配置文件php.ini
热门推荐
- ·php实现计数器方法小结
- ·php根据年月获取季度的方法
- ·如何使用脚本模仿登陆过程
- ·PHP4与PHP3中一个不兼容问题的解决方法
- ·解决PHP mysql_query执行超时(Fatal error: Maximum execution time …)
- ·windows下升级PHP到5.3.3的过程及注意事项
- ·逆序二维数组插入一元素的php代码
- ·利用php生成验证码
- ·php对大文件进行读取操作的实现代码
- ·通过具体程序来理解PHP里面的抽象类
- ·解析Win7 XAMPP apache无法启动的问题
- ·php短域名转换为实际域名函数
- ·PHP的curl实现get,post和cookie(实例介绍)
- ·关于crontab的使用详解
- ·jquery+php+ajax显示上传进度的多图片上传并生成缩略图代码
本月排行
-
Warning: file_put_contents(/home/beiniaofbzepi7n3ica1o/wwwroot/diannao_wang/caches/caches_tpl_data/caches_data/d50dfa9f275437b8228915a0c02fb820.cache.php): failed to open stream: Permission denied in /home/beiniaofbzepi7n3ica1o/wwwroot/diannao_wang/phpcms/libs/classes/cache_file.class.php on line 60
- Yii2 批量插入、更新数据实例
- PHP - Html Transfer Code
- thinkPHP批量删除的实现方法分析
- PHP基础教程(php入门基础教程)一些code代码
- 在php中判断一个请求是ajax请求还是普通请求的方法
- PHP STRING 陷阱原理说明
- 一个从别的网站抓取信息的例子(域名查询)
- 对于ThinkPHP框架早期版本的一个SQL注入漏洞详细分析
- php获取给定日期相差天数的方法分析
- php安装dblib扩展,连接mssql的具体步骤
最近更新
-
Warning: file_put_contents(/home/beiniaofbzepi7n3ica1o/wwwroot/diannao_wang/caches/caches_tpl_data/caches_data/30257104b2a9c5e8aaab8c5c9cc8ef37.cache.php): failed to open stream: Permission denied in /home/beiniaofbzepi7n3ica1o/wwwroot/diannao_wang/phpcms/libs/classes/cache_file.class.php on line 60
- ·PHP递归实现无限级分类
- ·PHP改进计算字符串相似度的函数similar_text()、levenshtein()
- ·PHP启动windows应用程序、执行bat批处理、执行cmd命令的方法(exec、system函数详解)
- ·PHP的mysqli_query参数MYSQLI_STORE_RESULT和MYSQLI_USE_RESULT的区别
- ·PHP错误Warning: Cannot modify header information - headers already sent by解决方法
- ·PHP正则替换函数preg_replace和preg_replace_callback使用总结
- ·PHP PDOStatement对象bindpram()、bindvalue()和bindcolumn之间的区别
- ·CodeIgniter错误mysql_connect(): No such file or directory解决方法
- ·PHP JSON出错:Cannot use object of type stdClass as array解决方法
- ·PHP遍历目录函数opendir()、readdir()、closedir()、rewinddir()总结
- ·phpmyadmin出现Cannot start session without errors问题解决方法
- ·Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 2611816 bytes)
- ·PHP执行Curl时报错提示CURL ERROR: Recv failure: Connection reset by peer的解决方法
- ·php中使用session_set_save_handler()函数把session保存到MySQL数据库实例
- ·PHP错误Parse error: syntax error, unexpected end of file in test.php on line 12解决方法
- ·thinkphp视图模型查询提示ERR: 1146:Table 'db.pr_order_view' doesn't exist的解决方法
- ·浅析application/x-www-form-urlencoded和multipart/form-data的区别
- ·PHP 面向对象程序设计(oop)学习笔记(一) - 抽象类、对象接口、instanceof 和契约式编程
- ·PHP 正则表达式之正则处理函数小结(preg_match,preg_match_all,preg_replace,preg_split)
- ·Fatal error: session_start(): Failed to initialize storage module: files问题解决方法