在 Ajax 和 PHP 中更新 SQL 值
Posted
技术标签:
【中文标题】在 Ajax 和 PHP 中更新 SQL 值【英文标题】:Update SQL value in Ajax and PHP 【发布时间】:2013-07-09 00:44:45 【问题描述】:我有一个这样的按钮:
<a id="MSN89" class="onButton">
我想将其状态更改为:
<a id="MSN89" class="offButton">
通过单击第一个红色按钮,我希望能够将值(例如 MSM89)保存到我的 sql 数据库中。
通过单击第二个灰色按钮,我希望能够从我的 sql 数据库中输出值(例如 MSM89)。
我试着让它变成这样但是它一直在重新加载页面,而且我的数据太多,我无法每次点击都重新加载它......
UPDATE User
SET cards='MSN89'
WHERE User_Id='3';
我阅读了this,但我不知道如何在我的代码中实现它。
感谢您为我指明正确的方向。
我尝试了这种类型的代码,但可以肯定这是最好的方法,它不会刷新页面...
<a id="MSN89" class="onButton">
<script>
$(".onButton").click(function()
// sql request
...
UPDATE User SET cards='MSN89' WHERE User_Id='3';
...
);
</script>
<a id="MSN89" class="offButton">
<script>
$(".offButton").click(function()
// sql request
...
UPDATE User SET cards='' WHERE User_Id='3';
...
);
</script>
【问题讨论】:
听起来您需要在每次单击按钮时发出 AJAX 请求而不是整个页面请求。你试过什么? 那么您是否希望在不加载页面的情况下将数据(即 MSN89)插入并显示在您的页面上? @saran banerjee:请。无需重新加载页面。 你能显示一些代码吗?为了实现这一点,您需要一些 javascript(为了进行 ajax 调用)和一些 php 以执行数据库操作。 @George Cummins & Muc:我更新了代码。 【参考方案1】:"UPDATE 'User' SET 'cards' = 'MSN89' WHERE 'user_id' = 3"
MSN89 不是 int 值,所以我相信它应该用引号引起来
一般的经验法则是 INT 值不需要引号,字符串需要
【讨论】:
【参考方案2】:所以你必须使用 ajax 对于 js 代码,您需要一个可以从任何地方获取的 jquery 库。
js代码
function FnBookmark(id,mode)
$.ajax(
url:'yourdomain.com/bookmark.php',
data:mode:mode,id:id,
dataType:'json',
success:function(data)
if(mode == "on")
$("#MSN89").attr("class", "offbutton");
$("#MSN89").attr("onClick","FnBookmark('MSN89','off')");
else
$("#MSN89").attr("class", "onbutton");
$("#MSN89").attr("onClick","FnBookmark('MSN89','on')");
);
php代码:在bookmark.php中
if($_GET['mode'] == "on")
$id = $_Get['id']; // this has the value MSN89
$sql = "UPDATE User
SET cards='$id'
WHERE User_Id=3";
//then execute the query
if($_GET['mode'] == "off")
$sql = "UPDATE User
SET cards=''
WHERE User_Id=3";
//then execute the query
header('Content-Type: application/json; charset=utf-8');
exit;
html页面:
对于按钮
<a id="MSN89" class="onButton" onclick="FnBookmark('MSN89','on');">
关闭按钮
<a id="MSN89" class="offButton" onclick="FnBookmark('MSN89','off');">
我希望这能有所帮助。
【讨论】:
非常感谢萨兰!我会花时间测试它。 :)以上是关于在 Ajax 和 PHP 中更新 SQL 值的主要内容,如果未能解决你的问题,请参考以下文章