등록 시스템을 만들고 있는데 입력 한 사용자 이름이 아직 존재하지 않거나 다른 사람이 아직 소유하고 있지 않은지 확인하는 쿼리를 원합니다. 그러나 지금까지 나는 실패했다. 나는 내 문제와 관련된 몇 가지 질문과 답을 보았지만, 대부분 이해할 수 없거나 대부분 해결되지 않았다. 나는 PHP에서 아마추어임을 명심하십시오.쿼리가 일부 값을 반환했는지 확인하는 방법은 무엇입니까?
$mysqli = mysqli_connect("localhost", "php24sql", "some password","smithside");
$query2 = "SELECT registered FROM contacts WHERE LRN = '$lrn'";
$query2 = mysqli_query($mysqli, $query2) or die(mysqli_error($mysqli));
$row = mysqli_fetch_assoc($query2);
$registered = $row['registered'];
if ($registered == 0) {
$query = "UPDATE contacts SET first_name = '$fname', last_name = '$lname', position = 'none', email = '$email', phone = '$contact', user_name = '$uname', password = '$pass1', access = 'Registered', registered = 1 WHERE LRN = '$lrn'";
$query = mysqli_query($mysqli, $query);
echo "Registration successful!";
$query4 = "SELECT user_name FROM contacts WHERE user_name = '$uname'";
$query4 = mysqli_query($mysqli, $query4);
$row4 = mysqli_fetch_assoc($query4);
} elseif (mysql_num_rows($query4) > 0) {
echo "Registration failed. Username already taken.";
} else {
echo "Registration failed. LRN already taken.";
}
미리 감사드립니다.
num_rows 살펴보기 http://php.net/manual/en/mysqli-result.num-rows.php – Mihai
'} elseif (mysql_num_rows ($ query4)> 0) {'이 줄에 오타가 있음을 의미합니다. mysql에서'i'가 누락되었습니다.'elseif (mysqli_num_rows ($ query4)> 0) {' –