我有一个php脚本,它应检查Users表中是否存在给定用户,如果没有,则创建它,如果是,则用新信息更新现有用户。
我是否应该在一个sql查询中创建所有检查并插入/更新,或者我应该首先使用一个php脚本来获取行数,然后使用第二个脚本来插入/更新新用户?
我知道SQL但只知道基础知识,所以这不是我强有力的一面。
哪种解决方案更适合客户端/服务器通信?
答案 0 :(得分:2)
我真的很想使用这个功能:
function exists($detail, $table, $column, $value) {
$query = mysqli_query($this->connect, "SELECT `$detail` FROM `$table` WHERE `$column` = '$value'");
$count = mysqli_num_rows($query);
if($count >= 1) {
return true;
} else {
return false;
}
}
因此,如果用户存在,则返回true,否则返回false。在此检查之后,我将运行另一个函数/查询来更新用户。
上述功能可能如下所示:
//SELECT `username` FROM `users` WHERE `username` = '$username'
if(exists('username', 'users', 'username', $username)) {
//run this code if true
} else {
//run this code if false
}