-2

所以这里是代码。我们被分配创建一个简单的表单。我已经阅读了很多关于 PHP 的教程,这里的所有代码都来自互联网。你们能帮我解决这个问题吗-_- 每当我尝试打开它时,它都会一直显示 PARSE ERROR : SYNTAX ERROR 并注意:未定义的索引:fname 第 2 行到第 8 行。

<?php
$fname = $_POST["fname"];
$lname = $_POST["lname"];
$gender = $_POST["gender"];
$food = $_POST["food"];
$textbox = $_POST["textbox"];
$leducation = $_POST["leducation"];
$time = $_POST["time"];
if (!isset($_POST['submit']))
{
?>
<html>
<body>
<head>
<title> Midterm Exam </title>
</head>
<form action"jr.php" method="post">
First Name : <input type="text" size="12" maxLength="15" name="fname">
<br>
Last Name : <input type="text" size="12" maxLength="15" name="lname">
<br>
Gender: <br>
Male : <input type="radio" value="Male" name="gender"> <br>
Female : <input type="radio" value="Female" name="gender"> <br>
Please Choose Your Favorite Foods:<br>
Steak:<input type="checkbox" value="Steak" name="food[]"> <br>
Pizza: <input type="checkbox" value="Pizza" name="food[]"> <br>
Pasta : <input type="checkbox" value="Pasta" name="food[]"> <br>
<textarea rows="4" cols="30" name="textbox" > Enter your Favorite Quote!</textarea><br>
Select a Level of Education:<br>
<select name="leducation">
<option value="PS">Pre-School</option>
<option value="E">Elementary</option>
<option value="HS">High School </option>
<option value="C"> College </option>
</select><br>
Select Your Favorite time of the Day:<br>
<select name="time" size="3">
<option value="Morning">Morning</option>
<option value="Day">Day</option>
<option value="Night">Night</option>
</select><br>
<input type="submit" value="Submit" name="Submit">
</form>
<?php
} 
else {
echo "Hello , ".$fname." ".$lname.". <br>";
echo "You are ".$gender." . and you like";
foreach ( $food as $fod)
{
echo $fod."<br>";
echo "<i>".$quote."</i><br>";
echo "You're Favorite time is ".$time.", and you passed ".$leducation."!<br>";
}
}
?>
</body>
</html>
4

2 回答 2

0

当您第一次加载页面时,没有提交。

else所有这些行都应该在if (!isset($_POST['submit'])) {.

于 2013-08-19T14:58:59.117 回答
0

第一次运行此表单时,$_POST 中将没有值,因为您没有按下按钮来发送 POST 数组。

您需要在第一段 PHP 周围添加一些代码来确定这是第一次运行还是数据已发布,即按下按钮。

尝试:-

if (!isset($_POST['submit'])) {       
    $fname = $_POST["fname"];
    $lname = $_POST["lname"];
    $gender = isset( $_POST["gender"] ) ? $_POST["gender"] : '';
    $food = $_POST["food"];
    $textbox = $_POST["textbox"];
    $leducation = $_POST["leducation"];
    $time = $_POST["time"];

?>
<html>
<head>
   <title> Midterm Exam </title>
</head>
<body>
    <form action"jr.php" method="post">
        First Name : <input type="text" size="12" maxLength="15" name="fname"><br>
        Last Name : <input type="text" size="12" maxLength="15" name="lname"><br>
        Gender: <br>
        Male : <input type="radio" value="Male" name="gender"> <br>
        Female : <input type="radio" value="Female" name="gender"> <br>
        Please Choose Your Favorite Foods:<br>
        Steak:<input type="checkbox" value="Steak" name="food[]"> <br>
        Pizza: <input type="checkbox" value="Pizza" name="food[]"> <br>
        Pasta : <input type="checkbox" value="Pasta" name="food[]"> <br>
        <textarea rows="4" cols="30" name="textbox" > Enter your Favorite Quote!</textarea><br>
        Select a Level of Education:<br>
        <select name="leducation">
            <option value="PS">Pre-School</option>
            <option value="E">Elementary</option>
            <option value="HS">High School </option>
            <option value="C"> College </option>
        </select><br>
        Select Your Favorite time of the Day:<br>
        <select name="time" size="3">
            <option value="Morning">Morning</option>
            <option value="Day">Day</option>
            <option value="Night">Night</option>
        </select><br>
        <input type="submit" value="Submit" name="Submit">
    </form>
<?php
} else {
    echo "Hello , ".$fname." ".$lname.". <br>";
    echo "You are ".$gender." . and you like";
    foreach ( $food as $fod) {
        echo $fod."<br>";
        echo "<i>".$quote."</i><br>";
        echo "You're Favorite time is ".$time.", and you passed ".$leducation."!<br>";
    }
}
?>
</body>
</html>

<head>你的标签也在你里面,<body>所以我把它移到了正确的地方。

于 2013-08-19T15:01:37.833 回答