从一个不错的留言本弄的mysql数据库操作类
从一个不错的留言本弄的mysql数据库操作类,初学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.'
'.$sql.'
'.$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 $pgend=(($pgstart==1)?$maxpages:($pgstart+$maxpages-1));
}
for($pg=$pgstart;$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 .= '';
$str .= '
信息提示 |
'.$message; if($referer != '') $str .= ' 如果你的页面没有跳转,请点这里'; $str .= ' |
echo $str;
exit;
}
function showmessage($message,$referer=''){
global $setting,$db;
$start = gettime();
echo nbsp;HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
EOT;
if($referer != '') echo '';
echo
EOT;
require_once('header.html');
echo
EOT;
}
require_once('footer.html');
echo
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);
}
?>

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

MySQL是一個開源的關係型數據庫管理系統。 1)創建數據庫和表:使用CREATEDATABASE和CREATETABLE命令。 2)基本操作:INSERT、UPDATE、DELETE和SELECT。 3)高級操作:JOIN、子查詢和事務處理。 4)調試技巧:檢查語法、數據類型和權限。 5)優化建議:使用索引、避免SELECT*和使用事務。

可以通過以下步驟打開 phpMyAdmin:1. 登錄網站控制面板;2. 找到並點擊 phpMyAdmin 圖標;3. 輸入 MySQL 憑據;4. 點擊 "登錄"。

MySQL是一種開源的關係型數據庫管理系統,主要用於快速、可靠地存儲和檢索數據。其工作原理包括客戶端請求、查詢解析、執行查詢和返回結果。使用示例包括創建表、插入和查詢數據,以及高級功能如JOIN操作。常見錯誤涉及SQL語法、數據類型和權限問題,優化建議包括使用索引、優化查詢和分錶分區。

選擇MySQL的原因是其性能、可靠性、易用性和社區支持。 1.MySQL提供高效的數據存儲和檢索功能,支持多種數據類型和高級查詢操作。 2.採用客戶端-服務器架構和多種存儲引擎,支持事務和查詢優化。 3.易於使用,支持多種操作系統和編程語言。 4.擁有強大的社區支持,提供豐富的資源和解決方案。

Redis 使用單線程架構,以提供高性能、簡單性和一致性。它利用 I/O 多路復用、事件循環、非阻塞 I/O 和共享內存來提高並發性,但同時存在並發性受限、單點故障和不適合寫密集型工作負載的局限性。

MySQL和SQL是開發者必備技能。 1.MySQL是開源的關係型數據庫管理系統,SQL是用於管理和操作數據庫的標準語言。 2.MySQL通過高效的數據存儲和檢索功能支持多種存儲引擎,SQL通過簡單語句完成複雜數據操作。 3.使用示例包括基本查詢和高級查詢,如按條件過濾和排序。 4.常見錯誤包括語法錯誤和性能問題,可通過檢查SQL語句和使用EXPLAIN命令優化。 5.性能優化技巧包括使用索引、避免全表掃描、優化JOIN操作和提升代碼可讀性。

MySQL在數據庫和編程中的地位非常重要,它是一個開源的關係型數據庫管理系統,廣泛應用於各種應用場景。 1)MySQL提供高效的數據存儲、組織和檢索功能,支持Web、移動和企業級系統。 2)它使用客戶端-服務器架構,支持多種存儲引擎和索引優化。 3)基本用法包括創建表和插入數據,高級用法涉及多表JOIN和復雜查詢。 4)常見問題如SQL語法錯誤和性能問題可以通過EXPLAIN命令和慢查詢日誌調試。 5)性能優化方法包括合理使用索引、優化查詢和使用緩存,最佳實踐包括使用事務和PreparedStatemen

直接從數據庫中恢復被刪除的行通常是不可能的,除非有備份或事務回滾機制。關鍵點:事務回滾:在事務未提交前執行ROLLBACK可恢復數據。備份:定期備份數據庫可用於快速恢復數據。數據庫快照:可創建數據庫只讀副本,在數據誤刪後恢復數據。慎用DELETE語句:仔細檢查條件,避免誤刪數據。使用WHERE子句:明確指定要刪除的數據。使用測試環境:在執行DELETE操作前進行測試。
