始终影响MySQL中的Row

时间:2018-05-05 16:42:58

标签: php mysql

在PHP中,我使用mysqli_affected_rows来验证用户是否已在数据库中注册,其中查询的内容如下所示:

"UPDATE schedule WHERE userid = '$user' AND date='2018-05-05'"

如果用户不存在,受影响的行数为0,如果存在,则为1。

除了用户第二次注册时,此功能正常。在这里,MySQL会说0行受到影响,因为没有更改到日程表。

我可以添加到查询中以始终影响行吗?或者这只是一种糟糕的方法?

1 个答案:

答案 0 :(得分:-1)

要检查用户是否存在于数据库中,我会使用select语句。

sql = "SELECT * FROM schedule WHERE userid = '$user' AND date='2018-05-05'"

如果用户存在,则执行某些操作

$result = $conn->query($sql);
if ($result->num_rows > 0) {
//user exists 
}

我还假设你想拥有数据库中的唯一用户?在那种情况下,我会在添加新记录之前检查用户是否首先使用相同的代码。