尝试创建一个GPA计算器。我有一个表单提交到一个php文件,然后将表单中的所有数据存储在php数组()中。这个计算器非常好用,直到我输入相同的值。我认为除非我展示一些图片,否则这没有意义:
这是一个图片说明问题:
而在第二张图片中,var_dump()输出array(2) {[0]=>float(4) 1=>float(3.5)},跳过了第一行。
这里A可能是指REG中的4.0和HONORS中的4.5。可能是因为array_combine()导致的。
以下是我的php代码:
可能整个foreach()语句需要重新编写...如果有人这么说,我很愿意再写一遍逻辑...
我不想用代码堵塞问题,所以如果你绝对需要html,请询问我,我会添加编辑。
编辑:我也在考虑需要重写逻辑...我以前从未使用过array_combine()...我只需要确保 与相关联。
感谢您的帮助!
这是一个图片说明问题:
而在第二张图片中,var_dump()输出array(2) {[0]=>float(4) 1=>float(3.5)},跳过了第一行。
这里A可能是指REG中的4.0和HONORS中的4.5。可能是因为array_combine()导致的。
以下是我的php代码:
//$_POST['grades'] for the grades <option> and $_POST['types'] for the type (REG, HONORS)
foreach(array_combine($_POST['grades'], $_POST['types']) as $code => $count)
{
if ($code == "A")
{
if ($count == "REGULAR")
{
$GradeArray[] = 4.0;
}
else if ($count == "HONORS")
{
$GradeArray[] = 4.5;
}
else if ($count == "COLLEGE")
{
$GradeArray[] = 5.0;
}
}
else if ($code == "B")
{
if ($count == "REGULAR")
{
$GradeArray[] = 3.0;
}
else if ($count == "HONORS")
{
$GradeArray[] = 3.5;
}
else if ($count == "COLLEGE")
{
$GradeArray[] = 4.0;
}
}
else if ($code == "C")
{
if ($count == "REGULAR")
{
$GradeArray[] = 2.0;
}
else if ($count == "HONORS")
{
$GradeArray[] = 2.5;
}
else if ($count == "COLLEGE")
{
$GradeArray[] = 3.0;
}
}
else if ($code == "D")
{
if ($count == "REGULAR")
{
$GradeArray[] = 1.0;
}
else if ($count == "HONORS")
{
$GradeArray[] = 1.5;
}
else if ($count == "COLLEGE")
{
$GradeArray[] = 2.0;
}
}
else if ($code == "F")
{
if ($count == "REGULAR")
{
$GradeArray[] = 0.0;
}
else if ($count == "HONORS")
{
$GradeArray[] = .5;
}
else if ($count == "COLLEGE")
{
$GradeArray[] = 1.0;
}
}
}
可能整个foreach()语句需要重新编写...如果有人这么说,我很愿意再写一遍逻辑...
我不想用代码堵塞问题,所以如果你绝对需要html,请询问我,我会添加编辑。
编辑:我也在考虑需要重写逻辑...我以前从未使用过array_combine()...我只需要确保 与相关联。
感谢您的帮助!
$_POST
的内容会有所帮助。 - Ja͢ck