2012-10-10 77 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>";