侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

从一个不错的留言本弄的mysql数据库操作类

数据库  /  管理员 发布于 7年前   306

从一个不错的留言本弄的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."|&lsaquo;".$ltail;
     $string .= $link.$SELF.'?page='.($page - 1).$ext.$lmid."&lsaquo;&lsaquo;".$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."&rsaquo;&rsaquo;".$ltail;
     $string .= $link.$SELF.'?page='.$totalpages.$ext.$lmid."&rsaquo;|".$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数据库表中取出随机数据的代码
    下一条:
    如何提高MYSQL数据库的查询统计速度 select 索引应用
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • 分库分表的目的、优缺点及具体实现方式介绍(0个评论)
    • DevDB - 在 VS 代码中直接访问数据库(0个评论)
    • 在ubuntu系统中实现mysql数据存储目录迁移流程步骤(0个评论)
    • 在mysql中使用存储过程批量新增测试数据流程步骤(0个评论)
    • php+mysql数据库批量根据条件快速更新、连表更新sql实现(0个评论)
    • 近期文章
    • 在go中实现一个常用的先进先出的缓存淘汰算法示例代码(0个评论)
    • 在go+gin中使用"github.com/skip2/go-qrcode"实现url转二维码功能(0个评论)
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf文件功能(0个评论)
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • 在go + gin中gorm实现指定搜索/区间搜索分页列表功能接口实例(0个评论)
    • 在go语言中实现IP/CIDR的ip和netmask互转及IP段形式互转及ip是否存在IP/CIDR(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2017-06
    • 2017-08
    • 2017-09
    • 2017-10
    • 2017-11
    • 2018-01
    • 2018-05
    • 2018-10
    • 2018-11
    • 2020-02
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2020-07
    • 2020-08
    • 2020-09
    • 2021-02
    • 2021-04
    • 2021-07
    • 2021-08
    • 2021-11
    • 2021-12
    • 2022-02
    • 2022-03
    • 2022-05
    • 2022-06
    • 2022-07
    • 2022-08
    • 2022-09
    • 2022-10
    • 2022-11
    • 2022-12
    • 2023-01
    • 2023-03
    • 2023-04
    • 2023-05
    • 2023-07
    • 2023-08
    • 2023-10
    • 2023-11
    • 2023-12
    • 2024-01
    • 2024-03
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客