2011-05-24 114 views
2

我需要的是有一个list name =>值才能使MySql查询。我的问题是,我可以访问MySql记录,但我也需要访问表的列名,我应该在我的代码中更改什么?Php - echo MySql列名和值

感谢

$query = "SELECT * FROM test_table"; 
$result = mysql_query($query) or die("Erro!: " . mysql_error()); 
if (mysql_num_rows($result) > 0) { 
    $row = mysql_fetch_array($result); 
    if(is_array($row)) { 
     foreach ($row as $col => $val) { 
      echo $col." = ".$val."<br>"; 
     } 
    } 
} 

好了,现在我为什么不能加入值,然后让我的SQL查询?

while($row = mysql_fetch_assoc($result)) { 
     foreach ($row as $col => $val) { 
      $colunas .= join(",",$col); 
      $valores .= join(",",$val); 
     } 
     echo "colunas = ".$col."<br>"; 
     echo "valores = ".$val."<br>"; 
    } 

我只是得到空colunas和VALORES

谢谢,对不起,如果它似乎很容易,但我失去了

+2

使用mysql_fetch_assoc, – Harsh 2011-05-24 10:10:45

+0

我认为一些书籍或手册可以在研究开始时是有用的。也许http://dev.mysql.com/doc/ – 2011-05-24 10:10:49

回答

9

您需要while循环和mysql_fetch_assoc

while($row = mysql_fetch_assoc($result)) { 
     foreach ($row as $col => $val) { 
      echo $col." = ".$val."<br>"; 
     } 
    } 
通话
+0

谢谢,就是这样:-) – Pluda 2011-05-24 10:27:09

+0

@Pluda:欢迎 – 2011-05-24 10:28:00

+0

只是编辑一个litle的问题,也许你可以再次帮助 – Pluda 2011-05-24 10:46:06

2

我想你混合了一些变量名称,并且不需要连接函数,因为您一次添加一个列名称。这是否工作?

$colunas=$valores=""; 

while($row = mysql_fetch_assoc($result)) { 
     foreach ($row as $col => $val) { 
      $colunas .= $col.','; 
      $valores .= $val.','; 
     } 
     echo "colunas = ".$colunas."<br>"; 
     echo "valores = ".$valores."<br>"; 
+0

是的,谢谢。 – Pluda 2011-05-24 11:23:26

+0

不客气。 – bigblind 2011-05-24 11:26:50