0

トラベルガイドを作っています。データベース(mysql)からのデータ(アクティビティ)を表示しています。各アクティビティには独自のボタンがあります。このボタンを押すと、その特定のアクティビティがトラベルガイドに追加されます。これはすべて機能しますが、ガイドに追加されたアクティビティを表示するには、ページを更新する必要があります。これで、動作するjavascriptスクリプトを作成しましたが、動的ではありません。

function MakeRequest()
{
    var test = 1;
    var xmlHttp = getXMLHttp();

    xmlHttp.onreadystatechange = function()
    {
        if(xmlHttp.readyState == 4)
        {
            HandleResponse(xmlHttp.responseText);
        }
    }
    xmlHttp.open("GET", "get_test.php?q="+test, true); 

    xmlHttp.send(null);
}

de変数が表示されます: "var test = 1;" 数字の1はActivityID1を表します。したがって、ボタンを押すと、ActivityID = 1のアクティビティが表示されます。数字を2に変更すると、ActivityID=2のアクティビティが表示されます。

変数を変更したい: "var test = 1;" 番号は自動的に挿入される必要があります。ボタンを押すアクティビティのActivityIDと同じ番号である必要があります。

<?php
$sql = "SELECT * FROM activity";
$stm = $db->prepare($sql);
$result = $stm->execute(array());

while($row = $stm->fetch(PDO::FETCH_ASSOC))
{
    echo '<div id="activity'.$row['ActivityID'].'">';
    echo '<img src="data:image/jpeg;base64,' . base64_encode( $row['ActivityIMG'] ) . '" >', '<br>';
    //echo $row['Activityname'], '<br>';
    //echo $row['Activitydescription'];
    echo '<input type="button" class="addActivity" onclick="MakeRequest();" value="Activiteit toevoegen" data-activity="' . $row['ActivityID'] . '">';
    echo '</div>';
}
?>

これはphpファイルです:"get_activity"。これは、ボタンを表示してデータを表示するコードです。このボタンは、特定のアクティビティからActivityIDを自動的に取得します。このように、すべてのアクティビティに必要なスクリプトは1つだけです。javascriptでも同じことをしたいのですが、方法がわかりません。

4

1 に答える 1

0

私が理解しているなら、あなたが押したボタンに応じて、vartestに正しいIDを与えたいと思います。js関数にパラメータを渡してみませんか?

  function MakeRequest(test){
       ...............
 }


   $test = $row['id'];//your id field 
   <input type="button" class="addActivity" onclick="MakeRequest(<?=$test?>);" value="Activiteit toevoegen" data-activity="' . $row['ActivityID'] . '">
于 2013-01-19T14:41:54.850 に答える