如何使用PHP显示MySQL的多行?

use*_*528 0 php mysql select

name|fileid|refferer|clicks|
good|same  |asda.com|20    |
good|same  |bsad.com|500   |
good|diffnt|csad.com|600   |
dddd|dasdds|asad.com|200   |
Run Code Online (Sandbox Code Playgroud)

输出:

[asda.com,20],[bsda.com,500]
Run Code Online (Sandbox Code Playgroud)

我尝试了什么:

$result = mysql_query("SELECT * FROM `ios7_refclean`.`graph_refferer_table` WHERE Name = 'good'");
$rowz = mysql_fetch_assoc($result);
foreach ($rowz as $col => $value) {
  if (($col !== "fileid") && ($col !== "name")) {
  echo ",['" . $col . "'," . $value . "]";
}
Run Code Online (Sandbox Code Playgroud)

然而,只有一排商品即将到来,其他行不会到来.此外,我无法将$colrefferer与$value带方括号的点击链接起来.

小智 6

首先,切换到MySQLi或PDO,因为mysql_*函数已弃用.

您需要使用while循环来检索所有行:

 while($rowz = mysql_fetch_assoc($result)){
  //your code here
 }
Run Code Online (Sandbox Code Playgroud)

此外,您使用错误的逻辑来打印数据,您可以简单地使用:

 while($rowz = mysql_fetch_assoc($result)){
  $data[] = '['.$rowz['refferer'].','.$rowz['clicks'].']';
 }
echo implode(",", $data);
Run Code Online (Sandbox Code Playgroud)