我真的很喜歡一些幫助,下面的MySQL/PHP的問題(也許錯誤?)首先返回值是爲「空」時,它有一個值
我試圖檢索和使用MySQL/PHP從我的數據庫顯示數據數組,但是當我回顯數組時,它將第一個值返回爲'null'。
所以,即使數據庫具有以下信息:
"Example 1", "Example 2", "Example 3"...
PHP的回聲了:
"null", "Example 2, "Example 3"
我可以想象這將是一個共同的問題,但我沒有管理在互聯網上的其他地方找到所需的信息,所以我希望你們友善的幫助。
我的PHP
/* If connection to database, run sql statement. */
if ($conn) {
$fetch = mysql_query("SELECT column FROM table WHERE approved = '1' ");
// declare empty array to fill later
$result = array();
// make sure the MySQL pointer is looking at the first row
mysql_data_seek($fetch, 0);
while ($row = mysql_fetch_array($fetch, MYSQL_ASSOC)) {
foreach ($row as $value) {
$row_array = $value;
// push info into new array with just the value
array_push($result, $row_array);
}
}
}
/* Free connection resources. */
mysql_close($conn);
/* Toss back results as json encoded array. */
echo json_encode($result);
UPDATE
的Mark B新代碼禮貌:
if ($conn)
{
$sql = "SELECT column_name FROM table WHERE comment_approved = '1' ";
$query = mysql_query($sql) or die(mysql_error());
$result = array();
while ($row = mysql_fetch_assoc($query)) {
$result[] = $row['column_name'];
}
}
/* Free connection resources. */
mysql_close($conn);
/* Toss back results as json encoded array. */
echo json_encode($result);
注:
作爲顯得無能爲力mysql_data_seek($fetch, 0);
:
的「空」問題仍然存在有或無。
任何幫助將是偉大的!
解決
感謝Mark B誰指出,這個問題很可能在數據庫中,而不是PHP,原來有字符'潛伏那裏應該是一個」。這導致信息顯示爲「空」。
你爲什麼使用seek?它在開始時已經是0了?是的,使用'或死(mysql_error());' – 2011-05-16 19:47:20
我不認爲你需要mysql_data_seek()函數,因爲mysql_query()應該返回結果集的指針已經在0。如果在迭代完成後重複使用相同的數據集(例如在while循環中),則應該只需要這樣做。 – 2011-05-16 19:47:26