假设我有以下MySQL表结果:
ID price
-------------
1 10
2 20
3 30
基本上我想要完成的是将这些值存储到PHP数组中,并将这些值显示/回显为每行的HTML表。
我可以这样做:
if($result) {
$i = 0;
while ($row = mysql_fetch_array($result)) {
$id[$i] = $row['id'];
$price[$i] = $row['price'];
}
}
让这些元素与HTML表格一起回显。
然而,我还需要一个允许用户删除行的功能。有了这个想法,我相信我需要为每一行提供某种“键”作为删除标识符 - 多维数组支持的功能。
答案 0 :(得分:1)
没有什么可以阻止您使用多维数组并使用其中一个唯一值作为索引:
// Store result
$data = array();
if($result) {
while ($row = mysql_fetch_array($result)) {
$data[$row['raiser_id']] = $row;
}
}
// Building table
echo "<table>";
foreach ($data as $row)
{
echo "<tr>";
echo "<td>" . $row['raiser_id'] . "</td>";
echo "<td>" . $row['name'] . "</td>";
echo "<td>" . $row['fcr'] . "</td>";
echo "<td>" . $row['date_of_application'] . "</td>";
echo "<td>" . $row['no_of_heads'] . "</td>";
echo "<td>" . $row['place_of_farm'] . "</td>";
echo "</tr>";
}
echo "</table>";
// Removing an entry by raiser_id
$raiser_id = 10;
if (!empty($data[$raiser_id]))
{
unset($data[$raiser_id]);
echo "Removed entry";
}
else
{
echo "No entry to remove";
}
答案 1 :(得分:1)
要从数据库中删除一行,您必须拥有另一个PHP脚本,并且必须使用POST方法调用它并在其中运行SQL查询。
如果你只是在谈论显示这个表,那么PHP在这里没有任何关系 - 去寻找JavaScript。
当用户看到他的表时,没有mysql结果,没有PHP数组,也没有运行整个PHP。很久以前就已经死了。记在脑子里。