php 单击按钮更新数据库,javascript – 单击按钮时更新数据库

我这里有一个按钮:

add me

我试过用AJAX;在我的数据库中,我有一个sp_status(在我的$UserData中是一个数组).我想将id为$UserData [‘sp_id’]的数据库中的用户sp_status从5更改为0.

以下是我尝试使用它执行此操作的代码:

$(document).ready(function(){

$(".btn").click(function(){

alert("PROBLEM IS HERE!");

$.ajax({

url: "update.php",

type: "POST",

data: {uid: $UserData['sp_id']}, //this sends the user-id to php as a post variable, in php it can be accessed as $_POST['uid']

success: function(data){

data = JSON.parse(data);

}

});

});

});

$UserData数组具有sp_id作为用户的标识符.

在同一文件夹中的update.php里面我写了这段代码:

if(isset($_POST['uid'])){

$query = mysql("UPDATE `signup_participant` SET sp_status = 0 WHERE sp_id = ".$_POST['uid']));

$results = mysql_fetch_assoc($query);

echo json_encode($results);

}

我面临两个主要问题.首先,当我移动警报时(“问题就在这里!”);向下一行,然后单击,没有任何反应.

另一个问题是关于update.php.我复制并粘贴UPDATEsignup_participantSET sp_status = 0 WHERE sp_id = 10(静态值为10)并且在phpMyadmin的控制台中一切正常.我在堆栈上阅读了很多问题,但没有人帮忙.

谁能解决这个问题?

编辑:

正如朋友所说,我将我的代码更改为此(AJAX部分):

$(document).ready(function(){

$(".btn").click(function(){

alert('Hello');

$.ajax({

url: "update.php",

type: "POST",

data: {uid: "<?php echo $UserData['sp_id'];?>"}

success: function(data){

data = JSON.parse(data);

}

});

});

});

奇怪的是,弹出警报不再显示.有什么想法吗?

解决方法:

是的,你必须犯错误:

第一个是你在Javascript代码中调用的“$UserData [‘sp_id’]”,你不清楚这个变量是什么意思或它来自哪里,如果它是一个Html元素的值那么它应该是:

data: {uid: $('#sp_id').val();},

如果它是一个Php变量,它将是:

data: {uid: <?php $UserData['sp_id']; ?>},

下一个错误是在Php服务器代码中:

$query = mysql("UPDATE `signup_participant` SET sp_status = 0 WHERE sp_id = ".$_POST['uid']));

$results = mysql_fetch_assoc($query);

这两个命令是分开的,第一个用于更新数据库,第二个用于显示结果,它们必须如下:

$query = "UPDATE `signup_participant` SET sp_status = 0 WHERE sp_id = ".$_POST['uid'];

mysql_query($query);

$query = "SELECT * from `signup_participant` WHERE sp_id = ".$_POST['uid'];

$select = mysql_query($query);

$results = mysql_fetch_assoc($select);

标签:php,javascript,mysql,ajax

来源: https://codeday.me/bug/20190706/1396430.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值