一天學會PHP程式設計(菜鳥必看,不看後悔)

2021-06-03 20:33:25 字數 4674 閱讀 1889

最簡單的例子就是:

$conn=mysql_connect ("127.0.0.1", "", "");

mysql_select_db("shop");

連線機my sql資料庫,開啟shop資料庫。在實際應用中應當加強點錯誤判斷。

學會讀取資料

先看兩個函式:

1、mysql_query

送出乙個 query 字串。 語法: int mysql_query(string query, int [link_identifier]); 返回值: 整數

本函式送出 query 字串供 mysql 做相關的處理或者執行。若沒有指定 link_identifier 引數,則程式會自動尋找最近開啟的 id。當 query 查詢字串是 update、insert 及 delete 時,返回的可能是 true 或者 false;查詢的字串是 select 則返回新的 id 值,當返回 false 時,並不是執行成功但無返回值,而是查詢的字串有錯誤。

2、mysql_fetch_object 返回類資料。 語法: object mysql_fetch_object(int result, int [result_typ]); 返回值: 類

本函式用來將查詢結果 result 拆到類變數中。若 result 沒有資料,則返回 false 值。

看乙個簡單的例子:

<?

$exec="select * from user";

$result=mysql_query($exec);

while($rs=mysql_fetch_object($result))

?>

當然,表user中有乙個username的字段,這就類似asp中的

<%

exec="select * from user"

set rs=server.createobject("adodb.recordset")

rs.open exec,conn,1,1

do while not rs.eof

response.write "username:"&rs("username")&"

"rs.movenext

loop

%>

當然先要連線資料庫,一般我們 require_once('conn.php');而conn.php裡面就是上一次說的連線資料庫的**。

小小的兩條命令可以完成讀取資料的工作了

學會新增刪除修改資料

mysql_query($exec);

單這個語句就可以執行所有的操作了,不同的就是$exec這個sql語句

新增:$exec="insert into tablename (item1,item2) values ('".$_post['item1']."',".$_post['item1'].")";

刪除:$exec="delete from tablename where...";

修改:$exec="update tablename set item1='".$_post['item1']."' where ...";

說到這裡就要說一下表單和php變數傳遞,如果表單中的乙個

表單以post提交的,那麼處理表單檔案就可以用$_post['item1']得到變數值,同樣以get提交的就是$_get['item1']

是不是很簡單?但是通常$exec會有問題,因為可能您的sql語句會很長,您會遺漏.連線符,或者'來包圍字元型字段。

我們可以注釋mysql_query($exec);語句用echo $exec;代替來輸出$exec以檢查正確性。如果您還不能察覺$exec有什麼錯誤的話,可以複製這個sql語句到phpmyadmin中執行,看看它的出錯資訊。還有需要注意的是,我們不要使用一些敏感的字串作為欄位名字,否則很可能會出現問題,比如說date什麼的。變數的命名,欄位的命名遵循一點規律有的時候對自己是一種好處,初學者並不可忽視其重要性。

學會session的使用

session的作用很多,最多用的就是站點內頁面間變數傳遞。

在頁面開始我們要session_start();開啟session;

然後就可以使用session變數了,比如說要賦值就是:$_session['item']="item1";要得到值就是$item1=$_session['item'];,很簡單吧。這裡我們可能會使用到一些函式,比如說判斷是不是某session變數為空,可以這麼寫:empty($_session['inum'])返回true or false。

下面綜合一下前面所說的我們來看乙個登陸程式,判斷使用者名稱密碼是否正確。

登陸表單是這樣:login.php

處理檔案是這樣

<?

require_once('conn.php');

session_start();

$username=$_post['username'];

$password=$_post['password'];

$exec="select * from admin where username='".$username."'";

if($result=mysql_query($exec))

else

}else

}else

?>

conn.php是這樣:

<?

$conn=mysql_connect ("127.0.0.1", "", "");

mysql_select_db("shop");

?>

由於 $_session['adminname']=$username;我們可以這樣寫驗證是否登陸語句的檔案:checkadmin.php

<?

session_start();

if($_session['adminname']=='')

?>

做乙個分頁顯示

關鍵就是用到了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']))

else

這樣$exec可以這麼寫 $exec="select * from tablename limit ".($page*10).",10";

//一頁是10記錄的

最後我們需要做的就是幾個連線:

firstpage

">prevpage

">nextpage

">lastpage

注意事項

1、注意不要漏了分號

2、注意不要漏了變數前的$

3、使用session的時候注意不要遺漏session_start();

如果發生錯誤的時候,可以採用以下方法:

1、如果是sql語句出錯,就注釋了然後輸出sql語句,注意也要注釋調後續的執行sql語句

2、如果是變數為空,大多是沒有傳遞到位,輸出變數檢查一下,檢查一下表單的id和name

3、如果是資料庫連線出錯,檢查是否正確開啟my sql和是否遺漏了連線語句

4、注意縮排,排除括號不區配的錯誤

在做大**的時候,我的思路是先構建資料庫,確定每乙個欄位的作用,和表之間的關係。然後設計後台介面,從新增資料開始做起,因為新增是否成功可以直接到資料庫裡面驗證,做好了新增再做顯示的頁面,最後才是兩者的結合。一般來說後台就包括新增刪除修改和顯示,後台沒有問題了,前台也沒有什麼大問題。前台還需要注意安全性和容錯還有就是輸出格式。

學會用php上傳檔案和發郵件

上傳檔案表單必須加上 enctype="multipart/form-data"

和 下面看一下**:

$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說到這裡了,想告訴大家的是php入門可以是十天,但是精通決不是十天啊,還需要大家自己去研究

一天學會php 下

session的使用 session的作用很多,最多用的就是站點內頁面間變數傳遞。在頁面開始我們要session start 開啟session 然後就可以使用session變數了,比如說要賦值就是 session item item1 要得到值就 是 item1 session item 很簡單吧...

十天學會PHP之第一天

以前寫了十天學會asp,十天學會asp.net什麼的,現在想想再寫個php吧,也算比較全了。php的除錯方法我這裡就不說了,外面很多文章都有介紹,也有很多不同的組合。我這裡暫時是以 apache web server 和 my sql 作為web伺服器和資料庫,在php 4.3.3下的環境做的程式。...

十天學會php之第一天

以前寫了十天學會asp,十天學會asp.net什麼的,現在想想再寫個php吧,也算比較全了。php的除錯方法我這裡就不說了,外面很多文章都有介紹,也有很多不同的組合。我這裡暫時是以 apache web server 和 my sql 作為web伺服器和資料庫,在php 4.3.3下的環境做的程式。...