一天學會php(下)

來源:互聯網
上載者:User

SESSION的使用

SESSION的作用很多,最多用的就是網站內頁面間變數傳遞。在頁面開始我們要session_start();
開啟SESSION;
然後就可以使用SESSION變數了,比如說要賦值就是:$_SESSION['item']="item1";要得到值就
是$item1=$_SESSION['item'];,很簡單吧。這裡我們可能會使用到一些函數,比如說判斷是不是
某SESSION變數為空白,可以這麼寫:empty($_SESSION['inum'])返回true or false。
下面綜合一下前面所說的我們來看一個登陸程式,判斷使用者名稱密碼是否正確。
登陸表單是這樣:login.php

<table width="100%" height="100%" border="0" align="center" cellpadding="0"<br />cellspacing="0"><br /><tr><br /><form action="checklogin.php" method="post"><td align="center" valign="middle"><table<br />width="400" border="0" cellpadding="5" cellspacing="1" class="tablebg"><br /><tr class="tdbg"><br /><td colspan="2"><div align="center">Administrators Login</div></td><br /></tr><br /><tr class="tdbg"><br /><td><div align="center">Username</div></td><br /><td><div align="center"><br /><input name="username" type="text" id="username"><br /></div></td><br /></tr><br /><tr class="tdbg"><br /><td><div align="center">Password</div></td><br /><td><div align="center"><br /><input name="password" type="password" id="password"><br /></div></td><br /></tr><br /><tr class="tdbg"><br /><td colspan="2"><div align="center"><br /><input type="submit" name="Submit" value="Submit"><br /><input type="reset" name="Submit2" value="Clear"><br /></div></td><br /></tr><br /></table></td></form><br /></tr><br /></table>

處理檔案checklogin.php

<?<br />require_once('conn.php');<br />session_start();<br />$username=$_POST['username'];<br />$password=$_POST['password'];<br />$exec="select * from admin where username='".$username."'";<br />if($result=mysql_query($exec))<br />{<br />if($rs=mysql_fetch_object($result))<br />{<br />if($rs->password==$password)<br />{<br />$_SESSION['adminname']=$username;<br />header("location:index.php");<br />}<br />else<br />{<br />echo "<mce:script type="text/javascript"><!--<br />alert('Password Check Error!');location.href='login.php';<br />// --></mce:script>";<br />}<br />}<br />else<br />{<br />echo "<mce:script type="text/javascript"><!--<br />alert('Username Check Error!');location.href='login.php';<br />// --></mce:script>";<br />}<br />}<br />else<br />{<br />echo "<mce:script type="text/javascript"><!--<br />alert('Database Connection Error!');location.href='login.php';<br />// --></mce:script>";<br />}<br />?>

由於 $_SESSION['adminname']=$username;我們可以這樣寫驗證是否登陸語句的檔案:
checkadmin.asp
<?
session_start();
if($_SESSION['adminname']=='')
{
echo "<script>alert('Please Login First');location.href='login.php';</script>";
}
?>

 

做一個分頁顯示

關鍵就是用到了SQL語句中的limit來限定顯示的記錄從幾到幾。我們需要一個記錄當前頁的變數
$page,還需要總共的記錄數$num
對於$page如果沒有我們就讓它=0,如果有<0就讓它也=0,如果超過了總的頁數就讓他=總的頁
數。
$execc="select count(*) from tablename ";
$resultc=mysql_query($execc);
$rsc=mysql_fetch_array($resultc);
$num=$rsc[0];
這樣可以得到記錄總數
ceil($num/10))如果一頁10記錄的話,這個就是總的頁數
所以可以這麼寫
if(empty($_GET['page']))
{
$page=0;
}
else
{
$page=$_GET['page'];
if($page<0)$page=0;
if($page>=ceil($num/10))$page=ceil($num/10)-1;//因為page是從0開始的,所以要-1
}
這樣$exec可以這麼寫 $exec="select * from tablename limit ".($page*10).",10";
//一頁是10記錄的
最後我們需要做的就是幾個串連:
<a href="xxx.php?page=0">FirstPage</a>
<a href="xxx.php?page=<?=($page-1)?>">PrevPage</a>
<a href="xxx.php?page=<?=($page+1)?>">NextPage</a>
<a href="xxx.php?page=<?=ceil($num/10)-1?>">LastPage</a>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.