第七天學習目的:學會SESSION的使用

SESSION的作用很多,最多用的就是站點內頁面間變量傳遞。在頁面開始我們要session_start();開啟SESSION;
然后就可以使用SESSION變量了,比如說要賦值就 " /> 亚洲va欧美va,国产成人h片视频在线观看,曰b免费视频

一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

十天學會php(3)


第七天學習目的:學會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" cellspacing="0">
<tr>
<form action="checklogin.php" method="post"><td align="center" valign="middle"><table width="400" border="0" cellpadding="5" cellspacing="1" class="tablebg">
<tr class="tdbg">
<td colspan="2"><div align="center">Administrators Login</div></td>
</tr>
<tr class="tdbg">
<td><div align="center">Username</div></td>
<td><div align="center">
<input name="username" type="text" id="username">
</div></td>
</tr>
<tr class="tdbg">
<td><div align="center">Password</div></td>
<td><div align="center">
<input name="password" type="password" id="password">
</div></td>
</tr>
<tr class="tdbg">
<td colspan="2"><div align="center">
<input type="submit" name="Submit" value="Submit">
<input type="reset" name="Submit2" value="Clear">
</div></td>
</tr>
</table></td></form>
</tr>
</table>

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

conn.php是這樣:
<?
$conn=mysql_connect ("127.0.0.1", "", "");
mysql_select_db("shop");
?>

由于 $_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>

這是一個大致的思路,大家可以想想怎么來優化?今天說到這里,明天說一下一些注意的問題。
第九天學習目的:注意事項

因為我是先學ASP的,所以再做php的時候會發現很多地方需要適應。

1、注意不要漏了分號
2、注意不要漏了變量前的$
3、使用SESSION的時候注意不要遺漏session_start();

如果發生錯誤的時候,可以采用以下方法:
1、如果是SQL語句出錯,就注釋了然后輸出SQL語句,注意也要注釋調后續的執行SQL語句
2、如果是變量為空,大多是沒有傳遞到位,輸出變量檢查一下,檢查一下表單的id和name
3、如果是數據庫連接出錯,檢查是否正確打開MY SQL和是否遺漏了連接語句
4、注意縮進,排除括號不區配的錯誤

在做大網站的時候,我的思路是先構建數據庫,確定每一個字段的作用,和表之間的關系。然后設計后臺界面,從添加數據開始做起,因為添加是否成功可以直接到數據庫里面驗證,做好了添加再做顯示的頁面,最后才是兩者的結合。一般來說后臺就包括添加刪除修改和顯示,后臺沒有問題了,前臺也沒有什么大問題。前臺還需要注意安全性和容錯還有就是輸出格式。

好了,今天說到這里,明天說一下如果用php上傳文件和發郵件。
第十天學習目的:學會用php上傳文件和發郵件

上傳文件表單必須加上 enctype="multipart/form-data"
和 <input type="file" name="file">
下面看一下代碼:

$f=&$HTTP_POST_FILES['file'];
$dest_dir='uploads';//設定上傳目錄
$dest=$dest_dir.'/'.date("ymd")."_".$f['name'];//我這里設置文件名為日期加上文件名避免重復
$r=move_uploaded_file($f['tmp_name'],$dest);
chmod($dest, 0755);//設定上傳的文件的屬性

上傳的文件名為date("ymd")."_".$f['name'] ,可以在以后插入到數據庫的時候用到,php實際上是把你上傳的文件從臨時目錄移動到指定目錄。move_uploaded_file($f['tmp_name'],$dest);這是關鍵

至于發郵件就更加簡單,可以使用mail()函數

mail("收件人地址","主題","正文","From:發件人/r/nReply-to:發件人的地址");

不過mail()需要服務器的支持,在WINDOWS下還需要配置SMTP服務器,一般來說外面的LINUX空間都行。
好像上傳文件和發郵件比ASP簡單很多,只要調用函數就可以了。ASP還需要用到服務器的不同組件比如FSO、JMAIL什么的。

十天學會php說到這里了,我的三大系列文章都用《十天學會》作為名字,想告訴大家的是ASP,php,ASP.NET入門都可以是十天,但是精通決不是十天啊,還需要大家自己去研究。
學習目的:學會用php上傳文件和發郵件

上傳文件表單必須加上 enctype="multipart/form-data"
和 <input type="file" name="file">
下面看一下代碼:

$f=&$HTTP_POST_FILES['file'];
$dest_dir='uploads';//設定上傳目錄
$dest=$dest_dir.'/'.date("ymd")."_".$f['name'];//我這里設置文件名為日期加上文件名避免重復
$r=move_uploaded_file($f['tmp_name'],$dest);
chmod($dest, 0755);//設定上傳的文件的屬性

上傳的文件名為date("ymd")."_".$f['name'] ,可以在以后插入到數據庫的時候用到,php實際上是把你上傳的文件從臨時目錄移動到指定目錄。move_uploaded_file($f['tmp_name'],$dest);這是關鍵

至于發郵件就更加簡單,可以使用mail()函數

mail("收件人地址","主題","正文","From:發件人/r/nReply-to:發件人的地址");

不過mail()需要服務器的支持,在WINDOWS下還需要配置SMTP服務器,一般來說外面的LINUX空間都行。
好像上傳文件和發郵件比ASP簡單很多,只要調用函數就可以了。ASP還需要用到服務器的不同組件比如FSO、JMAIL什么的。

十天學會php說到這里了,我的三大系列文章都用《十天學會》作為名字,想告訴大家的是ASP,php,ASP.NET入門都可以是十天,但是精通決不是十天啊,還需要大家自己去研究。

php技術十天學會php(3),轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产99小视频 | 国产成人短视频 | 怡红院免费全部视频在线视频 | 亚洲九九九 | 欧美色成人综合 | 一二三四在线观看视频中国 | 狠狠ady精品| 91免费视频网 | 中文字幕久久综合 | 最近最新中文字幕在线第一页 | 国产精品制服诱惑 | 国产91久久久久久久免费 | 在线精品国产一区二区 | 一本色道久久88综合亚洲精品高清 | 本道久久综合88全国最大色 | 毛片99| 国产对白在线播放九色 | 久视频在线观看久视频 | 大象焦伊人久久综合网色视 | 精品综合久久久久久97超人该 | 久久伊人精品一区二区三区 | 免费看美女的逼 | 日韩亚洲欧美日本精品va | 一区二区三区四区免费视频 | 欧美日本韩国一区二区 | 99视频精品全部免费观看 | 亚洲经典激情春色另类 | 天天综合网站 | 四虎最新永久免费视频 | 国产一区二区三区在线观看精品 | 视频一区二区在线播放 | 99精品视频在线视频免费观看 | 亚洲精品美女久久久久 | 亚洲成a人片毛片在线 | 香蕉成人999视频 | 亚洲激情第二页 | 桃花阁成人网在线观看 | 亚洲人成图片小说网站 | 中文字幕精品一区影音先锋 | 亚洲午夜久久久久国产 | 天天澡天天摸天天爽免费 |