Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/237.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.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获取单个行上的所有数据_Php_Html_Sql_Database - Fatal编程技术网

Php MySQL获取单个行上的所有数据

Php MySQL获取单个行上的所有数据,php,html,sql,database,Php,Html,Sql,Database,我的PHP代码在从SQL数据库检索信息时遇到问题,数据库看起来像 我的代码如下所示: $query="SELECT nDeCand FROM `candidats`"; $res=mysql_query($query); $row = mysql_fetch_row($res,MYSQL_NUM); $num= count($row); echo "Printed Array: </br>"; echo "<pre>"; print_r($row); echo "<

我的PHP代码在从SQL数据库检索信息时遇到问题,数据库看起来像

我的代码如下所示:

$query="SELECT nDeCand FROM `candidats`";
$res=mysql_query($query);
$row = mysql_fetch_row($res,MYSQL_NUM);
$num= count($row);
echo "Printed Array: </br>";
echo "<pre>";
print_r($row);
echo "</pre>";
$query=“从“候选资格”中选择nDeCand”;
$res=mysql\u query($query);
$row=mysql\u fetch\u row($res,mysql\u NUM);
$num=计数($row);
回显“打印阵列:
”; 回声“; 打印(行); 回声“;
它会打印:

数组

[0]=>24567
)

我需要它来检索nDeCand中的所有数字,而不仅仅是第一个。
有人能解释一下为什么它不这样做吗?

你必须用一段时间在行中循环

<?php
while ($row = mysqli_fetch_row($mysqli_result)) {
    // do stuff...
}
?>
$query=“从“候选资格”中选择nDeCand”;
$res=mysql\u query($query);
而($row=mysql\u fetch\u row($res,mysql\u NUM)){
$num=计数($row);
回显“打印阵列:
”; 回声“; 打印(行); 回声“; }
首先,您应该使用的是
mysql\uu
函数,这些函数已被弃用

除此之外,在函数上下文中使用mysql\u fetch\u行(或mysqli\u fetch\u行)时,需要在循环中调用它:

$result=mysql_query($query);
while($row = mysql_fetch_assoc($result))
{
    echo $row['nDeCand'];
}

您忘记循环:


您仅获取第一行并访问该值。您需要在所有行中循环。mysql_fetch_assoc()每次在while循环中调用指向下一行的指针时,都会递增该指针。这样您就可以访问所有行。代码如下:-


mysql\u fetch\u row
只获取一行


请尝试
mysql\u fetch\u array
,然后循环数组。

您可能需要一个while循环;)很穷,很穷。下次再试试吧。回答另一个问题仍然很好,我看到了很多潜力。问题是你认为你的解释需要源代码来解释。事实并非如此。相反,源代码表明,对于这个非常琐碎的问题,您不相信自己的解释。我写下了这个问题,然后又写了另一个我认为更有价值的答案。
$res=mysql_query($query);
while($row = mysql_fetch_assoc($res))
{
    echo $row['nDeCand'];
}
$result=mysql_query($query);
while($row = mysql_fetch_assoc($result))
{
    echo $row['nDeCand'];
}