次のif/elseステートメントを使用してクエリを作成しようとしましたが、最初のステップでNULLの評価に問題があります。
オンラインで検索した後、間違っていることを追跡できないようです...代わりに空の引用符を使用する必要があります:""
?
しかし、それも私にエラーを与えました。
while
したがって、問題が最初のブロックにあるのか、ループである2番目のブロックにあるのかわかりません。
助言がありますか?
$name = $_POST['Your_name'];
if ($location != "All" && $name == NULL) $query="SELECT * FROM talent WHERE duty_station='$location')";
else if($location == "All" && $name != "All" ) $query="SELECT * FROM talent WHERE Your_name IN ('$name')";
else if($dutyReq != "All" && $name == "All" ) $query="SELECT * FROM talent WHERE duty_station='$location'";
else if($location == "All" || $name == "All" ) $query="SELECT * FROM talent";
次に、データを出力するループで次のエラーが発生します。
警告:mysql_fetch_array():指定された引数は64行目の/var/www/html/talent/searchresults.phpにある有効なMySQL結果リソースではありません
これは、エラーの原因となるコードです。
$result=mysql_query($query);
mysql_query($result);
echo "<table border='1'>
<tr>
<th>Your name</th>
<th>duty station</th>
<th>first proficiency</th>
</tr>";
while($row = mysql_fetch_array($result)){
echo "<tr>";
echo "<td>" . $row['Your_name'] . "</td>";
echo "<td>" . $row['duty_station'] . "</td>";
echo "<td>" . $row['prof_order_processing'] . "</td>";
echo "</tr>";
}
echo "</table>";