我正在使用PHP在表格中显示我的MYsql数据库中的内容。我想添加删除按钮购买我不知道如何。我想在最后一列之后的删除按钮。这是我的代码。
<?php
$db_host = 'localhost';
$db_user = 'root';
$db_pwd = '';
$database = 'coins_gage';
$table = 'coins';
if (!mysql_connect($db_host, $db_user, $db_pwd))
die("Can't connect to database");
if (!mysql_select_db($database))
die("Can't select database");
// sending query
$result = mysql_query("SELECT * FROM {$table}");
if (!$result) {
die("Query to show fields from table failed");
}
$fields_num = mysql_num_fields($result);
echo "<h1>Table: {$table}</h1>";
echo "<table border='1'><tr>";
// printing table headers
for($i=0; $i<$fields_num; $i++)
{
$field = mysql_fetch_field($result);
echo "<td>{$field->name}</td>";
}
echo "</tr>\n";
// printing table rows
while($row = mysql_fetch_row($result))
{
echo "<tr>";
// $row is array... foreach( .. ) puts every element
// of $row to $cell variable
foreach($row as $cell)
echo "<td>$cell</td>";
echo "</tr>\n";
}
mysql_free_result($result);
?>
答案 0 :(得分:1)
您必须在此处执行以下操作,以使界面用户友好并执行您的任务。如果我总结一下你必须做的步骤就是这样。
1)确保使用POST方法将表保留在表单中。并在关闭FORM标记之前添加以下类型的隐藏元素。
<input type="hidden" name="hidDelete" id="hidDelete" value="" />
2)通过修改此部分为表添加列标题。
// printing table headers
for($i=0; $i<$fields_num; $i++)
{
$field = mysql_fetch_field($result);
echo "<td>{$field->name}</td>";
}
echo "<td>Delete</td>";
echo "</tr>\n";
3)将删除按钮添加到所有行。
foreach($row as $cell)
echo "<td>$cell</td>";
echo "<td><input type=\"button\" value=\"Delete\" onclick=\"deleteThis({$field->id})\" /></td>"
echo "</tr>\n";
4)创建一个javascript函数来发出删除请求。在发布数据之前,您必须设置隐藏值。如果你使用像jquery这样的javascript库,这将更加容易。由于我不知道您使用的是哪个库,我将使用纯JavaScript进行解释。
<script type="text/javascript">
function deleteThis(id)
{
document.getElementById("hidDelete").value = id;
document.yourFormName.submit();
}
</script>
5)在您的网页上收到发布请求后,请在执行选择查询之前进行删除。
if(isset($_POST["hidDelete"]) $_POST["hidDelete"] != "")
{
$rowID = $_POST["hidDelete"];
// Write your delete queries
}