我正在查詢一個數據庫以帶回員工編號,以便我可以使用它來驗證表單中的條目。我將結果轉儲到一個數組中,然後當有人在窗體上輸入一個數字時,我驗證它存在......它不工作,但從未找到數字。我認爲這是我創建陣列的方式。我在數組中找不到什麼......爲什麼?
$sql1 = "SELECT num FROM staff";
$data = array();
$result1 = mysql_query($sql1, $conn) or die("db select error: " . $sql1);
while($row1 = mysql_fetch_assoc($result1)){
$data[]= $row1;
}
var_dump($data);
$needle = 7034252;
if(in_array($needle,$data))
echo $needle . " found";
else
echo $needle . " not found";
Offtopic,但我總是發現有趣的''返回'PHP'中的怪異數據或死亡。 –
你有沒有試過「$ data = $ row1;」而不是「$ data [] = $ row1;」 –
凱蒂,當你轉儲數據時,'$ data'會顯示數據嗎?如果是,則可能由於類型不匹配而失敗。你的針是一個int,而數組可能會把它作爲一個字符串。 – xbonez