gpt4 book ai didi

php - 仅获取数组 mysql 中的列名

转载 作者:可可西里 更新时间:2023-11-01 06:41:55 24 4
gpt4 key购买 nike

我是 php 和 mysql 的新手。我想创建一个动态表,其中包含 mysql 数据库中表中的所有字段。我正在尝试获取数组中的所有列名,但没有成功。我正在尝试以下代码:

<?php
$fields = mysql_query("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'mytablename' ");
$res = mysql_fetch_array($fields);
foreach ($res as $field)
{
echo '<tr>';
echo '<td>';
echo $field;
echo '</td>';
echo '<td>';
echo "<input type='text' class='' name='tags' id='tags' value=''>";
echo '</td>';
echo '</tr>';
}
?>

如有任何帮助,我们将不胜感激。

最佳答案

您不需要额外的 SQL 查询来获取您的字段名称。您可以使用您的 normale SELECT 查询,并从该查询中获取您的字段名称(和定义)。这样性能更好!

已弃用的 MySQL 解决方案:

MySQL 库已弃用。它可以在这个链接中使用,但是你应该切换到 mysqli 库,它在程序上使用时几乎相同(第二个示例)。

http://www.php.net/manual/en/function.mysql-field-name.php

OOP MySQLi 解决方案:

$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";

if ($result = $mysqli->query($query)) {
/* Get field information for all columns */
while ($finfo = $result->fetch_field()) {
printf("Name: %s\n", $finfo->name);
printf("Table: %s\n", $finfo->table);
printf("max. Len: %d\n", $finfo->max_length);
printf("Flags: %d\n", $finfo->flags);
printf("Type: %d\n\n", $finfo->type);
}
$result->close();
}

程序化 MySQLi 解决方案:

$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";
if ($result = mysqli_query($link, $query)) {
/* Get field information for all fields */
while ($finfo = mysqli_fetch_field($result)) {
printf("Name: %s\n", $finfo->name);
printf("Table: %s\n", $finfo->table);
printf("max. Len: %d\n", $finfo->max_length);
printf("Flags: %d\n", $finfo->flags);
printf("Type: %d\n\n", $finfo->type);
}
mysqli_free_result($result);
}

http://www.php.net/manual/en/mysqli-result.fetch-field.php

关于php - 仅获取数组 mysql 中的列名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18955650/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com