아래의 코드는 이름이 이미 데이터베이스에 존재하는지 여부를 확인하고, 이미 있으면 부울을 설정합니다. 그러나 이름이 존재하지 않는 경우에도 부울을 설정합니다. 나는 이것을 여러 번 확인했다. 내 코드가 잘못되었다고 생각합니다. 나는PHP의 if 문 안에있는 var에 할당하기
if ($row = mysql_fetch_assoc($result))
내가이 줄을 전혀 발견 결과가 있었다 여부를 확인 생각 볼 수있는 검사로 아래 라인을 이해합니다. 결과가 발견되면 조건문은 TRUE로 평가되므로 $row
이 할당됩니다. 그 맞습니까?
코드 나 다른 문제가 발생 했습니까? 때로는 데이터베이스 테이블에없는 이름을 검색 할 때 가끔 블록을 입력하기 때문에 mysql_query
이 포함 된 행은 의심 스럽습니다.
$udid_mismatch = false;
$name_found = false;
$result = mysql_query("SELECT udid
FROM $table
WHERE name='$name'");
if($row = mysql_fetch_assoc($result)) {
$name_found = true;
if($row['udid'] != $udid) {
$udid_mismatch = true;
}
}
제대로 작동합니다. mysql_num_rows를 사용해보십시오. –