0

有人会向我解释为什么我收到一个错误,说 $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']}");
    }
4

3 回答 3

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']");
    }

像这样试试。

于 2012-10-26T16:55:39.223 回答
0

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

$new_cid = "";

把它放在你有“$new_cid;”的地方 现在。

于 2012-10-26T17:05:00.320 回答
0

它应该在 php $new_cid = "";

于 2020-09-30T17:45:11.787 回答