0

さて、私は混乱して迷子になり、自分が何をしているのかわかりません。基本的に、ここに私のコードがあります。

HTML / JavaScript

<img src="Images/Question1.png" usemap="#mainMap" id="main"/>
 <map name="mainMap" id="mainMap">
  <area shape="rect" coords="82,192,196,242" onclick="incorrectAnswer()" />
 </map
        function incorrectAnswer() {
        document.getElementById("incorrectVid").style.display="block";
        document.getElementById("incorrectVid").play();
        document.getElementById("answer_id").value=id;
        document.forms["answer_send"].submit();
    }

<form id="answer_send" name="answer_send" action="answersend.php" method="POST">
    <input type="hidden" id="answer_id" name="answer_id" value="10"/>
    <input type="submit" value="Submit" />
</form>

PHP

$id=$_POST['answer_id'];
echo $id

なぜこれがアイデア/ヘルプを機能させないのか分かりませんか?

4

2 に答える 2

2

GET / POSTを介して送信された値を取得するには、入力フィールドにnameプロパティを割り当てる必要があります。以下をお試しください:

HTMLとJS

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <script>
            function incorrectAnswer() {
                document.forms["answer_send"].submit();
            }
        </script>
    </head>
    <body>
        <img src="none.jpg" alt="placeholder" width="200" height="200" onClick="incorrectAnswer();">
        <form id="answer_send" name="answer_send" action="form.php" method="POST">
            <input type="hidden" id="answer_id" name="answer_id" value="10"/>
        </form>
    </body>
</html>

PHP

<?php
    $id=$_POST['answer_id'];
    echo $id;
?>

注:AREA要素は、何かに割り当てない限り機能しません。JavaScript関数はタグ内にある必要があります。そうでない場合、エラーが発生します。これのHTML/PHP部分は正常に機能しています...次の3行が原因でこれらの問題が発生しています...

document.getElementById("incorrectVid").style.display="block";
document.getElementById("incorrectVid").play();
document.getElementById("answer_id").value=id;
于 2012-12-10T11:06:32.433 に答える
0

あなたの名前属性はどこですか?

すべての入力には、php でそれを取得するための name 属性が必要であり、html コードは次のようになっている必要があります。

<form id="answer_send" name="answer_send" action="answersend.php" method="POST">
<input type="hidden" id="answer_id" name="answer_id" value="10"/> </form>
于 2012-12-10T11:09:45.087 に答える