php 送信されたフォームについて
送信されたフォームの受け取る側のソースを書いたのですが、
<?php
$i = 0;
if(print(htmlspecialchars($_POST['kaitouran31'], ENT_QUOTES, 'UTF-8')) == 'a')
$i++;
if(print(htmlspecialchars($_POST['kaitouran31'], ENT_QUOTES, 'UTF-8')) == 'a')
$i++;
if(print(htmlspecialchars($_POST['kaitouran31'], ENT_QUOTES, 'UTF-8')) == 'a')
$i++;
if(print(htmlspecialchars($_POST['kaitouran31'], ENT_QUOTES, 'UTF-8')) == 'a')
$i++;
print('正解数'.$i./4'です');
?>
を付け加えるとエラーが表示されます。エラーの対象になっているのは
print('正解数'.$i./4'です');らしいのですが、なぜエラーになるのかわかりません
回答お願いします。
以下ソースです。
<html>
<head>
<title>解答</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<style type=""text/css"">
#container{
width:1000
}
#main{
width:500px;
float:right;
}
#sidebar{
width:500px;
float:left;
}
</style>
</head>
<body>
<div id="container">
<div id="main">
<p>問題の解答</p>
<p>問1</p>
<p>(1)(2)(3)(4)</p>
<p>問2</p>
<p>(1)(2)(3)(4)</p>
<p>問2</p>
<p>(1)(2)(3)(4)</p>
</div>
<div id="sidebar">
<p><>あなたの解答<></p>
<p>問1</p>
<p>(1)<?php print(htmlspecialchars($_POST['kaitouran11'], ENT_QUOTES, 'UTF-8')); ?>
(2)<?php print(htmlspecialchars($_POST['kaitouran12'], ENT_QUOTES, 'UTF-8')); ?>
(3)<?php print(htmlspecialchars($_POST['kaitouran13'], ENT_QUOTES, 'UTF-8')); ?>
(4)<?php print(htmlspecialchars($_POST['kaitouran14'], ENT_QUOTES, 'UTF-8')); ?>
</p>
<p>問2</p>
<p>(1)<?php print(htmlspecialchars($_POST['kaitouran21'], ENT_QUOTES, 'UTF-8')); ?>
(2)<?php print(htmlspecialchars($_POST['kaitouran22'], ENT_QUOTES, 'UTF-8')); ?>
(3)<?php print(htmlspecialchars($_POST['kaitouran23'], ENT_QUOTES, 'UTF-8')); ?>
(4)<?php print(htmlspecialchars($_POST['kaitouran24'], ENT_QUOTES, 'UTF-8')); ?>
</p>
<p>問3</p>
<p>(1)<?php print(htmlspecialchars($_POST['kaitouran31'], ENT_QUOTES, 'UTF-8')); ?>
(2)<?php print(htmlspecialchars($_POST['kaitouran32'], ENT_QUOTES, 'UTF-8')); ?>
(3)<?php print(htmlspecialchars($_POST['kaitouran33'], ENT_QUOTES, 'UTF-8')); ?>
(4)<?php print(htmlspecialchars($_POST['kaitouran34'], ENT_QUOTES, 'UTF-8')); ?>
</p>
</div>
</div>
<?php
$i = 0;
if(print(htmlspecialchars($_POST['kaitouran31'], ENT_QUOTES, 'UTF-8')) == 'a')
$i++;
if(print(htmlspecialchars($_POST['kaitouran31'], ENT_QUOTES, 'UTF-8')) == 'a')
$i++;
if(print(htmlspecialchars($_POST['kaitouran31'], ENT_QUOTES, 'UTF-8')) == 'a')
$i++;
if(print(htmlspecialchars($_POST['kaitouran31'], ENT_QUOTES, 'UTF-8')) == 'a')
$i++;
print('正解数'.$i./4'です');
?>
</body>
</html>
お礼
ありがとうございます。
補足
https://okwave.jp/qa/q9880611.html#answers こちらのページのようにjsでフォームを作り 送信すると、 Warning: htmlspecialchars() expects parameter 1 to be string, array given in /hoge.php on line 26 と出ます。 array(1) { [0]=> string(5) "t7i6i" } array(1) { [0]=> string(11) "y9ぅおぉ" } array(5) { ["name"]=> array(1) { [0]=> string(0) "" } ["type"]=> array(1) { [0]=> string(0) "" } ["tmp_name"]=> array(1) { [0]=> string(0) "" } ["error"]=> array(1) { [0]=> int(4) } ["size"]=> array(1) { [0]=> int(0) } } こちらがvar_dump($_POST['title'],$_POST['desc'],$_FILES['file']) の結果です。 ちなみに、 フォームを増やした1つ目の$_POST['title']のように指定して受け取る場合はどのようにすればよいのでしょうか?