php 基礎(三) :php進行web開發

3、php進行web開發php

1.Form表單html

1) php 表單傳值mysql

< form method="POST" action="login.php">
用戶名:<input type="text" name="user" size="10"><br/>
密 碼:<input type="text" name="pass" size="10"><br/>
          <input type="submit">
< /form>web

login.php中的處理sql

<?php
$user=$_POST['user']; //若是是get請求$user=$_GET['user']; 
$pass=$_POST['pass'];數據庫

echo "您的用戶名:".$user;
echo "您的密碼:".$pass;
?>

session

也能夠不用變量接收參數,變量$user和$pass在腳本 "login.php"中被自動建立,而且表單裏用戶輸入的值也被賦給該變量框架

<?php 函數

echo "您的用戶名:".$user;
echo "您的密碼:".$pass;
?>post

2)  利用$submit變量,在一個頁面進行登陸和提交後的處理

 < input type="submit" name="submit" value="提交">  爲submit元素設置name屬性,這樣在提交時便可傳遞$submit變量 

 示例以下:

<?

if (!$submit)
{
    // 若是$submit不存在, 尚未提交。所以顯示第一個頁面。
?>

< html>
< head>< /head>

< body>

< form method="GET" action="login.php"> 

用戶名:<input type="text" name="user" size="10"><br/>
密 碼:<input type="text" name="pass" size="10"><br/>
          <input type="submit" name="submit" value="登陸" />

< /form>
< /body>

< /html>

< ?
}
else
{

//處理登陸

?>

< html>
< head> < /head>

< body>

<?php 

echo "您的用戶名:".$user;
echo "您的密碼:".$pass;
?>

< /body>
< /html>

< ?
}
?>

2.發送文件和郵件

上傳文件: 表單中必須加上 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:發件人的地址");

 

3.使用Session

SESSION最多用的是站點內頁面間變量傳遞。在頁面開始要session_start();開啓SESSION;
賦值使用:$_SESSION['item']="item1";取值使用$item1=$_SESSION['item'];

示例:

登陸頁login.php中判斷用戶名密碼是否正確。

<form action="checklogin.php" method="post">

<input name="username" type="text" id="username">
<input name="password" type="password" id="password">
<input type="submit" name="Submit" value="Submit">
<input type="reset" name="Submit2" value="Clear">

</form>

checklogin.php中處理
<?
require_once('conn.php');
session_start();

$exec="select * from user 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("mydatabase");
?>

因爲 $_SESSION['adminname']=$username;咱們能夠這樣寫驗證是否登陸語句的文件:checkadmin.php
<?
session_start();//使用SESSION的時候注意不要遺漏session_start();

if($_SESSION['adminname']=='')
{
echo "<script>alert('Please Login First');location.href='login.php';</script>";
}
?>

 

4.數據分頁展現

用SQL語句中的limit來限定顯示的記錄從幾到幾。須要一個記錄當前頁的變量$page,還須要總共的記錄數$num。

對於$page若是沒有咱們就讓它=1,若是有<1就讓它也=1,若是超過了總的頁數就讓他=總的頁數。

$execc="select count(*) from User";
$resultc=mysql_query($execc);
$rsc=mysql_fetch_array($resultc);
$num=$rsc[0];

這樣能夠獲得記錄總數
ceil($num/10)) //若是一頁10記錄的話,這個就是總的頁數

因此能夠這麼寫
if(empty($_GET['page']))
{
$page=1;
}
else
{
$page=$_GET['page'];
if($page<1)$page=1;
if($page>=ceil($num/10))

   $page=ceil($num/10);
}

這樣$exec能夠這麼寫 $exec="select * from tablename limit ".(($page-1)*10).",10";

最後作的幾個連接:
<a href="UserList.php?page=1">FirstPage</a>
<a href="UserList.php?page=<?=($page-1)?>">PrevPage</a>
<a href="UserList.php?page=<?=($page+1)?>">NextPage</a>
<a href="UserList.php?page=<?=ceil($num/10)?>">LastPage</a>

 

上一篇:php基礎(二):php操做Mysql

下一篇:php Mvc框架

相關文章
相關標籤/搜索