HTML表格中的MYsql。删除行

时间:2012-01-25 02:14:40

标签: php mysql

我正在使用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);
?>

1 个答案:

答案 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  
}