我想检查一些数据是否存储在数据库中后弹出一个警告框。如果存储,它将提醒保存,否则不保存。
这是我的ajax功能:
AjaxRequest.POST(
{
'url':'GroupsHandler.php'
,'onSuccess':function(creategroupajax){ alert('Saved!'); }
,'onError':function(creategroupajax){ alert('not saved');}
}
);
但现在它显示AjaxRequest未定义。
我该如何解决这个问题?
答案 0 :(得分: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;
?>
答案 1 :(得分: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");
}
答案 2 :(得分:0)
您可以使用上次更新数据库的日期(时间)创建一个附加表,并检查此日期是否更晚。您可以使用标准setInterval
功能。
答案 3 :(得分:0)
这可以使用ajax。使用jQuery.ajax / pos / get来调用保存数据的php脚本,或者只是检查数据是否先前保存(取决于你究竟是如何需要它)然后使用succes / failure回调来处理它的响应并显示一个如果你得到正确答案,请提醒。
答案 4 :(得分:0)
使用ajax调用脚本并通过脚本检查数据库中的值。如果 数据呈现回声成功,否则not.lets看起来就是一个例子。
假设databasename = db
假设tablename = tb
假设tableColumn = data
假设server = localhost
的Ajax:
$.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>
答案 5 :(得分: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>');
}
});
答案 6 :(得分:0)
首先,决定是使用POST还是GET(我建议使用POST)来传递AJAX数据。在检查某些数据是否存储在数据库中之后,创建一个php文件(ajax.php),使其回显true
或false
。您可以使用内置数据的变量$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 Tutorial, Example: Simplify Ajax development with jQuery。