2012-10-10 75 views
0

现在,我有一个显示菜单项的表,我希望管理员能够删除和编辑特定的订单项。我的delete.php代码工作正常,如果我的ID等于一个特定的数字,但我希望ID等于删除按钮所在的行的ID。所以我的问题是如何获得该ID号?因为我现在所做的是不正确的。谢谢!使用PHP获取mySQL订单项ID

这是我的delete.php文件。

<?php 
$con = mysql_connect("localhost", "root", ""); 
if(!$con) 
    { 
    die('Could not connect: ' .mysql_error()); 
    } 
mysql_select_db("bics_place", $con); 

echo "mysql connected"; 

$myid = $_POST['id']; 

$sql = "DELETE FROM menu WHERE id='$myid'"; 

echo "sql = $sql"; 

if(!mysql_query($sql, $con)) 
    { 
    die('Error: ' .mysql_Error()); 
    } 
echo "1 record deleted"; 
header("location:admin_menu.php"); 

mysql_close($con); 

?> 

这是正在进行的表admin_menu.php

  $result = mysql_query("SELECT * FROM menu"); 

      echo "<table border='1' id='menu'> 
      <form method='post' action='delete.php'> 
      <tr> 
      <th> Id </th> 
      <th> Type </th> 
      <th> Product Name </th> 
      <th> Price </th> 
      <th></th> 
      <th></th> 
      </tr>"; 


      while($row = mysql_fetch_assoc($result)) 
       { 
       echo "<tr>"; 
       echo "<td>" . $row['id'] . "</td>"; 
       echo "<td>" . $row['type'] . "</td>"; 
       echo "<td>" . $row['productName'] . "</td>"; 
       echo "<td>" . $row['price'] . "</td>"; 
       echo "<td>" . '<input type="submit" name="delete" value="Delete">' . "</td>"; 
       echo "<td>" . '<input type="submit" name="edit" value="Edit">' . "</td>"; 
       echo "</tr>"; 
       } 
      echo "</form>"; 
      echo "</table>"; 

回答

0

添加一个隐藏字段 - 形式ID:

while($row = mysql_fetch_assoc($result)) { 
    //your <td>'s here 

      echo '<input type="hidden" name="id" value="{$row[id]}">'; 
    // echoes for form submit 
} 

注:mysql_ *功能已被弃用。您应该使用mysqli_函数。阅读here

1

采取隐形领域的形式。然后按钮onclick事件设置ID隐藏字段之前提交。

<script> 
function setId(idValue){ 
    document.getElementById('myid').value=idValue; 
} 
</script> 
echo "<table border='1' id='menu'> 
      <form method='post' action='delete.php'> 
      <input type="hidden" name="id" id="myid" value="" /> 
      <tr> 
      <th> Id </th> 
      <th> Type </th> 
      <th> Product Name </th> 
      <th> Price </th> 
      <th></th> 
      <th></th> 
      </tr>"; 


      while($row = mysql_fetch_assoc($result)) 
       { 
       $myID = $row["id"]; 

       echo "<tr>"; 
       echo "<td>" . $row['id'] . "</td>"; 
       echo "<td>" . $row['type'] . "</td>"; 
       echo "<td>" . $row['productName'] . "</td>"; 
       echo "<td>" . $row['price'] . "</td>"; 
       echo "<td>" . '<input type="submit" name="delete" value="Delete" onClick="setId('.$myID.');">' . "</td>"; 
       echo "<td>" . '<input type="submit" name="edit" value="Edit">' . "</td>"; 
       echo "</tr>"; 
       } 
      echo "</form>"; 
      echo "</table>";