Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php mysql_fetch_数组只返回第一列_Php_Mysql - Fatal编程技术网

Php mysql_fetch_数组只返回第一列

Php mysql_fetch_数组只返回第一列,php,mysql,Php,Mysql,我真的,真的需要以下代码的帮助。我就是不明白为什么它不起作用 我需要查询一个MySQL表,只需返回一行特定ID即可。然而,MySQL_fetch_数组只返回该表的第一列-我非常沮丧 $sqlCommand = "SELECT * FROM sqlInformationen WHERE ID = 2"; $sqlConn = mysql_connect($config['mysql_host'],$config['mysql_user'],$config['mysql_pass']); mys

我真的,真的需要以下代码的帮助。我就是不明白为什么它不起作用

我需要查询一个MySQL表,只需返回一行特定ID即可。然而,MySQL_fetch_数组只返回该表的第一列-我非常沮丧

$sqlCommand = "SELECT * FROM sqlInformationen WHERE ID = 2"; 

$sqlConn = mysql_connect($config['mysql_host'],$config['mysql_user'],$config['mysql_pass']);
mysql_select_db($config['db_name']) or die ("Fehler bei der Verbindungsaufnahme."); 

$result = mysql_query($sqlCommand); 
$row = mysql_fetch_array($result);  

echo $row['infTitel'];
数据库包含字段“ID”、“inftite”、“infZusammenfassung”等。但是只有echo$row['ID']返回一个值

非常感谢您的帮助


谢谢

Fetch Row一次获取一行,您应该将其弹出到while循环中,如下所示:

while($row = mysql_fetch_array($result))
{
    echo $row['infTitel'];
    echo $row['col2'];
    echo $row['col3'];
}
如果您使用
select*
回显所选行的内容,但没有得到任何值,则可能意味着该行的列为空

如果您使用的是fetch_数组,它应该同时返回列名和索引。尝试此操作以查看是否获得数据:

while($row = mysql_fetch_array($result))
{
    for($i=0; $i<count($row);, $i++)
    {
        echo $row[$i]."<br>";
    }
}
while($row=mysql\u fetch\u array($result))
{
对于($i=0;$i您需要使用:

$row = mysql_fetch_assoc($result); 
以获取关联数组作为结果


mysql\u fetch\u数组($result)
还返回数值索引和关联索引,但我不确定从哪个版本开始。

After$result=mysql\u query($sqlCommand)


当您使用
print\r($row);
时会发生什么情况?请不要将
mysql\u*
函数用于新代码。它们不再维护,社区已经开始运行。请参阅?相反,您应该了解并使用or。如果您不能决定,请尝试。如果您想了解,请使用@raina77ow print\r($row)不返回任何内容,echo$row只返回“Array”@Matthias-wird。好的,让我们使用
var\u dump($row)
代替(就在
echo$row['infitel']
line之前)@raina77ow与print\u r一样-不返回任何内容。但是,当我查询不同的表时,我会得到数组中的内容的结果。这段代码有点奇怪。您只会打印查询的最后一个结果。哦,对不起,忘了添加[]以在数组中存储$row。谢谢。我只需要使用mysql\u fetch\u assoc()为特定ID返回一行即可如果考虑到OP希望使用assoc数组,那就更好了。mysql_fetch_数组同时返回行和assoc。非常感谢您的快速响应!这对于返回$row['ID']很有效-但是我没有得到$row['infitel']的任何值@Matthias您完全确定
$row中的列名是正确的吗['columnName']
你的部分代码?@Fluffeh-是的,我已经用终端仔细检查过了。
$data = array();
while ($row = mysql_fetch_array($result)) {
    $data[] = $row;
}
print_r($data);