学习PHP这么久了,本来一般的问题,不到想不通的时候我是不会求助的。因为哪怕是多花点时间自已动手去搞明白,那样就会更快地变成自已的东西。可是这个问题,我还是不明白。 为什么PHP还有这么怪的自定义变量问题,困惑,代码如下:  是个PHP简单的分页代码。<?phpinclude("conn.php");$pagesize=5;
$url=$_SERVER["REQUEST_URI"];
$url=parse_url($url);
$url=$url[path];
$numq=mysql_query("SELECT * FROM `test`");
$num = mysql_num_rows($numq);if($_GET[page]){
$pageval=$_GET[page];
$page=($pageval-1)*$pagesize;
$page.=',';
}
if($num > $pagesize){
 if($pageval<=1)$pageval=1;
echo "共 $num 条".
" <a href=$url?page=".($pageval-1).">上一页</a> <a href=$url?page=".($pageval+1).">下一页</a>";
}
   echo  $SQL="SELECT * FROM `test` limit $page $pagesize ";
    $query=mysql_query($SQL);
    while($row=mysql_fetch_array($query)){    echo "<hr><b>".$row[name]." | ".$row[sex];    }
?>请问,红色的那一行,  $page.=',';  这是什么意思,百思不解。变量加上一个点,然后又等于 逗号, 为什么?
而且,删除了这一行程序就运行失败了,还非得有这一行。 呵呵。

解决方案 »

  1.   

    $page.=','; ====$page=$page.','; 懂了吧?
      

  2.   

    谢谢大哥,我把 
    $page.=','; 这一行换成了$page=$page.',';运行后,就提示这个错误了: 
     Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource 请问,是什么问题啊。
      

  3.   

    肯定是上面的mysql_query这一句,返回了无效结果,一般是sql写错了
      

  4.   


    SQL 语句就是一个查询语句,没有错。
    上面的代码运行正常,只是我想知道,$page.=',';   这一行是什么意思。 我学PHP基础的时候,没有文档说变量可以这样定义的。
      

  5.   

    老兄,不是变量加个点,是点加等于号,$page .= ','这种形式和$a += 1这种形式是完全一样的。再说了,那个逗号不过是一个字串而已嘛,那个点是字串连接符。还有,别说是“然后又等于 逗号”,很不舒服,那是赋值。
      

  6.   

    我知道了,原来是: 
    echo  $SQL="SELECT * FROM `test` limit $page $pagesize "; 
    这一行里面的 $page  $pagesize 之间没有加逗号
    我换成 echo  $SQL="SELECT * FROM `test` limit $page , $pagesize "; 然后再将
    $page.=',';  这一行删除,就可以了。 呵呵
      

  7.   

    $page=($pageval-1)*$pagesize; 
    $page.=',';  
    相当于 $page=($pageval-1)*$pagesize.',';