※ ChatGPTを利用し、要約された質問です(原文:コードの何が間違っているのか分からない(PHP))
コードの間違い分からず(PHP)
このQ&Aのポイント
コードの何が間違っているのかよくわからない。 (check.php)のファイルで、 print'<input type="hidden" name="nickname" value="'$nickname.'">'; の行がsyntaxerrorとして、返されるがなぜそうなるのか分からない (マニュアル本に記述して、スペルミスもチェックしているのですが)
添付の画像のように名前、メールアドレス、ご意見を入力してもらう フォームをとして作りました(index.html) すべてのフォームに入力がされているかどうかチェックし、 (check.php) サンクスページを返すようにしました(thanks.php)
Windows8 XAMMP(ローカル開発環境)
●質問の主旨
コードの何が間違っているのかよくわからない。
(check.php)のファイルで、
print'<input type="hidden" name="nickname" value="'$nickname.'">';
の行がsyntaxerrorとして、返されるがなぜそうなるのか分からない
(マニュアル本に記述して、スペルミスもチェックしているのですが)
何かお気づきのかた、ご教示願います。
●質問の補足
添付の画像のように名前、メールアドレス、ご意見を入力してもらう
フォームをとして作りました(index.html)
すべてのフォームに入力がされているかどうかチェックし、
(check.php)
サンクスページを返すようにしました
(thanks.php)
●環境
Windows8
XAMMP(ローカル開発環境)
●コード
(index.html)
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>PHPの基礎</title>
</head>
<body>
<form method="post" action="check.php">
<p>あなたの名前を入力してください</p>
<input name="nickname" type="text" style="width:100px">
<p>メールアドレスを入力してください</p>
<input name="email" type="text" style="width:200px">
<p>ご意見をお聞かせください</p>
<input name="goiken" type="text" style="width:300px"><br/>
<input type="submit" value="送信">
</form>
</body>
</html>
(check.php)
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>PHPの基礎</title>
</head>
<body>
<?php
$nickname = $_POST['nickname'];
$email = $_POST['email'];
$goiken = $_POST['goiken'];
$nickname = htmlspecialchars($nickname);
$email = htmlspecialchars($email);
$goiken = htmlspecialchars($goiken);
if ($nickname == '') {
print '名前が入力されてません!<br/>';
} else {
print 'ようこそ!';
print $nickname;
print 'さま';
print '<br/>';
}
if ($email == '') {
print 'emailが入力されてません!<br/>';
} else {
print 'メールアドレス';
print $email;
print '<br/>';
}
if ($goiken == '') {
print 'ご意見が入力されてません!<br/>';
} else {
print 'ご意見';
print $goiken;
print '<br/>';
}
if($nickname == '' || $email == '' || $goiken == '') {
print'<form>';
print'<input type="button" onclick="history.back()" value="戻る">';
print'</form>';
} else {
print'<form method="post" action="thanks.php">';
print'<input type="hidden" name="nickname" value="'$nickname.'">';
print'<input type="hidden" name="email" value="'.$email.'">';
print'<input type="hidden" name="goiken" value="'.$goiken.'">';
print'<input type="button" onclick="history.back()" value="戻る">';
print'<input type="submit" value="OK!">';
print'</form>';
}
?>
</body>
</html>
(thanks.php)
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>PHPの基礎</title>
</head>
<body>
<?php
$nickname=$_POST['nickname'];
$email=$_POST['email'];
$goiken=$_POST['goiken'];
print 'ご意見ありがとうございました!';
print $nickname;
print '様<br/>';
print 'ご意見ありがとうございました<br/>';
print '頂いたご意見『';
print $goiken;
print '』<br/>';
print $email;
?>
</body>
</html>
お礼
bm_hiroさま ご回答ありがとうございます。 >「全角スペース」入ってますが、これのせいでは? これのせいでした。 全角スペースを消すと、 thanks.phpが、意図通りに動きました!!!