1

データベースにデータが保存されているかどうかを確認した後、警告ボックスをポップアップ表示したいと考えています。保存されている場合はアラートが保存され、そうでない場合は保存されません。

これは私のajax関数です:

      AjaxRequest.POST(
              {
                'url':'GroupsHandler.php'
                ,'onSuccess':function(creategroupajax){ alert('Saved!'); }
                ,'onError':function(creategroupajax){ alert('not saved');}
              }
            );

しかし、今では AjaxRequest が未定義であることを示しています。

どうすればこれを修正できますか?

4

7 に答える 7

1
function Ajax(data_location){
    var xml;
    try { 
        xml = new XMLHttpRequest();
    } catch (err){
        try { 
            xml = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (error){
            try {
                xml = new ActiveXObject("Microsoft.XMLHTTP");   
            } catch (error1){
                //
            }

        }
    }
    xml.onreadystatechange = function(){
        if(xml.readyState == 4 && xml.status == 200){
            alert("data available");
        }
    }
    xml.open("GET", data_location, true);
    xml.send(null);

}


window.onload = function(){
    Ajax("data_file_location");
}
于 2012-09-02T11:20:29.857 に答える
1

もちろん、これはAjaxを使用して可能です。

以下のサンプル コードを検討してください。

Ajax call : 

$.ajax({
  url: 'ajax/example.php',
  success: function(data) {
    if(data == "success")
      alert('Data saved.');
  }
});

example.php のコード

<?php 
           $bool_is_data_saved = false;
          #Database processing logic here i.e
          #$bool_is_data_saved is set here in the database processing logic
          if($bool_is_data_saved) {
             echo "success";
          }
     exit;  
?>
于 2012-09-02T07:25:09.627 に答える
0

まず、AJAXデータを渡すためにPOSTまたはGET(POSTをお勧めします)のどちらを使用するかを決定します。trueエコーするように、またはfalse一部のデータがデータベースに保存されているかどうかを確認した後に、phpファイル(ajax.php)を作成します。内部にデータを含む変数$your_variable = "some_data_to_check";を使用してテストし、終了したら、それを。に置き換えることができます$your_variable = $_POST["ajaxdata"];

次に、ページで、次のようなjQueryプラグインを使用してAJAXを設定します。

var your_data_variable = "data_to_send";
$.ajax({
  type: "POST",
  url: "ajax.php",
  data: 'ajaxdata=' + your_data_variable,
  success: function(result){
    if(result == "true"){
      alert("saved");
    }else{
      alert("not saved");
    }
}

jQuery AJAXチュートリアル、例:jQueryを使用してAjax開発を簡素化するをご覧ください。

于 2012-09-02T08:24:39.337 に答える
0

最終更新データベースの日付 (時刻) を使用して追加のテーブルを作成し、この日付が後であるかどうかを確認できます。標準setInterval機能を使用できます。

于 2012-09-02T07:23:48.517 に答える
0

これは ajax を使用して可能です。jQuery.ajax/pos/get を使用して、データを保存する php スクリプトを呼び出すか、データが以前に保存されたかどうかを確認するだけで (必要な方法によって異なります)、成功/失敗のコールバックを使用して応答を処理し、正しい応答が得られた場合に警告します。

于 2012-09-02T07:25:00.030 に答える
0

ajax を使用してスクリプトを呼び出し、スクリプトを介してデータベース内の値を確認します。データが存在する場合は成功がエコーされ、それ以外の場合はそうではありません。その例を見てみましょう。

databasename = db と仮定

tablename = tb と仮定

tableColumn = データと仮定

サーバー= localhostと仮定

アヤックス:

$.ajax({
  url: 'GroupsHandler.php',
  success:function(data){
     if(data=="saved")
     {
          alert("success");
     }
  }
});

今 myphpscript.php で:

<?php


    $Query = "select data from table";

    $con = mysql_connect("localhost","user","pwd");     //connect to server
    mysql_select_db("db", $con);                        //select the appropriate database
    $data=mysql_query($Query);                         //process query and retrieve data
    mysql_close($con);                                //close connection


   if(!$empty(mysql_fetch_array($data))
   {
      echo "saved";  
   }
   else
   {
      echo " not saved ";
   }

?>

編集: このタイプの ajax 要求を作成するには、jquery ファイルも含める必要があります。これを ajax 呼び出しページの上部に含めます。

<script src='ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js' type='text/javascript'></script>
于 2012-09-02T07:48:58.030 に答える
0

以下のコードは jQuery に基づいています。

それを試してみてください

    $.ajax({
      type: 'POST',
      url: 'http://kyleschaeffer.com/feed/',
data: { postVar1: 'theValue1', postVar2: 'theValue2' },
      beforeSend:function(){
        // this is where we append a loading image
        $('#ajax-panel').html('<div class="loading"><img src="/images/loading.gif" alt="Loading..." /></div>');
      },
      success:function(data){
        // successful request; do something with the data
        $('#ajax-panel').empty();
        $(data).find('item').each(function(i){
          $('#ajax-panel').append('<h4>' + $(this).find('title').text() + '</h4><p>' + $(this).find('link').text() + '</p>');
        });
      },
      error:function(){
        // failed request; give feedback to user
        $('#ajax-panel').html('<p class="error"><strong>Oops!</strong> Try that again in a few moments.</p>');
      }
    });
于 2012-09-02T08:13:10.183 に答える