您的位置主页 > PHP

PHP5对Mysql5的任意数据库表的管理代码示例(三)

续:点击编辑一个条目会跳转至edit.php//edit.php<html><head><title>Editing an entry from the database</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /></head><body bgcolor=#ffffff><h2>Edit an entry</h2>
<?$database = "sunsite";$tablename = $_REQUEST['tablename'];echo "<h2>Data from $tablename</h2>";mysql_connect("localhost","root","") or die ("Problem connecting to DataBase");$query = "show columns from $tablename";$result = mysql_db_query($database,$query);$column = 0;if ($result){echo "Found these entries in the database:<br><p></p>";echo "<table width=90% align=center border=1><tr>";while ($r = mysql_fetch_array($result)){echo "<td align=center bgcolor=#00FFFF>$r[0]</td>";$colname[$column] = $r[0];$column = $column + 1;}echo "</tr>";mysql_free_result($result);
$query = "select * from $tablename";$result = mysql_db_query($database, $query);if ($result) while ($r = mysql_fetch_array($result)){echo "<tr>";echo "<td><a href="editing.php?$colname[0]=$r[0]&tablename=$tablename">$r[0]</td>";for($col=1;$col<$column;$col++) echo "<td>$r[$col]</td>";echo "</tr>";}echo "</table>";}else echo "No data.";mysql_free_result($result);?><a href="tables.php?tablename=<? echo "$tablename"?>">Finish</a></body></html> 然后选择其中一个id,会跳出具体的内容并要求用户修改。//editing.php<html><head><title>Editing an entry</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /></head><body bgcolor=#ffffff><h1>Editing an entry</h1><?$database = "sunsite";$tablename = $_GET['tablename'];mysql_connect("localhost","root","") or die ("Problem connecting to DataBase");$query = "show columns from $tablename";$result = mysql_db_query($database,$query);$column = 0;if ($result){while ($r = mysql_fetch_array($result)){$colname[$column] = $r[0];$column = $column + 1;}mysql_free_result($result);}
$temp = $_GET[$colname[0]];$query = "select * from $tablename where $colname[0]=$temp";$result = mysql_db_query($database,$query);$r = mysql_fetch_array($result);
?><form method="post" action="editdb.php"><table width=90% align=center><tr><td><?php echo "$colname[0]";?>:</td><td><?php echo "$r[0]"; ?></td></tr><?for ($col=1;$col<$column;$col++)echo "<tr><td>$colname[$col]:</td><td><input type=text name=$colname[$col] size="100%" value="$r[$col]"></td></tr>";?><input type=hidden name=id value="<?php echo "$r[0]"; ?>"><input type=hidden name=tablename value="<?php echo"$tablename";?>"><tr><td></td><td><input type=submit value="Confirm!"></td></tr></table></form></body></html>最后是写入数据库//editdb.php<?$database = "sunsite";$tablename = $_POST['tablename'];mysql_connect("localhost","root","") or die ("Problem connecting to DataBase");$query = "show columns from $tablename";$result = mysql_db_query($database,$query);$column = 0;if ($result){while ($r = mysql_fetch_array($result)){$colname[$column] = $r[0];$column = $column + 1;}mysql_free_result($result);}
for($col=0;$col<$column;$col++)$para[$col] = $_POST[$colname[$col]];
if ($_POST['name']){mysql_connect("localhost","root","") or die ("Problem connecting to DataBase");
$query = "update $tablename set $colname[1]='$para[1]'";for($col=2;$col<$column;$col++)$query = $query . ",$colname[$col]='$para[$col]'"; $query = $query . " where $colname[0]='$para[0]';";
$result = mysql_db_query($database, $query);Header("Location: edit.php?tablename=$tablename");}else{echo "No name Entered. Please go back and reenter name";} ?><meta http-equiv="Content-Type" content="text/html; charset=gb2312" />待续。