1

我想在检查某些数据是否存储在数据库中后弹出一个警告框。如果存储,它会提示已保存,否则不保存。

这是我的 ajax 函数:

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

但现在它显示 AjaxRequest 未定义。

我怎样才能解决这个问题?

4

7 回答 7

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 回答
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 回答
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 回答
0

您可以使用上次更新数据库的日期(时间)创建一个附加表,并检查此日期是否较晚。您可以使用标准setInterval功能。

于 2012-09-02T07:23:48.517 回答
0

这可以使用 ajax。使用 jQuery.ajax/pos/get 调用保存数据的 php 脚本,或者只是检查数据是否以前保存过(取决于您确切需要它的方式),然后使用成功/失败回调来处理其响应并显示如果您得到正确的响应,请发出警报。

于 2012-09-02T07:25:00.030 回答
0

使用ajax调用脚本并通过脚本检查数据库中的值。如果数据存在回显成功,否则不会。让我们看一个例子。

假设数据库名 = db

假设表名 = tb

假设 tableColumn = data

假设服务器 = 本地主机

阿贾克斯:

$.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 ";
   }

?>

编辑: 您还必须包含 jquery 文件才能发出这种类型的 ajax 请求。在您的 ajax 调用页面顶部包含此文件。

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

首先,决定是使用 POST 还是 GET(我推荐 POST)来传递 AJAX 数据。制作一个 php 文件(ajax.php),使其回显truefalse检查某些数据是否存储在数据库中。您可以使用内部包含数据的变量$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 回答