执行While循环Php
抱歉,这有点不切实际,如果没有结果,我无法在条件为true和false时执行简单的while语句:执行While循环Php,php,loops,while-loop,Php,Loops,While Loop,抱歉,这有点不切实际,如果没有结果,我无法在条件为true和false时执行简单的while语句: // Select all the rows in the markers table $query = "SELECT * FROM markers M, professor P WHERE P.id = M.id;"; if($row = mysql_fetch_array($result)) { do { echo $row; } while($ro
// Select all the rows in the markers table
$query = "SELECT * FROM markers M, professor P
WHERE P.id = M.id;";
if($row = mysql_fetch_array($result)) {
do {
echo $row;
}
while($row = mysql_fetch_array($result));
} else {
die('No results.');
}
我看到这段代码的问题是,
$query
从未在mysql\u fetch\u array()中被调用过,如果这一点被更改了?请尝试以下条件:
if ( mysql_num_rows($result) == 0 ) {
die('No Result');
}
或者更简单:
if ( !mysql_num_rows($result) ) {
die('No Result');
}
PHPwhile
语句没有else
s。我相信这几乎是Python所独有的。相反,您可以这样做:
if($row = mysql_fetch_array($result)) {
do {
echo $row;
} while($row = mysql_fetch_array($result));
} else {
die('No results.');
}
您的代码看起来不完整。这将抛出语法错误。这将抛出错误:mysql_fetch_array()希望参数1是resource$query=“SELECT*FROM markers M,professor P,其中P.id=M.id;”;如果($row=mysql\u-fetch\u-array($result)){do{echo$row;}而($row=mysql\u-fetch\u-array($result));}否则{die('No-results');}
这是最完整的答案,但请记住执行查询以便定义$result。您必须首先执行查询$结果=mysql\u查询($query);另外,我们很清楚,echo$row将只显示“Array()”@user975947:您连接到数据库了吗?