使用PHP获取动态mySQL表列

时间:2013-08-26 19:26:51

标签: php mysql dynamic-columns

通常所有基本的PHP-MYSQL-SELECT教程都基于此代码

$query = "SELECT * FROM table_name";
$result = mysql_query($query);

$num = mysql_num_rows($results);
if ($num > 0) {
    while ($row = mysql_fetch_assoc($result)) {
        // You have $row['ID'], $row['Category'], $row['Summary'], $row['Text']
    }
}

但为此,我需要知道列名称,如“ID”,“类别”,“摘要”或“文本”。 如果我在phpmyadmin中添加一个像“Email”这样的新列,我还必须将$row['Email']添加到php脚本中。

如何让这一步动态化?

2 个答案:

答案 0 :(得分:0)

关于这个特殊问题,您需要哪些行?如果你只想打印它们就行print_r($ row)它们会在那里,如果你想用它们做某事就像这样做foreach循环

foreach($row as $k=>$cell)
{
    //do something with cell
}

但正如很多其他人会告诉你的那样,请使用PDO。

答案 1 :(得分:0)

您可以使用mysql_fetch_array()代替mysql_fetch_assoc(),并且您将能够使用索引而不是名称,但是,在任何情况下,除非您在查询中自己定义,否则无法保证订单,但根据您想要对结果做什么,它可以提供帮助。

标准唠叨:使用MySQLi。