0

フォームからの入力を確認するために使用している非常に単純な PHP コードがあります。

HTML:

<!DOCTYPE html>
<html>
    <head>
        <title>Unit 7 - Homework 5</title>
    </head>
    <body>
        <h1>Contact us</h1>
        <table>
            <form method="POST" action="script.php">
                <tr>
                    <td>First Name:</td> 
                    <td><input type="text" name="First Name" id="fname"></td>
                </tr>
                <tr>
                    <td>Last Name:</td>
                    <td><input type="text" name="Last Name" id="lname"></td>
                </tr>
                <tr>
                    <td>E-mail:</td>
                    <td><input type="text" name="E-mail" id="email"></td>
                </tr>
                <tr>
                    <td>Comments</td>
                    <td><textarea rows="10" cols="40"></textarea></td>
                </tr>
                <tr>
                    <td></td>
                    <td><input type="submit" value="Contact"> &nbsp; <input type="reset"></td>
                </tr>
            </form>
        </table>
    </body>
</html>

PHP

<?php print "<!DOCTYPE html>
<html lang=\"en\">
<head>
    <title>Form Confirmation</title>
</head>
<body>
    <h1>Congratulations, registration done!</h1>";
    $message = ";
    foreach ($_POST as $key => $value) {
        $message .= $key . ":" .$value. "<br>\r\n";
    }

    print $message;
    print "<br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <form action=\"#\">
    <input type=\"button\" value=\"Back\" onclick=\"javascript:history.go(-1)\" />
    </form>
</body>
</html>"
?>

PHP コードでエラーが発生し続けます。

Parse error: syntax error, unexpected ':' in <PHP path goes here> on line 10

セミコロンを忘れたように感じますが、何が間違っているのかわかりません。

4

5 に答える 5

3

PHPパーサーはこれによって混乱します:

$メッセージ = ";

と置換する

$メッセージ = "";

于 2013-12-12T09:36:56.720 に答える
0

あなたの唯一の間違いは、php に出力させたいテキストを二重引用符で囲んだことです。これは、php がそれを評価し、何かを処理する必要があるかどうかを確認することを意味します。代わりに、次のように一重引用符で囲む必要があります: ... ':' ...

一重引用符で囲まれたものはすべて、文字ごとにそのまま印刷されます。二重引用符で囲まれたものはすべて評価されます。

于 2013-12-12T09:43:43.093 に答える
0

そこにいます:

$message = ";

たぶんそれは:

$message = "";

また、この方法で宣言する必要はありません。次のこともできます。

$message;
于 2013-12-12T09:37:04.670 に答える