? asked in 電腦與網際網路程式設計 · 1 decade ago

php新手 mysql_fetch_array疑問

這是我的程式片斷

<?

$link_ID = mysql_connect("localhost","root");

mysql_select_db("contact");

$result = mysql_query("select * from list;",$link_ID);

$sn_index = mysql_num_rows($result);

for($index=0; $index < $sn_index; $index++)

{

$arr[$index] = mysql_fetch_row($result);

echo "$arr[$index]"; //這裡$index不管放什麼數字 都是輸出Array

};

mysql_close($link_ID);

?>

連線資料庫沒有問題

但是就是抓不到資料放到陣列的感覺

$sn_index = mysql_num_rows($result)

改成

$arr[$index] = mysql_fetch_array($result,MYSQL_NUM);

也一樣都是輸出Array

2 Answers

Rating
  • 1 decade ago
    Favorite Answer

    試著將 echo "$arr[$index]";

    改為 print_r($arr[$index]);

    請參考:http://linux.tnc.edu.tw/techdoc/banic/variable/pri...

    -------------------------------------------------------------------------------

    for($index=0; $index < $sn_index; $index )

    {

    $arr[$index] = mysql_fetch_row($result);

    echo "$arr[$index]"; //這裡$index不管放什麼數字 都是輸出Array

    };

    -------------------------------------------------------------------------------

    我是會用 while來寫

    //若$arr= mysql_fetch_row($result)讀不到資料會回傳false

    $i=0;

    while($arr= mysql_fetch_row($result)){

    echo $arr[i].'<br>';

    $i ;

    }

    參考看

  • Jelly
    Lv 7
    1 decade ago

    為什麼不用 while 跑就好

    這樣感覺 有點多餘

    還是你有別的需求?

    2008-04-11 02:33:17 補充:

    $link_ID = mysql_connect("localhost","root");

    mysql_select_db("contact");

    $result = mysql_query("select * from list;",$link_ID);

    while( $row = mysql_fetch_row($result)){

    print_r($row);

    };

    mysql_close($link_ID);

Still have questions? Get your answers by asking now.