0

PHP を使用するだけでなく、PHP と Ajax を使用してテーブルを動的に更新するフォームを作成しようとしています。フォームはすべて正常に機能しますが、Ajax のものを実装する方法がわかりません。私の問題に関連する手や有用な情報を私に与えることができれば、それは素晴らしいことです.

PHPファイル: item.php?item=スタッフ

<input type="submit" name="submit"  onClick="UpdateRecord('Staff');" value="Unquip" />

Javasript コード:

<script type="text/javascript">
function UpdateRecord(item)
  {
      jQuery.ajax({
       type: "POST",
       url: "item.php",
       data: 'item='+item,
       cache: false,
       success: function(response)
       {
         alert("Record successfully updated");
       }
     });
 }
    </script>

私はまだ確かに重要な何かを見逃しています。

ありがとうございました

4

4 に答える 4

1

クライアントに送信したい場合は、通常は JQuery を使用します。

$.ajax({
    type:'POST',
    url: 'JQuery.php',
    data: 'Action=foo&val=' + variable ),
    async: true,
    success: function(msg){ do something }
})

JavaScript関数に入れて、コールバックループまたはタイマーを作成します

t=setTimeout("yourfunction( )",60000);

なので随時更新します。また、サーバーにリクエストを送信するように設定することもできます。大きなタイムアウトがあります。タイムアウト中に何かが発生した場合、サーバーは応答します。

また、このスクリプトはクライアント側で実行する必要があります。これは、サーバーがクライアント ブラウザーからリクエスト/ポストを開始できないためです。

いくつかのページをリクエストする場合は、サーバー側で要約してから、CURL .

于 2013-07-22T11:09:46.383 に答える
1

あなたはすでに jQuery を使用しているようですが、おそらく呼び出しが行われたことを通知するアラートを受け取っているのでしょうか?

その場合、テーブルを更新するためのいくつかの異なるオプションがあります。

1: テーブル全体を更新する

これは PHP を使用して行うことができます (実際にはお勧めしませんが、ビューからロジックを分離することで HTML を生成します)。ただし、既にテンプレートを使用している場合は実行可能なオプションです。

2: テーブルに必要なすべての情報を含むオブジェクトを返す

次に、Javascript/jQuery を使用してこの情報を処理し、最新の情報でテーブルを再入力または更新します。使用可能な ID を行とセルに追加しておくと、これをより簡単に行うことができます。これにより、テーブルの特定の部分を明確にターゲットにしてそれらを更新できます。

3 Javascript を使用してテーブル全体を再構築する

これは #2 よりも簡単ですが、再描画のため、クライアントでより多くの時間がかかります。特に、テーブルに大量の行が含まれている場合は、すべて再構築/再計算する必要があります。

id="item-3214325643"行 ( ) を定義するために使用し<tr>、Javascript を PHP の結果 (入力を処理した後に更新された結果を単に含む必要があります) に実行させて、テーブルを最新の状態に保つ#2 を行うことを検討することをお勧めします。

これがお役に立てば幸いです。具体的なアドバイスが必要な場合は、遠慮なく私に連絡してください :-) または別のより具体的な質問を再開してください。

于 2013-07-22T13:12:43.990 に答える
0
This is jquery ajax easy to implement ajax.


$.ajax({
  type: "POST",
  url: "item.php",
  data: { name: "John", location: "Boston" }
}).done(function( msg ) {
  alert( "Data Saved: " + msg );
});

and in item.php take value as $_POST name or location and all the data you need to and 
update as you want. like
if(isset($_POST['name']))
{
// write code that you want,
}

必要に応じてデータを GET または POST として送信できます。

于 2013-07-22T11:14:44.760 に答える