2013-10-22 69 views
0
public static function cantPaginas($asignatura, $codEstudiante) 
{   
    $query="SELECT * FROM nota WHERE Asignatura=".$asignatura." AND codEstudiante=".$codEstudiante; 
    $res=mysql_query($query); 
    $num_filas=mysql_num_rows($res); 
    if($num_filas>0) 
    { 
     $num_regs_x_p=16; 
     $paginas=ceil($num_filas/$num_regs_x_p); 
     for($x=0;$x<$paginas;$x++) 
     { 
      echo"<a href='?materia=".$asignatura."&page=".($x+1)."'>".($x+1)."</a>"; 
      return 1; 
     } 
    } 
    else 
    {return 0;} 
} 

这基本上是我的查询。我知道我缺少两对引号,但是当我把它们输出并输出查询时,它不显示任何内容。但是当我删除引号时,我可以看到它。MySql查询在php中不起作用

不幸的是,我知道查询不会没有这些引号的工作,但当我把它们就像变量是空的或错误的,或者我真的不知道。

它不显示任何错误表从PHP ...只是不正确运行的过程。

+1

几个问题:什么是'$ num_filas'价值,是> 0? '$ res'的值是'false'还是资源?仅供参考,您可以通过'mysql_error'获取错误。另外不要忘记SQL注入。 – zamnuts

+1

请注意,1)mysql扩展名已被弃用,您应该使用PDO或mysqli来代替。 2)除非在将变量传递给'cantPaginas'函数之前进行某种类型的转义,否则您的代码将广泛开放给SQL注入。 – Oldskool

回答

3
$query="SELECT * FROM nota WHERE Asignatura='".$asignatura."' AND codEstudiante='".$codEstudiante."'"; 
0

您需要使用:

$query="SELECT * FROM nota WHERE Asignatura='$asignatura' AND codEstudiante='$codEstudiante'";