2012-10-14 36 views
-2

我不知道为什么,一环,应该是有限的,像mysql_fetch_array()这样无限循环

while ($noticia = mysql_fetch_array(mysql_query("SELECT * FROM noticias WHERE deletada='0' ORDER BY id ASC"))) 
{ 
    // echo $noticia['blabla']; 
} 

正在做无限循环,并在页面没有加载...

为什么会发生?

+0

因为每次当你正在执行查询,以便每次你会得到的数据 – GBD

+0

mysql_ *已被弃用所以使用'pdo'或'mysqli' – StaticVariable

回答

1

尝试。

$query = mysql_query("SELECT * FROM noticias WHERE deletada='0' ORDER BY id ASC"); 
while($noticia = mysql_fetch_array($query)){ 
    echo $noticia['table_field']; 
} 
+0

'mysql_ *'已被弃用,所以不要建议 – StaticVariable

4

它可以通过

$qry = mysql_query("SELECT * FROM noticias WHERE deletada='0' ORDER BY id ASC") 

    while ($noticia = mysql_fetch_array($qry)) 
    { 
     // echo $noticia['blabla']; 
    } 

来解决,但mysql_*函数已不再那么请使用PDO或mysqli的

与PDO一个简单的简单here is very simple pdo tutorial

$pdo = new PDO('mysql:host=localhost;dbname=testdb;charset=UTF-8', 'username', 'password'); 
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); 

$query = $pdo->prepare("SELECT * FROM noticias WHERE deletada='0' ORDER BY id ASC"); 
$query->execute(); 
$row=$articlequery->fetch(pdo::FETCH_ASSOC); 
+1

现在它的工作,谢谢! –

+0

@SergioToledoPiza非常欢迎 –

+0

@SergioToledoPiza如果这个答案帮助你,你可以通过点击投票区下面的'right'标记来接受这个答案 – StaticVariable