身份不明的变量

时间:2012-10-26 16:51:41

标签: php variables

是否有人请向我解释为什么我会收到一条错误消息,说$ new_cid未被识别?只有当我使用。=将值附加到现有变量时才会发生。

    $dereg_course_student= mysql_query("SELECT * FROM course_student");
$new_cid;
while($row=mysql_fetch_assoc($dereg_course_student)){
        $cid=explode(".",$row['cid']);
        foreach($cid as $cids){
            if($cids==$_GET['cid']){
                unset($cids);}
            if(isset($cids)){
                $new_cid=$new_cid.".{$cids}";}
            } mysql_query("UPDATE course_student SET cid={$new_cid} WHERE sno={row['sno']}");
    }

3 个答案:

答案 0 :(得分:1)

因为您在开头使用$new_cid;而您没有指定它应该是什么类型的变量。在php中,您不必声明可以使用的变量$new_cid 在循环中没有预先定义的值。

    $dereg_course_student= mysql_query("SELECT * FROM course_student");
 $new_cid='';
while($row=mysql_fetch_assoc($dereg_course_student)){
        $cid=explode(".",$row['cid']);
        foreach($cid as $cids){
            if($cids==$_GET['cid']){
                unset($cids);}
            if(isset($cids)){
                $new_cid.=$cids;}
            } mysql_query("UPDATE course_student SET cid=$new_cid WHERE sno=row['sno']");
    }

试试这样。

答案 1 :(得分:0)

我不知道它实际上会导致问题,但我会尝试将$ new_cid设置为空字符串,然后再尝试连接它。 像这样:

$new_cid = "";

把它放在“$ new_cid;”的位置现在。

答案 2 :(得分:0)

它应该在php $ new_cid =“”;