嗨,我有一个MySQL数据库表“点”用户可以点击一个按钮,一个点应该从他们的帐户中删除,他们按下的按钮有另一个用户的ID,因此他们的帐户必须增加一个。
我让它在jQuery中工作,并检查了Firebug中的变量/帖子,它确实发送了正确的数据,例如:
userid= 1
posterid = 4
我认为问题出在我的PHP页面上:
<?php
include ('../functions.php');
$userid=mysql_real_escape_string($_POST['user_id']);
$posterid=mysql_real_escape_string($_POST['poster_id']);
if (loggedin())
{
include ('../connection.php');
$query1 = "UPDATE `points` SET `points` = `points` - 1 WHERE `userID` = '$userid'";
$result1=mysql_query($query1);
$query2 = "UPDATE `points` SET `points` = `points` + 1 WHERE `userID` = '$posterid'";
$result2=mysql_query($query2);
if ($result1 && result2)
{
echo "Successful";
return 1;
}
else
{
echo mysql_error();
return 0;
}
}
?>
有什么想法吗?谢谢:)
5条答案
按热度按时间eimct9ow1#
增加/减少字段值的两个查询是不必要的:
是一个完全有效的查询,如下所示:
经过测试,你确定你进入了你的
if (loggedin())
条款吗?我不得不同意
KM
的观点,如果能看到echo $query1;
或echo $query2;
的输出会很好2ul0zpep2#
下面是示例查询,经过我的测试,它可以100%正常工作
l7wslrjt3#
但是如果你的
col_name
默认值是null或者空的,那么它永远不会工作,所以确保col_name
的默认值是0
或者任何整数值。axzmvihb4#
例如:
update students set englishmarks=englishmarks + 1 where name='Rahul';
编辑:(说明)“UPDATE”关键字用于更新表中的一个值,这里我更新表“students”中的一个值。“SET”关键字将英语标记更新1(就像在C语言中,我们如何增加一个整数的值,i=i+1),并在name为“Rahul”的地方给出条件。
所以拉胡尔的英语分数加1
eit6fx6z5#
在laravel迁移中执行以下操作:
如果要更改所有记录,请删除WHERE
id
= '1'它将插入数字增量到您的记录,如: