我有另一个问题,我花了几个小时理解和重写。在UPDATE查询中,我包括countr = countr + 1。我成功地从移动应用程序接收了关键字,并且还能够将它们存储在数据库中。问题是,每当第五次传递相同的keyWord时,就会创建一个新行。而不是向该keyWord的国家添加1。这就好像国家只限于持有4号。
是因为我对UPDATE查询的错误还是因为我错过了其他内容?
这是我的代码:
$con= mysqli_connect("...","...","...") or die ('Error: ' . mysql_error());
mysqli_select_db($con,"...");
$sql= "SELECT keyWord FROM searchedWords";
$result= mysqli_query($con,$sql);
$row=mysqli_fetch_array($result, MYSQLI_ASSOC);
if($row['keyWord']==$_POST[keyWord])
{
$upD="UPDATE searchedWords SET countr = countr + 1";
while (!mysqli_query($con,$upD))
{
die('Error: ' . mysqli_error($con));
}
}
else
{
$insertIn="INSERT INTO `searchedWords`( `keyWord`, `countr`) values ('$_POST[keyWord]',1)";
while (!mysqli_query($con,$insertIn))
{
die('Error: ' . mysqli_error($con));
}
}
以下是存储keyWords和countr的表:
它不会超过4. Android应该有一个9和Java 5的国家。 你觉得我做错了什么?
答案 0 :(得分:0)
$_POST[keyWord]
应该是
$_POST['keyWord']
答案 1 :(得分:0)
您必须在更新查询中指定要更新的行,否则它将更新所有值...以及我可以看到的另一个错误
我不确定此代码中($row['keyWord']==$_POST[keyWord])
$_POST['keyword']
关键字应该在引号中......希望它会有所帮助