我正在尝试使用mysql_fetch_row从数据库中获取单个行,但是当我回显它时,将列作为行放置,例如$ row_columns [0]为第1列,$ row_columns [1]为第2列,允许我要告诉你我正在使用的代码。
mysql_select_db($database_Takeaway, $Takeaway);
$query_columns = "SELECT * FROM `rest_site` WHERE linkid = '$rest_id'";
$columns = mysql_query($query_columns, $Takeaway) or die(mysql_error());
$row_columns = mysql_fetch_row($columns);
并显示它。
echo($row_columns[0])
我试过
的print_r($ row_columns)
并反馈以下
数组([0] => 1001 [1] => [2] => [3] => 0 [4] => [5] => 1837 [6] =>测试题[7] =>测试文本[8] => [9] => [10] => )
以上是所有1行数据,而我需要将它作为单独的列,因此我可以执行以下操作。
echo $row_columns[0]['name']
echo $row_columns[0]['postcode']
我一直在做很多搜索,似乎找不到任何有用的东西,我已经检查过php.net以及一般谷歌搜索,当然Stack Overflow所以非常感谢你的帮助。
我希望我已经明确了这个问题。
由于
答案 0 :(得分:1)
您应该使用mysql_fetch_assoc()
来获取包含列名的结果。
此外,如果您不将它放入循环中,您将始终只收到第一行查询。更好的用途是:
mysql_select_db($database_Takeaway, $Takeaway);
$query_columns = "SELECT * FROM `rest_site` WHERE linkid = '$rest_id'";
$columns = mysql_query($query_columns, $Takeaway) or die(mysql_error());
while ($row_columns = mysql_fetch_assoc($columns)) {
echo $row_columns["name"];
echo $row_columns["postcode"];
}
答案 1 :(得分:0)
mysql_fetch_row
只是一个枚举数组。
您正在寻找导致关联和枚举数组的mysql_fetch_array
,以便您可以使用字符串文字数组索引。
您还应该查看mysqli或PDO,因为从PHP 5.5开始不推荐使用mysql。
答案 2 :(得分:-1)
SELECT *
没有正确的陈述,您最好列出您需要的所有列。明确这些也有助于我们回答您的问题。
另外,请始终将输入转义为查询! mysql_real_escape_string()
作为一种猜测,我认为您错过了必须逐行获取查询结果的事实。你知道你需要一个循环吗?
此外,如果您想拥有列名,请使用mysql_fetch_assoc()
。