다음 스크립트를 사용하여 코드를 검사하므로 사용자가 측량 코드를 입력하면 해당 코드와 관련된 측량을 얻습니다. 설문 조사를 가져 오는 부분은 예상대로 작동하지만, 어떤 이유로 든 오류 메시지가 표시되는 것 같습니다. 이 게시물의 양식에 잘못된 코드 또는 코드를 입력하면 빈 페이지가 표시됩니다.빈 MySQL 쿼리 결과가 예상대로 작동하지 않습니까?
<?php
$con = mysql_connect("myhost","myuser","mypassword;
if (!$con) {
die('Could not connect: ' . mysql_error());
}
// Select mysql db
mysql_select_db("mydb", $con);
$questionaireID = $_POST['questionaireID'];
$result = mysql_query("SELECT * FROM itsnb_questionaire WHERE questionaireID='$questionaireID'") or die(mysql_error());
while($row = mysql_fetch_array($result)) {
if (empty($row['questionaireID'])) {
echo '<h2>Sorry I cant find a quiz with that code, please recheck your code.</h2>';
} else {
$url = $row['questionaireurl'];
header('Location: '.$url.'');
}
}
?>
시도 apropriate 오류 메시지를 표시 할 수 있으므로 사용자의 결과를 찾을 수없는 것보다 제로 ll의 mysql_fetch_array는 FALSE를 반환하는데, 이는 while 루프의 내용이 결코 실행되지 않는다는 것을 의미한다 (쿼리가 빈 세트를 반환 할 때). mysql_num_rows http://php.net/manual/en/function.mysql-num-rows.php와 같은 함수를 살펴보면 return set에 얼마나 많은 행이 있는지 알 수 있습니다. – Bgi
괄호를 닫지 않은 것처럼 보입니다. 귀하의 $ con 명세서에 – luchosrock