iT邦幫忙

0

php 讀取 mysql 筆數問題

想請問, 資料內有3筆資料, 但只讀出第一筆, 後面的2筆都讀不出來?
是我哪有寫錯嗎?

$sql_S = "SELECT * FROM Deivce WHERE plu = '0'";
$r1 = mysql_query($sql_S);
$r2 = mysql_fetch_object($r1);
while (list($clave, $valor) = each($r2)){
echo $valor;
}

看更多先前的討論...收起先前的討論...
$r2 = mysql_fetch_object($r1); <== 你只做了一次,當然就只有一筆。請放在迴圈裡面做。
範例 http://www.w3school.com.cn/php/func_mysql_fetch_object.asp
dls5168 iT邦新手 5 級 ‧ 2018-10-23 10:08:24 檢舉
Dear Samと可樂快跑:

我改成
$sql_S = "SELECT * FROM Deivce WHERE plu = '0'";
$r1 = mysql_query($sql_S);
while (list($clave, $valor) = each(mysql_fetch_object($r1)))
跑出來的變為:
plu , 0
plu , 0
plu , 0

我想要的是下列型式, 是我哪還須要修正?

plu , 0
no_brand , 0
brand , ACER
model , apspfsdf
no_model , 1

plu , 1
no_brand , 0
brand , ACER
model , apspfsdf
no_model , 1

plu , 2
no_brand , 0
brand , ACER
model , apspfsdf
no_model , 1
ccutmis iT邦高手 8 級 ‧ 2018-10-23 11:24:19 檢舉
google "mysql_fetch_row"
小魚 iT邦大師 1 級 ‧ 2018-10-23 12:00:21 檢舉
這應該Google一下就會看到了,
另外可樂大大建議要用PDO...
你需要了解一下:
mysql_fetch_row
mysql_fetch_array
mysql_fetch_assoc
mysql_fetch_object
這四種有什麼不同
然後小魚說的對……該改學 PDO而不是mysql()指令集
如果你是php7應該連執行都不能
小魚 iT邦大師 1 級 ‧ 2018-10-23 12:44:26 檢舉
有我現在都有用PDO,
我覺得PDO跟我熟悉的C#的方法比較接近,
看起來比較親切.
dls5168 iT邦新手 5 級 ‧ 2018-10-23 14:11:47 檢舉
因我是新手, 有些觀念是不太懂, 但公司又急的要我寫,
是否有大師們, 能先幫小弟解決目前的燃眉之急, 感激不盡.
那你最好先弄懂觀念再寫。
不然日後你的麻煩更多。
我會告訴你:急沒有用……再急!你也要將近半年的訓練。

1 個回答

1
浩瀚星空
iT邦超人 1 級 ‧ 2018-10-23 15:25:19
最佳解答
$sql_S = "SELECT * FROM Deivce WHERE plu = '0'";
  $r1 = mysql_query($sql_S);

while ($row = mysql_fetch_array($r1)){
   foreach($row AS $key => $data){
       echo $key.','.$data."\n";
   }
   echo "\n";
}

如果是要顯示在網頁上,將\n改成<br>(請記得改成半型)吧。

基本上,我很不喜歡像上面給這樣的程式碼。
而且,如果你不了解我上面寫的東西。你後續也一定會有一堆問題。

先跟你說,我雖然寫這樣的程式碼給你。但如果是在我公司的工程師交這樣的東西給我。
我會用踹的叫他回家吃自已。
理由上面已經有說過了。

但今天心情好,算了。

dls5168 iT邦新手 5 級 ‧ 2018-10-23 17:33:53 檢舉

謝謝 浩瀚星空 ,我會認真的學習, 真的很感謝.

我要發表回答

立即登入回答