動態網頁技術PHP入門基礎:開始編程

來源:互聯網
上載者:User

一、編程之前的分析

   要做一個留言板,而且我們也決定了採用資料庫方式做,所以我們要從以下幾個步驟開始做:

  1.填寫留言

   在什麼地方寫留言?

  2.傳送留言 

    在文字框中輸入了資料後肯定要以什麼方式傳到一個什麼檔案,而後一個檔案又是這麼接收變數的。

  3.入資料庫

   後一個檔案將接收的資料要進入資料庫,所以,我們還要掌握這麼往資料庫中寫入資料。

  4.查看結果

   將留言寫入資料庫後,主要是為了能在瀏覽器中查看,所以,我們要知道這麼從資料庫中讀出資料。

二、做一個填寫留言的檔案(write.htm)

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

   請輸入您的暱稱:<input type="text" name="nickname"><br>

   請留言:<textarea name="note"></textarea><br>

   <input type="submit" value="確定">

  </form>

三、PHP變數傳送

    熟悉ASP的朋友可能知道,從一個檔案傳送變數到另一個檔案後,第二個檔案是request接收資料的;而PHP似乎更簡單,當一個檔案將變數傳送到另一個檔案後,自動產生一個變數,下面,我將ASP和PHP分別舉個例子。

 1.ASP:

form.htm:

<form action="asp_to.asp" method="post">

 輸入暱稱:<input type="text" name="nickname">

<input type="submit" value="確定">

</form>

asp_to.asp:

  您輸入的暱稱是:<%  response.write(request.form("nickname"))  %>

簡單說明:在第一個檔案中,有一個文字框,其名為nickname 和一個確定按鈕,在文字框中輸入資訊後,點“確定”,瀏覽器將提交到asp_to.asp 該檔案將你在文字框中的內容顯示出來,response.write就是顯示輸出,而request就是接收變數“nickname”。

2.PHP:

form.htm:

該檔案和上面的相同,只是將asp_to.asp改為php_to.php,也就是將輸入的變數提交到一個名為php_to.php的PHP檔案。

php_to.php:

您輸入的暱稱是:<?    echo $nickname;     ?>

如此而已,其中echo為顯示輸出,相當於ASP中的 response.write 而$表示變數,PHP的變數用$表示。

 四、PHP操作資料庫

  在上一節中,我介紹了MySQL資料庫和資料表的建立。下面,將從一個例子簡單介紹PHP操作資料庫的方式。[ 例一 ]

<?

  $id=mysql_connect('localhost','root','adminpassword');

  $db=mysql_select_db('gsbook',$id);

  $result=mysql_query('select * from gsbook',$db);

  $maxrows=mysql_num_rows($result);

  for ($i=0;$i<$maxrows;$i++)

   {

    $nickname[$i]=mysql_result($result,$i,'nickname');

    }

  for ($i=$i-1;$>=0;$i--)

  {

   echo "nickname:".$nickname[$i]."<br>";  

  }

 ?>

 簡單說明:

  1.函數 int mysql_connect(string [ hostname ][:port],string [username],string [password])返回一個MySql的串連ID,其參數相信大家一看就知道。

  2.函數 int mysql_select_db(string database_name, int [ link_identifier ])用來開啟資料庫,第一個函數為資料庫名稱,第二個為MySQL的串連ID,傳回值為ture或false

  3.函數 int mysql_query(string query, int [ link_identifier])返回一個結果(result)

  4.函數 int mysql_num_rows(int result)返回query的行數。

  5.函數 int mysql_result(int result,int row,mixed field)該函數返回某欄位在某行的結果,第二個參數為行數,第三個參數為欄位名;需要說明的是,該欄位名並不是物理欄位名,比如: select field1 as alias_field from table1 那麼,在該函數中的第三個參數必須為 alias_field 而不是 field1。

  6.PHP中的迴圈語句:

   (1)do ... while

   (2)while ... [end while]

   (3)for (expr1;expr2;expr3)

   和C差不多的,在這裡不再詳細介紹。

  7.在上例中,用了兩個for迴圈語句,第一個用來將資料庫中的值讀到一個數組中,第二個用來將數組中的值顯示出來。注意第二個for迴圈的“$i=$i-1;”這是因為在第一個迴圈後變數$i的值已經自加了1;所以從數組中取值時,應該減去1。

  8.PHP中字串的相加用“.”,相當於ASP中(VB文法)的“+”或“&”。

    9.所以,上面代碼實現的功能就是從資料庫中讀出資料,並顯示出來。

  下面,我們來向資料庫中添加一條記錄,先看代碼[ 例二 ]:

<?

  $id=mysql_connect('localhost','root','adminpassword');

  $db=mysql_select_db('gsbook',$id);

  $sql='insert into gsbook values('.chr(39).$nickname.chr(39).')';

  if (mysql_query($sql,$db)>0)  {

    echo "OK";

   }

  else {

   echo "Failed!";

 }

 ?>

 簡單說明:

 1.對於熟悉SQL語句的朋友,看了例一的簡單介紹後一定知道例二的功能。



相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

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

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