1

PHP と Javascript/jQuery で構築された小さな Web アプリがあります。

このアプリには乱数ジェネレーターが含まれており、乱数発生器が 4 番に当たると、ユーザーが勝ちます。

ただし、賞金はデータベースから取得され、1 日 5 回の賞金が獲得されます。ユーザーは勝つことができません。

ユーザーが当選すると、ユーザーがフォームに記入して賞品を請求するまで、賞品は「キューに入れられた」として更新されます。その後、利用可能な賞品から取り出されます。

ユーザーがアプリを更新すると、これはすべて正常に機能します。ただし、ユーザーがアプリのプレイを開始し、別のユーザーが勝った場合、PHP がサーバー側であるため、アプリが更新されない限り、アプリは更新されません。

私はJavaScript関数OnStartを持っています。したがって、ここで SQL クエリを実行できれば、ユーザーがサイコロを投げるたびに発生します。

jquery関数からphpステートメントを実行するにはどうすればよいですか?

ここで役立つ場合は、次のステートメントです。

$result = mysql_query("SELECT * FROM prizes WHERE dateavailable='$todayDate' AND queue='0' AND won='0' ORDER BY id ASC LIMIT 1");

while($row = mysql_fetch_array($result))

{   
    $prize = $row['prize'];
}

ありがとう

編集:

したがって、別のファイルのphpでこのようなものを使用できますか。

<script type="text/javascript">
  function performAjaxSubmission() {
    $.ajax({
      url: 'file.php',
      method: 'POST',
      data: {
        action: 'save',
        arg1: 'val1',
        arg2: 'val2'
      },
      success: function() {
        alert("success!");
      }
    });
    return false; // <--- important, prevents the link's href (hash in this example) from executing.
  }

  jQuery(document).ready(function() {
    $("#linkToClick").click(performAjaxSubmission);
  });
</script>
4

2 に答える 2

0

AJAX を使用する必要があります。jQuery には、AJAX を操作するための使いやすい関数がいくつか含まれています。

使い方は簡単です。docs.jquery.comでそれについて読むことができます。

js スクリプトに配列を渡したい場合は、JSON 関数を探します ( $.getJSONjQuery では、PHPではjson_decode/ )。json_encode

于 2012-04-24T13:33:02.153 に答える
0

投稿したコードを php ファイルに保存して、 と呼びましょうprizes_available.php。このファイルは、賞品が利用可能かどうかも出力する必要があるため、結果オブジェクトを作成して値を割り当てます。

$result = new stdclass();
$result->prizes_available = $prize != null;
echo json_encode($result);

このスクリプトをブラウザで呼び出すと、次のように出力されます。

{ prizess_available: true }

jQuery を使用すると、この文字列を再びオブジェクトに簡単に変換できます。

$.getJSON('prizes_available.php', function(result)  {
    if (!result.prizes_available) {
        alert('no more prizes');
    }
});
于 2012-04-24T13:39:29.653 に答える