php - 如何获取mysql列名和值

标签 php mysql

我正在尝试动态获取列名称和值,这意味着如果在数据库中添加新列,我想在页面刷新时在前端显示

下面将为我提供列名称,但随后我需要检索与列名称相关的值。任何人都可以指导我如何做到这一点,谢谢。

  <?php

  Include"db.php";


    echo "<table>";
    echo "<tr>";
    $qColumnNames = mysql_query("SHOW COLUMNS FROM fullnames") or die("mysql error"); 


    $numColumns = mysql_num_rows($qColumnNames); 
    $x = 0; 
    while ($x < $numColumns) 
    { 
        $colname = mysql_fetch_row($qColumnNames); 
        $col[$colname[0]] = $colname[0]; 
        $x++; 
    } 

    foreach($col as $head){
        echo "<th>$head</th>";

    }



    echo "</tr>";
    echo "</table>";

    ?>

最佳答案

可以做这样的事情:(假设您的检索列名的功能正常)

编辑代码

Include("db.php");


echo "<table>";

$qColumnNames = mysql_query("SHOW COLUMNS FROM fullnames") or die("mysql error"); 


$numColumns = mysql_num_rows($qColumnNames); 
$x = 0; 

while ($x < $numColumns) 
{ 
    $colname = mysql_fetch_row($qColumnNames); 
    $col[$colname[0]] = $colname[0];
    $x++; 
}

$result = mysql_query("SELECT * FROM fullnames");
$counter = 0;
while($row = mysql_fetch_assoc($result)){
     foreach($col as $c){
        $rows[$counter][] = "<td>" . $row[$c] . "</td>";
     }
    $counter++;
}

echo "<tr>";
foreach($col as $c){
    //echo headers
     echo "<th>" . $c . "</th>";
}
echo "</tr>";
foreach($rows as $r){
    //Echo all content
    echo "<tr>";
        foreach($r as $cell){
             //echo all cells
             echo $cell;
        }
    echo "</tr>";
}
echo "</table>";

?>

还没有时间测试这个,但它应该可以工作。 (但您应该使用 msqli_ 函数代替。

关于php - 如何获取mysql列名和值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19206652/

相关文章:

php - Laravel Eloquent 检查日期是否与数据库中的日期不相等

MYSQL 自动递增,每个外键从 0 开始

mysql - 管理逻辑约束以处理 mySQL 数据库插入中的并发性

mysql - 两个不同表之间的INSERT和UPDATE(+增加值)php mysql

php - 从node.js请求JSON文件到PHP

mysql - sql查询另一个表中存在的条目

php - Magento 将自定义字段添加到客户帐户教程问题

javascript - 在网页上显示日志文件内容

php - WAMP/XAMPP 在 localhost 上的响应非常慢

php - 针对 PHP 中给定 DTD 的 XML 验证