我制作了一个PHP / MySQL表,其中有一个编辑按钮,每行都有一个链接。
“编辑”按钮链接到同一页面,但带有行项目的ID,其目的是让编辑PHP获取所选项目的ID。
<table width="70%">
<tr class="tablehead">
<th>ITEM ID</th>
<th>ITEM DESCRIPTION</th>
<th>QTY</th>
<th>PRICE</th>
<th>STATUS</th>
<th>OPTIONS</th>
</tr>
<?php
$username = $_SESSION['SESS_USERNAME'];
$sql = "SELECT * FROM $username";
$result = $conn2->query($sql);
$i = 1;
while ($row = $result->fetch_array(MYSQLI_ASSOC)){
$id=$row["id"];
$itemid=$row["item_id"];
$item=$row["item_description"];
$qty=$row["item_quantity"];
$price=$row["item_price"];
if ($qty > 0) {
$status = "Available";
}
else {
$status = "Out of Stock";
}
echo "<tr id='" . "$id'>" ;
echo "<td><span class='tabtext'>" . $itemid . "</span></td>";
echo "<td><span class='tabtext'>" . $item . "</span></td>";
echo "<td><span class='tabtext'>" . $qty . "</span></td>";
echo "<td><span class='tabtext'>" . $price . "</span></td>";
echo "<td><span class='tabtext'>" . $status . "</span></td>";
echo '<td><a href="inventory.php?id=' . $id . '"><span class="tabedit"></span></a><a href="inventory.php?id=' . $id . '"><span class="tabdel"></span></a></td>';
echo "</tr>";
}
?>
</table>
点击时的编辑按钮也会显示一个隐藏的div,使用jQuery显示编辑面板。
<div id="editprodbg">
<div id="innerprodcont">
<div id="innerprod">
<a href="#"><span class="editprodclose"></span></a>
<h2 class="textheader">Add Product</h2>
<form action="editprod.php" id="editprod" method="post">
<div class="inputbox"><input name="item_id" type="text" class="prodbox" placeholder="Item ID"></input></div>
<div class="inputbox"><input name="item" type="text" class="prodbox" placeholder="Product Name"></input></div>
<div class="inputbox"><input name="quant" type="text" class="prodbox" placeholder="Quantity"></input></div>
<div class="inputbox"><input name="price" type="text" class="prodbox" placeholder="Price"></input></div>
</form>
<button class="editbut2" form="editprod" ><span>Edit Product</span></button>
</div>
</div>
我遇到问题,当我点击编辑按钮时,CSS会返回到原始状态,因为重定向会反过来隐藏编辑面板。
还有其他方法,当我点击编辑按钮时,存储行的ID并且CSS不会恢复到原始状态吗?
顺便说一句,我没有考虑重定向到另一个页面来编辑行的选项,只是通过单击按钮的同一页面中的表单显示div容器。
答案 0 :(得分:1)
正如bassxzero所评论的那样。
而不是<a href="inventory.php?id=' . $id . '">
我使用<a href="#?id=' . $id . '">
来阻止任何重定向,同时在URL中存储行的id。
答案 1 :(得分:1)
对于相同的情况,我更喜欢使用jquery来处理inventory.php?id = $ id,类似于
$('#link_to_inventory_php').click(function) {
$('#div_to_proccess_inventory_php').load('inventory.php?id='+id);
}
所以你不需要在页面的某个div中加载inventory.php整个页面