问:使用PHP

时间:2015-11-20 04:30:20

标签: php mysql

我有一个带有名为'Users'的表的SQL数据库,其中包括:id,userName,password,firstName,lastName和playerScore。

如果他们已登录并赢得游戏,我正试图让我的程序更新玩家的分数。所以从我下面提供的代码中,如果他们已经登录,我会抓住他们的用户名和当前分数。如果他们赢了我增加他们的分数并更新它,我遇到的问题是我不确定我是否使用正确的语句更新它,我尝试了两个(已被注释掉)UPDATE和INSERT更新我的表用于新分数,但我的数据库没有任何变化。

有关如何进行的任何想法?

$query = "SELECT * FROM Users WHERE userName='$userName' and playerscore='$playerScore'";
$result = mysqli_query($mysql_handle, $query);

if(mysqli_num_rows($result) == 1) {
    $row = mysqli_fetch_array($result);

    $_SESSION['playerScore'] = $row['playerScore'];
    $_SESSION['valid_user'] = $row['userName'];
}

echo "<br>You Win!<br>"; 

$newScore = $_SESSION['playerScore']++;
//$sql = "INSERT INTO Users (playerScore) VALUES ('$newScore')";
//$sql = "UPDATE Users SET playerScore = $_SESSION['playerScore'] WHERE userName="$_SESSION['valid_user']";

1 个答案:

答案 0 :(得分:0)

您的更新查询中存在一些语法错误。尝试

$sql = "UPDATE Users SET playerScore = {$_SESSION['playerScore']} WHERE userName= '$newScore'";