【发布时间】:2014-03-16 10:12:44
【问题描述】:
我有一个小问题,我的代码存储了值并且可以像往常一样运行,但是当我想再次显示它时,该值不会显示并且错误是:
注意:未定义变量:C:\xampp\htdocs\eAttendance\*******.***php 中第 91 行的 result_c
这是:
<td><?php echo $GLOBALS['result_c'] ?></td>
我的问题是:
- 为什么我不能在
$result_c中回调我的变量? - 我该怎么办?你有什么想法吗?
- 使此编码成功的适当方法是什么?
我编写此代码是因为我想计算存储在$result_c 中的数组中的所有值,以成为平均出勤率。
<table >
<tr>
<td>Matrix Card</td>
<td>Percent</td>
</tr>
<?php
$sbj = $_GET['sbj'];
$cls = $_GET['cls'];
$sql = mysql_query ("SELECT * FROM stu_course where class = '$cls' and subject_code = '$sbj'");
$a = 0;
while ($row = mysql_fetch_assoc($sql)){
?>
<tr>
<?php
$result1[] = $row['login_id'];
$sql1 = mysql_query("Select * from attendance where id_student = '$result1[$a]' and subject_code = '$sbj'") or die('Query failed. ' . mysql_error());
$b = 0;
while($row1 = mysql_fetch_assoc($sql1))
{
$popo = 1;
$result_array[] = $row1['credit_hour'];
$add = $result_array[$b];
$result_c = $result_c + $add;
}?>
<td><?php echo $result1[$a];?></td>
<td><?php echo $GLOBALS['result_c'] ?></td>
<?php
$a++;
}
?>
</tr>
</table>
【问题讨论】:
-
该代码有很多错误,您没有初始化
$result_c变量,您正在使用$GLOBALS尽管$result_c在您当前而不是全局范围内,但您始终在设置将$popo变量设置为 1 而从未使用它(或者如果您删除了那部分代码,那么您可以简单地将变量设置在循环之外。要回到最初的问题,只需使用$result_c而不是$GLOBALS['result_c']. -
……你真的不应该把未转义的 get 参数直接放在你的查询中