close
文章出處
上一篇,我們講了一張表如何刪除和添加數據,下面講一下如何修改一張表
還是使用那張水果表,多加上一列,修改
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>無標題文檔</title> </head> <body> <h1>水果表</h1> <table width="100%" border="1" cellpadding="0" cellspacing="0"> <tr> <td>代號</td> <td>名稱</td> <td>價格</td> <td>產地</td> <td>庫存</td> <td>操作</td> </tr> <?php //造連接對象 $db = new MySQLi("localhost","root","726","text11"); //寫SQL語句 $sql = "select * from fruit"; //執行 $result = $db->query($sql); //取數據 /*$attr = $result->fetch_all(); foreach($attr as $v) { echo "<tr><td>{$v[0]}</td><td>{$v[1]}</td><td>{$v[2]}</td><td>{$v[3]}</td><td>{$v[4]}</td></tr>"; }*/ while($attr = $result->fetch_row()) { echo "<tr><td>{$attr[0]}</td><td>{$attr[1]}</td><td>{$attr[2]}</td><td>{$attr[3]}</td><td>{$attr[4]}</td><td> <a href='shanchu.php?code={$attr[0]}' onclick=\"return confirm('確定刪除么')\"> 刪除 </a> <a href='xiugai.php?code={$attr[0]}'>修改</a> </td></tr>"; } //上述顯示數據的兩種方法都可以用 ?> </table> <a href="tianjia.php">添加數據</a> </body> <script type="text/javascript"> </script> </html>
使用的a 標簽,href地址是xiugai.php 也就是說待會得新建一個網頁,根據索引來修改
這樣后面就多了一個修改列:
點擊修改,它會自動跳轉到xiugai.php頁面
建一個新的頁面,里面就要寫xiugai.php 的內容了
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>無標題文檔</title> </head> <body> <h1>修改水果</h1> <?php $code = $_GET["code"]; //造連接對象 $db = new MySQLi("localhost","root","726","text11"); //寫SQL語句 $sql = "select * from fruit where ids='{$code}'"; //執行 $result =$db->query($sql); //取數據 $attr = $result->fetch_row(); ?> <form action="xiugaichuli.php" method="post"> <input type="hidden" name="ids" value="<?php echo $attr[0] ?>" /> <div>名稱:<input type="text" name="name" value="<?php echo $attr[1] ?>"/></div> <div>價格:<input type="text" name="price" value="<?php echo $attr[2] ?>"/></div> <div>產地:<input type="text" name="source" value="<?php echo $attr[3] ?>"/></div> <div>庫存:<input type="text" name="numbers" value="<?php echo $attr[4] ?>"/></div> <div><input type="submit" name="修改" /></div> </form> </body> </html>
顯示的是原先默認的值
可以在這個基礎上改
點擊提交后還要把這些數據提交到一個頁面,xiugaichuli.php
所以再建一個網頁
<?php $ids = $_POST["ids"]; $name = $_POST["name"]; $price = $_POST["price"]; $source = $_POST["source"]; $numbers = $_POST["numbers"]; //造連接對象 $db = new MySQLi("localhost","root","726","text11"); //寫SQL語句 $sql = "update fruit set name='{$name}',price='{$price}',source='{$source}',numbers='{$numbers}' where ids='{$ids}'"; //執行 $r=$db->query($sql); if($r) { header("location:shuiguobiao1.php"); } else { echo "修改失敗!"; }
修改成功的話直接返回水果表
來看一下,能否修改成功?
顯然成功了
下面再來寫兩張表,一張主表一張從表,有外鍵關系的兩張表
一張info表
一張nation表
做個info表的網頁
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>無標題文檔</title> </head> <body> <table width="100%" border="1" cellpadding="0" cellspacing="0"> <tr> <td>代號</td> <td>姓名</td> <td>性別</td> <td>民族</td> <td>生日</td> <td>操作</td> </tr> <?php $db = new MySQLi("localhost","root","726","shuang"); $sql = "select * from info"; $result = $db->query($sql); $attr=$result->fetch_all(); foreach($attr as $v) { $sex = $v[2]; $sex = $sex?"男":"女"; //性別改成漢字 $nation = $v[3]; $sqln = "select name from nation where code='{$nation}'"; //顯示民族 $rn = $db->query($sqln); $an = $rn->fetch_row(); echo "<tr><td>{$v[0]}</td><td>{$v[1]}</td><td>{$sex}</td><td>{$an[0]}</td><td>{$v[4]}</td><td><a href='xiugaiinfo.php?code={$v[0]}'>修改</a></td></tr>"; } ?> </body> </html>
運行起來是這樣的一張表:
點擊修改會跳轉到xiugaiinfo.php 的頁面,所以要建一個修改頁面
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>無標題文檔</title> </head> <body> <?php $code = $_GET["code"]; $db = new MySQLi("localhost","root","726","shuang"); $sql = "select * from info where code='{$code}'"; $result = $db->query($sql); $attr = $result->fetch_row(); ?> <h1>修改人員信息</h1> <form action="infochuli.php" method="post"> <div> <input type="hidden" value="<?php echo $attr[0] ?>" name="code" /> </div> <div> 姓名: <input type="text" name="name" value="<?php echo $attr[1] ?>" /> </div> <div> 性別: <input <?php echo $attr[2]?"checked='checked'": ""; ?>type="radio" name="sex" value="1" />男 <input <?php echo $attr[2]?"checked='checked'": ""; ?>type="radio" name="sex" value="0" />女 </div> <div> 民族: <select name="nation"> <?php $sqln = "select * from nation"; $rn = $db->query($sqln); $an = $rn->fetch_all(); foreach ($an as $vn) { if($attr[3]==$vn[0]) { echo "<option selected='selected' value='{$vn[0]}'>{$vn[1]}</option>"; } else { echo "<option value='{$vn[0]}'>{$vn[1]}</option>"; } } ?> </select> </div> <div> 生日: <input type="text" name="birthday" value="<?php echo $attr[4] ?>" /> </div> <div> <input type="submit" value="修改" /> </div> </form> </body> </html>
把原先的數據設為默認值,在這個基礎上改
最后點擊修改跳轉到infochuli.php
所以要建一個infochuli.php的頁面
<?php $code = $_POST["code"]; $name = $_POST["name"]; $sex = $_POST["sex"]; $nation = $_POST["nation"]; $birthbay = $_POST["birthday"]; $db = new MySQLi("localhost","root","726","shuang"); $sql = "update info set name='{$name}',sex={$sex},nation='{$nation}',birthday='{$birthbay}' where code='{$code}'"; echo $sql; $r = $db->query($sql); if($r) { header("location:info.php"); } else { echo "修改失敗!"; }
如果修改成功的話它會返回info.php頁面
來看一下能否修改成功
修改成功了!
![]() |
不含病毒。www.avast.com |
全站熱搜