挂断我的代码

时间:2011-10-10 12:08:48

标签: php mysql

标题:php挂断我的代码

请告诉我为什么或者有什么问题

这是我的代码

<?php

$group = $_GET['group'] ;

$email = $_GET['email'] ;

include("../includes/config.php")  ;

if($group != '')
    {

       $query = mysql_query(" SELECT email FROM users WHERE `group`='$group' ") ;


       $emails = '' ;

           while($res = mysql_num_rows($query))
               {
                 $emails .= $res[0] ;
               }

    }

$emails .= $email ;

echo $emails ; die();

?>

在While循环之前

我试图查看我的查询及其确定

循环后

服务器没有答案

我正在使用php 5.2.6

3 个答案:

答案 0 :(得分:4)

要避免SQL注入,您应该替换

$group = $_GET['group'] ;

$group = mysql_real_escape_string($_GET['group']) ;

然后,你必须执行查询,然后迭代结果集,而不是你正在做什么迭代结果中的行数(对于每个结果集是常量,并且总是求值为true,创建无限环)

$res = mysql_query($query);

while ($row = mysql_fetch_row($res)) {
    $email .= $row[0];
}

答案 1 :(得分:2)

尝试在循环中使用mysql_fetch_array代替mysql_num_rows

答案 2 :(得分:2)

您通常希望使用mysql_fetch_array而不是mysql_num_rows,因为后者会返回行数而不是结果。