我使用php,mysql和ajax从表中删除记录。问题是在MySQL_query它没有得到它显示“id = undefined”的id,我试图将id传递给查询,但我不知道我哪里出错了我试图打印MySQL其节目
delete from 9xx WHERE id = undefinedArray
(
[rowid] => undefined
[supplier] => 9xx
)
任何人都可以告诉我如何传递id ...谢谢
我的ajax
$(".deletesuppliernetwork").live('click',function()
{
arr = $(this).attr('class').split( " " );
var supplier=document.getElementById("supplier").value;
if(confirm("Sure you want to delete this update?"))
{
$.ajax({
type: "POST",
url: "suppliernetwork/delete.php",
data: "rowid="+arr[2]+"&supplier="+supplier,
success: function(data){
$('.ajax').html($('.ajax input').val());
$('.ajax').removeClass('ajax');
}});
}
});
我的HTML
<?php
include"db.php";
$supplier_id=$_GET['supplier_id'];
if($supplier_id!=""){
$sql=mysql_query("select * from $supplier_id order by country,networkname" );
while($rows=mysql_fetch_array($sql))
{
if($alt == 1)
{
echo '<tr class="alt">';
$alt = 0;
}
else
{
echo '<tr>';
$alt = 1;
}
echo ' <td style="width:123px" class="edit supplier '.$rows["id"].'">'.$rows["supplier"].'</td>
<td style="width:104px" class="edit rn '.$rows["id"].'">'.$rows["rn"].'</td>
<td style="width:103px" class="edit sc '.$rows["id"].'">'.$rows["sc"].'</td>
<td style="width:108px" class="edit comment '.$rows["id"].'">'.$rows["comment"].'</td>
<td style="width:62px" class="deletesuppliernetwork '.$rows["id"].'"><img src="/image/delete.png" style="margin:0 0 0 17px" ></td>
</tr>';
}
}
?>
delete.php
<?php
include"db.php";
$supplier=$_POST['supplier'];
$rownum=$_POST['rowid'];
$sql="delete from $supplier WHERE id = ".$rownum."";
print $sql;
mysql_query($sql);
print_r($_POST);
?>
答案 0 :(得分:2)
<td style="width:62px" class="deletesuppliernetwork '.$rows["id"].'"><img src="/image/delete.png" style="margin:0 0 0 17px" ></td>
您的ID索引为1,即第二个索引。不是2。
$.ajax({
type: "POST",
url: "suppliernetwork/delete.php",
data: "rowid="+arr[1]+"&supplier="+supplier,
success: function(data){
$('.ajax').html($('.ajax input').val());
$('.ajax').removeClass('ajax');
}});
答案 1 :(得分:1)
var rowObj = $(this);
$.ajax({
type: "POST",
url: "suppliernetwork/delete.php",
data: "rowid="+arr[1]+"&supplier="+supplier,
success: function(data){
$('.ajax').html($('.ajax input').val());
$('.ajax').removeClass('ajax');
$(rowObj).parents("tr:first").hide();
}});
这应该隐藏你的完整行。