echo MySql列名和值

时间:2011-05-24 10:05:30

标签: php

我需要的是列表名称=>值可以进行MySql查询。我的问题是,我可以访问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

谢谢,对不起,如果看起来容易,但我迷路了

3 个答案:

答案 0 :(得分:9)

您需要while循环并调用mysql_fetch_assoc

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

答案 1 :(得分:2)

使用mysql_fetch_assoc

请参阅:http://www.php.net/manual/en/function.mysql-fetch-assoc.php

答案 2 :(得分:2)

我认为你混淆了一些变量名,并且你不需要join函数,因为你一次只添加一个列名。这有用吗?

$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>";