php 常用代碼收藏
PHP常用代碼
1、連接MYSQL數據庫代碼
<?php $connec=mysql_connect("localhost","root","root") or die("不能連接數據庫服務器: ".mysql_error()); mysql_select_db("liuyanben",$connec) or die ("不能選擇數據庫: ".mysql_error()); mysql_query("set names 'gbk'"); ?>
2、讀取數據庫,并實現循環輸出
<?php $sql="select * from liuyan order by ly_id desc"; $conn=mysql_query($sql,$connec); while($rs=mysql_fetch_array($conn)){ ?> 循環的內容......... <?php } ?>
3、如何實現分頁,包括兩個函數,兩個調用
1)兩個函數
<? //分頁函數 function genpage(&$sql,$page_size=2) { global $prepage,$nextpage,$pages,$sums; //out param $page = $_GET["page"]; $eachpage = $page_size; $pagesql = strstr($sql," from "); $pagesql = "select count() as ids ".$pagesql; $conn = mysql_query($pagesql) or die(mysql_error()); if($rs = mysql_fetch_array($conn)) $sums = $rs[0]; $pages = ceil(($sums-0.5)/$eachpage)-1; $pages = $pages>=0?$pages:0; $prepage = ($page>0)?$page-1:0; $nextpage = ($page<$pages)?$page+1:$pages; $startpos = $page$eachpage; $sql .=" limit $startpos,$eachpage "; } //顯示分頁 function showpage() { global $page,$pages,$prepage,$nextpage,$queryString; //param from genpage function $shownum =10/2; $startpage = ($page>=$shownum)?$page-$shownum:0; $endpage = ($page+$shownum<=$pages)?$page+$shownum:$pages;echo "共".($pages+1)."頁: "; if($page>0)echo "<a href=$PHP_SELF?page=0$queryString>首頁</a>"; if($startpage>0) echo " ... <b><a href=$PHP_SELF?page=".($page-$shownum2)."$queryString>?</a></b>"; for($i=$startpage;$i<=$endpage;$i++) { if($i==$page) echo " <b>[".($i+1)."]</b> "; else echo " <a href=$PHP_SELF?page=$i$queryString>".($i+1)."</a> "; } if($endpage<$pages) echo "<b><a href=$PHP_SELF?page=".($page+$shownum2)."$queryString>?</a></b> ... "; if($page<$pages) echo "<a href=$PHP_SELF?page=$pages$queryString>尾頁</a>"; } //顯示帶分類的分頁 function showpage1() { $fenlei=$_GET["fenleiid"]; global $page,$pages,$prepage,$nextpage,$queryString; //param from genpage function $shownum =10/2; $startpage = ($page>=$shownum)?$page-$shownum:0; $endpage = ($page+$shownum<=$pages)?$page+$shownum:$pages;
echo "共".($pages+1)."頁: "; if($page>0)echo "<a href=$PHP_SELF?fenleiid=$fenlei&page=0$queryString>首頁</a>"; if($startpage>0) echo " ... <b><a href=$PHP_SELF?fenleiid=$fenlei&page=".($page-$shownum2)."$queryString>?</a></b>"; for($i=$startpage;$i<=$endpage;$i++) { if($i==$page) echo " <b>[".($i+1)."]</b> "; else echo " <a href=$PHP_SELF?fenleiid=$fenlei&page=$i$queryString>".($i+1)."</a> "; } if($endpage<$pages) echo "<b><a href=$PHP_SELF?fenleiid=$fenlei&page=".($page+$shownum2)."$queryString>?</a></b> ... "; if($page<$pages) echo "<a href=$PHP_SELF?fenleiid=$fenlei&page=$pages$queryString>尾頁</a>"; } ?></pre>
2)兩個調用
第一個
<?php $sql="select * from liuyan order by ly_id desc"; genpage($sql); //只需要正常代碼加上這一行就ok。 $conn=mysql_query($sql,$connec); while($rs=mysql_fetch_array($conn)){ ?>
第二個
<?php } ?> <?php showpage(); //顯示頁 ?> <?php mysql_close();?></pre>
4、服務器端包含
<?php require_once('conn.php'); ?>
5、如何將一條記錄寫入數據庫,然后提示并跳轉頁面
<?php $ly_title=$_POST["ly_title"]; $ly_content=$_POST["ly_content"]; $ly_time=$_POST["ly_time"]; $ly_author=$_POST["ly_author"]; $ly_email=$_POST["ly_email"]; $sql="insert into liuyan(ly_title,ly_content,ly_time,ly_author,ly_email) values('".$ly_title."','".$ly_content."','".$ly_time."','".$ly_author."','".$ly_email."')"; mysql_query($sql,$connec); echo("<script type='text/javascript'> alert('添加成功!');location.href='index.php';</script>"); ?>
6、彈出對話框,并發生頁面跳轉
<?php echo("<script type='text/javascript'> alert('添加成功!');location.href='index.php';</script>"); ?>
7、信息查看頁面(有條件讀取數據庫)
1)有條件讀取數據庫
<?php $sql="select * from liuyan where ly_id=$_GET[id]"; $conn=mysql_query($sql,$connec); $rs=mysql_fetch_array($conn); ?>
2)將某個字段輸出
<?=$rs[ly_title]?>
3)關閉數據庫
<?php mysql_close(); ?>
8、對數據庫中某一條記錄進行更新操作,并作提示跳轉
<?php $ly_title=$_POST["ly_title"]; $ly_content=$_POST["ly_content"]; $ly_time=$_POST["ly_time"]; $ly_author=$_POST["ly_author"]; $ly_email=$_POST["ly_email"]; $sql="update liuyan set ly_title='$ly_title',ly_content='$ly_content',ly_time='$ly_time',ly_author='$ly_author',ly_email='$ly_email' where ly_id=$_GET[id]"; mysql_query($sql,$connec); echo("<script type='text/javascript'> alert('更新成功!');location.href='../index.php';</script>"); ?>
9、如何刪除數據庫中的一條記錄
<?php $sql="delete from liuyan where ly_id=$_GET[id]"; mysql_query($sql,$connec); echo("<script type='text/javascript'> alert('刪除成功!');location.href='../index.php';</script>"); ?>
10、如何進行會員登錄驗證
<?php session_start(); $username=$_POST["username"]; $password=$_POST["password"]; $sql="select * from admin where username='".$username."' && password='".$password."'"; $result=mysql_query($sql,$connec); if($row=mysql_fetch_array($result)){ session_register("admin"); $admin=$username; echo("<script type='text/javascript'> alert('登錄成功!');location.href='admin.php';</script>");} else { echo("<script type='text/javascript'> alert('你輸入的用戶名或密碼錯誤,請重新輸入!');location.href='login.php';</script>"); } mysql_close(); ?>
11、如何對SESSION進行檢驗(后臺檢查頁面的制作)
<?php session_start(); if(!isset($_SESSION["admin"])){ header("location:login.php"); exit; } ?>
12、驗證用戶名及密碼是否填寫(javascript)
<SCRIPT language=javascript> <!-- function confirmlogin() { if (document.frmmain.username.value.length<4 || document.frmmain.username.value=="") { document.frmmain.username.focus(); document.frmmain.username.select; window.alert("請輸入你的用戶名!"); return false; } if (document.frmmain.password.value.length<4) { document.frmmain.password.focus(); document.frmmain.password.select; window.alert("請輸入你的密碼!"); return false; } return true; } //--></SCRIPT></pre>
13、在PHP中調用編輯器的方法
1)將編輯器文件夾放置后臺管理文件夾內。
2)利用以下語句進行引入操作。
<input name="content" type="hidden" value=''>
<IFRAME ID="eWebEditor1" src="eWebEditorPHP38/ewebeditor.htm?id=content&style=coolblue" frameborder="0" scrolling="no" width="550" height="350"></IFRAME>
注:eWebEditorPHP38編輯器文件夾的名稱。
id=content中content為上面隱藏域的名稱
14、循環輸出(能夠實現分列)
1)首先插入一行一列表格
<?php $i=1; ?> <table> <tr> <?php while($rs=mysql_fetch_array($conn)){ ?><td> 被循環的其它表格和輸出 </td> <?php if ($i % 2==0) { echo "</tr><tr>"; } $i++; } ?> </tr> </table></pre>
15、給下拉列表框綁定數據(并且在修改時默認選中)
<select name="fenleiid"> <?php $sql="select * from fenleibiao"; $conn=mysql_query($sql,$connec); while($rs1=mysql_fetch_array($conn)){ ?><option value="<?=$rs1["fenleiid"]?>" <? if ($rs["fenleiid"]==$rs1["fenleiid"]){ echo "selected" ; } ?>>
<?=$rs1["flname"]?> </option> <?php> } ?> </select> 16、獲取字符長度函數 strlen($c)>12</pre>
17、定義一個字符截取函數
用法:<?=substrgb($rs["title"],10)?> function substrgb($in,$num){ $pos=0; $out=""; while($c=substr($in,$pos,1)){ if($c=="\n") break; if(ord($c)>128){ $out.=$c; $pos++; $c=substr($in,$pos,1);$out.=$c; }else{ $out.=$c; } $pos++; if($pos>=$num) break; } if($out!=$in) $out = $out . "..."; return $out; }</pre>
18、判斷是否是數字
!is_numeric(qq)19、PHP技術中獲取當前日期
$ptime=date("y-m-d");20、用戶注冊時所使用的PHP驗證程序
if ($admin=="" or (strlen($admin)>16) or (strlen($admin)<2)) { echo "<SCRIPT language=JavaScript>alert('請輸入用戶名(不能大于16小于2)');"; echo"this.location.href='vbscript:history.back()';</SCRIPT>"; } if ($password=="" or strlen($password)>16 or strlen($password)<6) { echo "<SCRIPT language=JavaScript>alert('密碼長度為6-16個字符');"; echo"this.location.href='vbscript:history.back()';</SCRIPT>";} if ($password=="") { echo "<SCRIPT language=JavaScript>alert('確認密碼不能為空');"; echo"this.location.href='vbscript:history.back()';</SCRIPT>";
}else{ if ($password!=$password1) { echo "<SCRIPT language=JavaScript>alert('密碼和確認密碼不一致');"; echo"this.location.href='vbscript:history.back()';</SCRIPT>";
} } if ($wt="") { echo "<SCRIPT language=JavaScript>alert('密碼問題不能為空');"; echo"this.location.href='vbscript:history.back()';</SCRIPT>";
} if ($da="") { echo "<SCRIPT language=JavaScript>alert('問題答案不能為空');"; echo"this.location.href='vbscript:history.back()';</SCRIPT>";
} if ($qq!="") { if (!is_numeric($qq)) { echo "<SCRIPT language=JavaScript>alert('QQ號碼必須是數字');"; echo"this.location.href='vbscript:history.back()';</SCRIPT>";
} } if ($youbian=="" or strlen($youbian)!=6) { echo "<SCRIPT language=JavaScript>alert('請正確輸入郵編');"; echo"this.location.href='vbscript:history.back()';</SCRIPT>";
} if ($youbian!="") { if (!is_numeric($youbian)) { echo "<SCRIPT language=JavaScript>alert('郵編必須是數字');"; echo"this.location.href='vbscript:history.back()';</SCRIPT>";
} } if ($dizhi="") { echo "<SCRIPT language=JavaScript>alert('住址不能為空');"; echo"this.location.href='vbscript:history.back()';</SCRIPT>";
} if ($mail=="") { echo "<SCRIPT language=JavaScript>alert('E-mail不能為空!');"; echo "this.location.href='vbscript:history.back()';</SCRIPT>"; } if ($textarea=="") { echo "<SCRIPT language=JavaScript>alert('個人說明不能為空!');"; echo "this.location.href='vbscript:history.back()';</SCRIPT>"; } if ($textarea=="" or strlen(textarea)>150) { echo "<SCRIPT language=JavaScript>alert('個人說明為150個字符');"; echo"this.location.href='vbscript:history.back()';</SCRIPT>";
}</pre>
24、對輸出的內容進行判斷,從而輸出其它結果
<?php if ($rs["active"]==1) { echo "<font color='#ff0000'>激活</font>"; }else{ echo "禁用"; }?></pre>
25.字符截取函數
<?=substr("$rs[zixun_biaoti]",0,28 )?>
26.男女問題或單選帶選擇的
<input type="radio" name="hy_zhuangtai" value="男" <?php if ($rs["hy_zhungtai"]==="男") { echo "checked";}?>>男 <input type="radio" name="hy_zhuangtai" value="女" <?php if ($rs["hy_zhuangtai"]==="女") { echo "checked";}?>>
女</pre>
27.單選不帶單選框的
<?php if ($rs['hy_zhuangtai']=='鎖定'){?> <a href="Userzt.php?action=yes&id=<?php echo $rs['hy_id'];?>">鎖定</a><?php } else{ ?><a href="Userzt.php?id=<?php echo $rs['hy_id'];?>&action=no">解鎖</a>
<?php }?> 它的 save頁是 <?php require_once('../../conn.php'); ?> <?php $hy_id=$_GET['id']; $action=$_GET['action']; if ($action=='yes'){ $sql="update hybiao set hy_zhuangtai='鎖定' where hy_id='$id'"; $query=mysql_query($sql,$connec); echo("<script type='text/javascript'>location.href='UserManage.php';</script>"); } else{ $sql="update hybiao set hy_zhuangtai='正常' where hy_id='$id'"; $query=mysql_query($sql,$connec); echo("<script type='text/javascript'>location.href='UserManage.php';</script>"); } mysql_close(); ?>
28.如果文字過長,則將過長的部分變成省略號顯示 <DIV STYLE="width: 120px; height: 50px; border: 0px solid blue;overflow: hidden; text-overflow:ellipsis"> <NOBR>就是比如有一行文字,很長,表格內一行顯示不下.</NOBR> </DIV> </pre>
29.
禁止復制,鼠標拖動選取
<body ondragstart=window.event.returnValue=false oncontextmenu=window.event.returnValue=false onselectstart=event.returnValue=false>
30.大 中 小 文字的變化
<script type="text/javascript"> function doZoom(size) {document.getElementById('zoom').style.fontSize=size+'px';} </script> <span id="zoom">需要指定大小的文字</span> <a href="javascript:doZoom(16)">大</a> <a href="javascript:doZoom(14)">中</a> <a href="javascript:doZoom(12)">小</a>
30.
添加到收藏夾和設為首頁
<a href=# onclick="this.style.behavior='url(#default#homepage)';this.setHomePage('http://www.makewing.com/lanren/');">設為首頁</a> <a href="javascript:window.external.AddFavorite('http://www.makewing.com/lanren/','懶人圖庫')">收藏本站</a>
31.
記錄并顯示網頁的最后修改時間 <script language=JavaScript> document.write("最后更新時間: " + document.lastModified + "") </script>
32.
節日倒計時
<Script Language="JavaScript">var timedate= new Date("October 1,2002"); var times= "國慶節"; var now = new Date(); var date = timedate.getTime() - now.getTime(); var time = Math.floor(date / (1000 60 60 * 24)); if (time >= 0) document.write( "現在離"+times+"還有: "+time +"天") </Script> </pre>
33.
打開窗口即最大化
<script language="JavaScript"> <!-- Begin self.moveTo(0,0) self.resizeTo(screen.availWidth,screen.availHeight) // End --> </script>
34.
加入背景音樂
<bgsound src="mid/windblue[1].mid" loop="-1"> 只適用于IE<embed src="music.mid" autostart="true" loop="true" hidden="true"> 對Netscape ,IE 都適用 35. 滾動 <marquee direction=up height=146 onmouseout=start() onmouseover=stop() scrollAmount=2> 滾動信息 </marquee> </pre>
36.
防止點擊空鏈接時,頁面往往重置到頁首端
代碼“javascript:void(null)”代替原來的“#”標記
37.
不能點右鍵,不用CTRL+A,不能復制作!
<body oncontextmenu="window.event.returnValue=false" onkeypress="window.event.returnValue=false"onkeydown="window.event.returnValue=false" onkeyup="window.event.returnValue=false" ondragstart="window.event.returnValue=false" onselectstart="event.returnValue=false"> </body> </pre>
37.
隨機變換背景圖象(一個可以刷新心情的特效)
<Script Language="JavaScript"> image = new Array(4); //定義image為圖片數量的數組 image [0] = 'tu0.gif' //背景圖象的路徑 image [1] = 'tu1.gif' image [2] = 'tu2.gif' image [3] = 'tu3.gif' image [4] = 'tu4.gif' number = Math.floor(Math.random() * image.length); document.write("<BODY BACKGROUND="+image[number]+">"); </Script>
38.
劃過鏈接 手型鼠標
style="cursor:hand"
39.
如何關閉層
<div id="Layer1"></div> <a href="#" onClick="Layer1.style.display='none'">關閉層</a>40. <a href=javascript:close()>[關閉窗口]</a></pre>
41.
凹陷文字背景為灰色
<div style="width:300px;padding:20px;overflow:hidden;word-wrap:break-word;word-break:break:all; font-size:12px; line-height:18px; background-color:#eeeeee;"> <font disabled> 怎么樣,我凹下去了吧?<br>你不想試試嗎?<br> <a href="www.lenvo.cn; </div> </pre>
42.
給表格做鏈接
<table width="100%" onclick="window.open('</tr> </table></pre>
43.
后退&關閉窗口
后退:javascript:history.back(1) 關閉:javascript:window.close();
44.
如果文字過長,則將過長的部分變成省略號顯示
<DIV STYLE="width: 120px; height: 50px; border: 0px solid blue;overflow: hidden; text-overflow:ellipsis"> <NOBR>就是比如有一行文字,很長,表格內一行顯示不下.</NOBR> </DIV>
45.
禁止復制,鼠標拖動選取
<body ondragstart=window.event.returnValue=false oncontextmenu=window.event.returnValue=false onselectstart=event.returnValue=false>