读书人

关于退选学程的代码系统提示未定义变

发布时间: 2013-06-25 23:45:42 作者: rapoo

关于退选课程的代码,系统提示未定义变量。
退选课程提交后,系统提示错误,第15、35、38行有未定义的变量“xuehao” 请问我应该怎么修改?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>退选课题</title>
</head>

<body>
<?php
//######################退选课题界面3##########################
include "config.php";
include "header.php";?>
<?php
extract($_POST);
$query="select * from $student_table where xuehao='".$xuehao."'";
mysql_query("set names 'GB2312'");
$result=mysql_query($query);
$row=mysql_fetch_array($result);
$id=$row['id'];

$query1="select number as sn,surplus as ssn from $jiaoshi_table where id='$id'";
mysql_query("set names 'GB2312'");
$result1=mysql_query($query1);
$row1=mysql_fetch_array($result1);
if($row1['sn']==1)
{
$query2=mysql_query("update $jiaoshi_table set xuehao='未选' where id='$id'");
$query3=mysql_query("update $jiaoshi_table set surplus=surplus+1 where id='$id'");
}
else
{
if(($row1['sn']-$row1['ssn'])==1)
$query7=mysql_query("update $jiaoshi_table set xuehao='未选' where id='$id'");
else
$query6=mysql_query("update $jiaoshi_table set xuehao=replace(xuehao,concat('".$xuehao."','\n'),'') where id='$id'");
$query8=mysql_query("update $jiaoshi_table set surplus=surplus+1 where id='$id'");

$query5="update $student_table set id=0 where xuehao='".$xuehao."'";
mysql_query("set names 'GB2312'");
$result5=mysql_query($query5);
if($result5==true)
{
echo"<p align=\"center\"><font color=\"#FF0000\"><b><big>退选课题成功!</big></b></font>";
echo "<meta http-equiv=\"refresh\" content=\"2;url=back_keti.php\">";
exit;
}
else
{
echo"<p align=\"center\"><font color=\"#FF0000\"><b><big>退选出错,请返回重新退选</big></b></font></p>";
echo "<meta http-equiv=\"refresh\" content=\"1;url=back_keti.php\">";
exit;
}
}

?>
<?php include "foot.php";?>
</body>
</html>

[解决办法]
你怎么改的,改完后的代码发出来看看。
------解决方案--------------------


extract($_REQUEST);
$_POST 和 $_GET 的内容都包括在 $_REQUEST 中,没有特别的要求,不需要分得那么细

你只是 <a href=back_keti2.php?xuehao=".$row['xuehao']." >退选</a>
只传递了学号,并没有传递课程

并没有看到你是如何实现“退选”的代码

读书人网 >PHP

热点推荐