0

$_GET データを使用してページ間でデータを送信してきましたが、正常に動作しています。あるページにあるのはニュースです。各ニュース記事には固有の ID があります (このページは問題なく動作します)。各イベントの横にある [自分を追加] ボタンをクリックして、そのイベントの BBQ を企画するボランティアとして自分を追加できます。ただし、他のユーザーを BBQ に追加できる追加ボタンをクリックしようとしています。

$_GET データがページの読み込み時に何かを返すかどうかを確認しましたが、送信をクリックすると値が失われます。したがって、 isset($_POST['userselect']) 内で何かを返すかどうかを確認すると、値が失われます。

これが私のコードです:

$rosterID = $_GET["rosterid"];
$eventID = $_GET["eventid"];
//if i check to see if they gets work here, they do.

if (hasRole2($connection, "Admin") || hasRole2($connection, "Moderator") || hasRole2($connection, "BBQ Moderator")){
    $usernames[] = array();
    if ($stmt = $connection->prepare("SELECT id, uid from people")){
        $stmt->execute();
        $stmt->bind_result($id, $username);
        $stmt->store_result();

        $form = new jqmForm();
        $form->method('post');
        $sel = $form->add(new jqmSelect('userselect','userselect','<p align="center">Select User:</p>'), true);
        while ($stmt->fetch()){
            $usernames[] = array('uid' => $username, 'id' => $id);
            $optName = $username;
            $optValue = $id;
            $sel->add(new jqmOption($optName, $optValue, false));
            $sel->attribute('data-native-menu', 'false');
        }
        $stmt->close();
        $form->add(new jqmInput('submit', 'submit', 'submit', 'submit', '', 'b', true));
    }
    if (isset($_POST["userselect"])){
        //if i check to see if the gets work here, they don't.

        $personID = $_POST["userselect"];
        if (rostered($connection, $personID, $rosterID, $eventID)){
            $personID = $_POST["userselect"];
            $p->addContent("<p align=center><font color = red>You have already rostered for this event</font></p>");
            $login = $p->addContent("<font color=brown size=4><a href = news.php rel=external> Go back </a></font>");
            $login->attribute('align', 'center');
        }
        else{
            $search = "INSERT INTO RosterPeopleEvent (roster_id, person_id, news_id) VALUES (?, ?, ?)";
            if (!$roster = $connection->prepare($search)){
                $p->addContent("Inserting into RosterPeopleEvent Prepare failed: (" . $connection->errno . ") " . $connection->error);
            }
            else{
                $roster->bind_param("iii", $_GET["rosterid"], $personID, $_GET["eventid"]);
                $roster->execute();
            }
        }
    }
}
4

1 に答える 1

0

追加したばかり:

$form->action("url.php?rosterid=$rosterID&eventid=$eventID");

これはうまくいきました。

于 2013-11-08T03:13:25.603 に答える