我剛才仔細看了下上面的代碼,發現了一個錯誤,我把性別判斷寫到循環之外去了。在這裡跟大家道歉了,現在已經及時更正。呵呵,低級錯誤。但發現錯誤是好事哦,可以總結經驗教訓……好了好了,不找借口了,低頭認錯,呵呵。
OK,我們開始寫編輯和刪除功能吧。我們先來改一下show.php頁面,讓它有個操作區,並且添加[編輯]和[刪除]的連接。讓用戶去操作,具體代碼我帖出來先,我已經把格式盡量弄得方便看了,如何各位還看不明白的話,可以對比上面的show.php看哦。
input.php 文件代碼:(更新版)
[<a href="input.php">繼續添加</a>]
<?php
//這裡是PHP代碼
$sql = "SELECT * FROM `addr_list`";//需要執行的SQL語句(這裡是浏覽數據功能)
require('conn.php'); //調用conn.php文件,執行數據庫操作
?>
<!---這裡HTML代碼,創建一個表格--->
<table width="100%" border="1">
<tr>
<th width="13%" bgcolor="#CCCCCC" scope="col">姓名</th>
<th width="13%" bgcolor="#CCCCCC" scope="col">性別</th>
<th width="13%" bgcolor="#CCCCCC" scope="col">手機</th>
<th width="13%" bgcolor="#CCCCCC" scope="col">郵箱</th>
<th width="29%" bgcolor="#CCCCCC" scope="col">地址</th>
<th width="19%" bgcolor="#CCCCCC" scope="col">操作</th>
</tr>
<?php
//這裡是PHP代碼
//判斷性別
while($row = mysql_fetch_row($result)) //循環開始
{
if($row[2]==0)
{
$sex = '女士';
}
else
{
$sex = '先生';
}
?>
<!---被循環的HTML表格中帶有PHP代碼--->
<tr>
<td><?php echo $row[1]; ?></td>
<td><?php echo $sex; ?></td>
<td><?php echo $row[3]; ?></td>
<td><?php echo $row[4]; ?></td>
<td><?php echo $row[5]; ?></td>
<td><div align="center">
[<a href="edit.php?id=<?php echo $row[0]; ?>">編輯</a>]
[<a href="del.php?id=<?php echo $row[0]; ?>">刪除</a>]
</div></td>
</tr>
<?php
}
?>
</table>
說明:我們的兩個鏈接[編輯]和[刪除]指向的 edit.php 和 del.php 頁面,現在這兩個頁還沒做,我們先來搞清楚為什麼要這樣寫它。我們可以看到它的形式為:edit.php?id=xxx,那麼xxx是什麼?前面講過,不能忘記哦,$row[0]代表調用id嘛,我們用PHP語句寫到鏈接裡,所以它就長成那樣子了,呵呵。轉換出來後,它應該會在地址欄裡顯示類似 edit.php?id=1 的地址,這是一種傳值方式,如果你要研究下,呵呵,google咯,我這裡就不多講了。好,那麼我們試看它們到底有沒有把值傳到 edit.php 和 del.php 頁面了,所以我們先來寫這兩個頁面測試,記得是測試哦,所以不是完整版了,呵呵。
edit.php 文件代碼:(不完整)
<?php
echo $id;
?>
del.php 文件代碼:(不完整)
復制內容到剪貼板<?php
echo $id;
?>
說明:兩個雙胞胎長一模一樣,呵呵。好,大家可以測試一下了,運行show.php,點[編輯]或[刪除],看看$id的值是否能顯示或變換,如果成功的話,我們就可以繼續咯。
OK,現在我們來正式寫edit.php和del.php,如果前面你已經搞清楚post.php和show.php怎麼寫,那麼這兩個也就不成問題了,大同小異,所以不要太緊張。先來寫edit.php吧。
edit.php 文件代碼:(完整版)
<?php
$sql = "SELECT * FROM `addr_list`
WHERE `id`='$id'"; //需要執行的SQL語句(這裡是浏覽數據功能)
//要注意ID哦,這個語句和show.php有些不同
require('conn.php'); //調用conn.php文件,執行數據庫操作
$row = mysql_fetch_row($result); //將SQL執行語句的結果集保存為數組(排隊咯)
?>
<!---我們把input.php的表單扣來加入PHP代碼就可以了,只有性別部分要做特殊處理--->
<form id="form1" name="form1" method="post" action="edited.php">
<p>姓名:<input name="name" type="text" id="name" value="<?php echo $row[1]; ?>" /></p>
<p>
<?php
//特殊處理性別,如果是0就選中女士,否則選種先生,checked="checked"就是選中哦
if($row[2]==0)
{
echo '性別:<input type="radio" name="sex" value="0" checked="checked" />女士
<input type="radio" name="sex" value="1" />先生';
}
else
{
echo '性別:<input type="radio" name="sex" value="0" />女士
<input type="radio" name="sex" value="1" checked="checked" />先生';
}
?>
</p>
<p>手機:<input name="mobi" type="text" id="mobi" value="<?php echo $row[3]; ?>" /></p>
<p>郵箱:<input name="email" type="text" id="email" value="<?php echo $row[4]; ?>" /></p>
<p>地址:<input name="addr" type="text" id="addr" value="<?php echo $row[5]; ?>" /></p>
<p>
<input type="submit" name="Submit" value="添加" />
<input type="reset" name="Submit2" value="重寫" />
</p>
</form>
說明:其實就是把input.php復制過來修改一下了,呵呵,這裡要注意的就是$sql語句,這裡有個SQL的條件句,用來識別ID的,還有就是性別處理部分。checked="checked"表示單選按鈕已被選中,知道這些,這部分就搞頂了。我們還要做一個edited.php頁面用來發送處理修改的數據,它的功能跟post.php差不多了。呵呵,我們抓緊做吧,就快完工咯!
edited.php 文件代碼:
<?php
//需要執行的SQL語句(這裡是修改數據功能)
$sql = "UPDATE `addr_list` SET
`name` = '$name',
`sex` = '$sex',
`mobi` = '$mobi',
`email` = '$email',
`addr` = '$addr'
WHERE `addr_list`.`id` =12 ";
//調用conn.php文件,執行數據庫操作
require('conn.php');
//顯示操作提示,注意$result也是conn.php裡的哦
if($result)
{
echo '恭喜,修改成功!<p>';
}
?>
[<a href="show.php">查看通訊錄</a>] [<a href="input.php">繼續添加</a>]
說明:這裡要注意的也是$sql的SQL語句,我這裡縮進處理了,方便大家看清楚,大家自己寫的時候沒有必要這麼寫了,呵呵。跟post.php八九不離十了,所以也不用多講咯,大家測試一下吧。最後剩下del.php了,勝利就在眼前!呵呵。
del.php 文件代碼:(完整版)
<?php
//需要執行的SQL語句(這裡是刪除數據功能)
$sql = "DELETE FROM `addr_list` WHERE `id`='$id'";
//調用conn.php文件,執行數據庫操作
require('conn.php');
//顯示操作提示,注意$result也是conn.php裡的哦
if($result)
{
echo '恭喜,刪除成功!<p>';
}
?>
[<a href="show.php">查看通訊錄</a>] [<a href="input.php">繼續添加</a>]
說明:這個也是一個模子裡造出來的,呵呵,很簡單,就是$sql的SQL刪除語句有點不同,不管怎麼說,還是建議大家去學一下SQL語法,很有用處的,因為它運用的很廣泛嘛。
好了,到這裡,這篇文章就全部結束啦。我就不上傳源代碼讓大家下載咯,免得某些人跟我一樣喜歡偷懶,呵呵,這招比較絕,逼著想學的人去看,有好處的了。
那麼,還是用老的閉幕式來結束吧,呵呵:
重要說明,一定要看哦,這個只是最簡單、最基礎的東西,只是用來學習的,不能投入使用哦,不然出什麼問題可不要怪我啊,呵呵。如果你要自己用的話,還要進行大量完善,比如加入些驗證功能、優化代碼之類的,還是那句話:有什麼不足的地方,歡迎各位指正,讓大家見笑了。
寫這篇文章最根本的目的:希望能給需要的人一些微薄的幫助。我PHP也是自學的,知道其中的辛苦,所以自己雖然很菜菜,但是也要懂得去分享,也希望每個人都能這樣:共同學習、共同進步