如何删除数据库中的记录与阿贾克斯 [英] how to delete records from database with an Ajax
本文介绍了如何删除数据库中的记录与阿贾克斯的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我使用的PHP,MySQL和Ajax从表中删除记录。问题是,在MYSQL_QUERY它没有得到它显示ID =未定义的ID,我想的ID传递给查询,但我不知道我哪里错了,我试图打印的MySQL其节目
从9XX WHERE ID = undefinedArray删除
(
[ROWID] =>未定义
[供应] => 9XX
)
谁能告诉我如何通过ID ...谢谢
我的AJAX
$(。deletesuppliernetwork)。生活(点击,函数()
{
ARR = $(本).attr(类)分裂()。
VAR供应商=的document.getElementById(供应商)的价值。
如果(确认(确定要删除此更新?))
{
$阿贾克斯({
键入:POST,
网址:suppliernetwork / delete.php
数据:行ID =+常用3 [2] +与&供应商=+供应商
成功:功能(数据){
$('阿贾克斯。)HTML($('ajax的投入。)VAL()。)。
$('。阿贾克斯)removeClass移除(AJAX)。
}});
}
});
我的HTML
< PHP
包括db.php中;
$ supplier_id = $ _ GET ['supplier_id'];
如果($ supplier_id!=){
$ SQL =请求mysql_query(按国家,networkname SELECT * FROM $ supplier_id序);
而($行= mysql_fetch_array($ SQL))
{
如果($中高音== 1)
{
回声'< TR类=ALT>';
$中高音= 0;
}
其他
{
回声'< TR>';
$中高音= 1;
}
回声'< TD风格=宽度:123px级=编辑供应商'。$行[ID]。'>'$行[供应商]'< / TD>。
< TD风格=宽度:104px级=编辑RN'。$行[ID]。'>< / TD>'$行[RN]。
< TD风格=宽度:103px级=编辑SC'。$行[ID]。'>'。$行[SC。< / TD>
< TD风格=宽度:108px级=编辑评论'。$行[ID]。'>'。$行[意见。< / TD>
< TD风格=宽度:62px级=deletesuppliernetwork'。$行[ID]。'>< IMG SRC =/图片/ delete.png的风格=保证金:0 0 0 17px >< / TD>
< / TR>';
}
}
?>
delete.php
< PHP
包括db.php中;
$供应商= $ _ POST ['供应商'];
$ ROWNUM = $ _ POST ['的rowid'];
。$ SQL = $ ROWNUM从$供应商WHERE ID =删除;
打印$ SQL;
的mysql_query($ SQL);
的print_r($ _ POST);
?>
解决方案
< TD风格=宽度:62px级=deletesuppliernetwork'$行[身份证。 '>< IMG SRC =/图片/ delete.png的风格=保证金:0 0 0 17px>< / TD>
你的ID的指数是1,也就是第二个索引。没有2。
$。阿贾克斯({
键入:POST,
网址:suppliernetwork / delete.php
数据:行ID =+常用3 [1] +与&供应商=+供应商
成功:功能(数据){
$('阿贾克斯。)HTML($('ajax的投入。)VAL()。)。
$('。阿贾克斯)removeClass移除(AJAX)。
}});
I am using php,mysql and ajax to delete record from a table. The problem is that the in MySQL_query it not getting the id it shows "id= undefined", i tried to pass the id to the query but i don't know where i went wrong i tried to print MySQL its shows
delete from 9xx WHERE id = undefinedArray
(
[rowid] => undefined
[supplier] => 9xx
)
can anyone tell me how to pass the id ...thanks
My 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');
}});
}
});
My 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);
?>
解决方案
<td style="width:62px" class="deletesuppliernetwork '.$rows["id"].'"><img src="/image/delete.png" style="margin:0 0 0 17px" ></td>
the index of your ID is 1, that is second index. not 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');
}});
这篇关于如何删除数据库中的记录与阿贾克斯的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文