使用jquery ajax更新数据库;不起作用
Updating database with jquery ajax doesn't work
当用户单击或离开输入字段时,我会尝试更新数据库字段。为此,我使用了jquery $.post
函数。这是我的jquery函数:
$('.ajadd').click(function(){ //.ajadd is the class of the input field
var dbfield=addtitle;
var fieldval='check';
var post_txt='additional.php?dbfield='+dbfield+'&fieldval='+fieldval;
$.post(post_txt,function(data){
alert(data);
});
});
我在additional.php
文件中处理请求,如下所示:
if(isset($_POST['fieldval'])){
$fieldname=$_POST['dbfield'];
$fieldvalue=$_POST['fieldval'];
$a=new mysqli('localhost','root','','mydbname');
$query="UPDATE mydbtable SET $fieldname=' $fieldvalue' WHERE id=1";
$res=$a->query($query);
echo 'update complete';
}
我简化了代码,这样你就可以找到问题所在了。我知道我没有处理用于SQL注入的$_POST
数组,这不是我现在想要的。我只是想知道为什么这个代码不起作用。
另外一点:我检查了数据库连接,它运行良好。我在if语句外检查了查询,它正在工作。在我的php文件中,我回显了"更新完成",在$.post回调函数中,我提醒了返回数据,但它显示了一个空的消息框。这对我来说意味着php文件被成功执行,但我不知道为什么我最终会得到一个空的回调函数messagebox。请帮忙。
$('.ajadd').change(function(){ //use change instead of click
var dbfield=addtitle;
var fieldval='check';
var post_txt='additional.php';
// you also need to pass data separately instead of query string
$.post(post_txt, { dbfield : dbfield , fieldval : fieldval} ,function(data){
alert(data);
});
});
您实际发送的是GET
而不是POST
。因此,以这种方式更改您的代码:
var post_txt = 'additional.php';
$.post(post_txt, {
'dbfield': dbfield,
'fieldval': fieldval
}, function(data) {
alert(data);
});
现在,数据将作为POST
而不是GET
发送。
根据我的说法,,你做错了两件事
首先,使用点击事件作为文本框,我想您正在寻找focusout
。像…一样使用它。。
$("input").focusout(function(){
//CODE HERE
});
在ajax中,您在url参数中发送数据,并使用POST进行访问。将其更改为get。
相关文章:
- Jquery(多读/少读)在从数据库加载整个数据后不起作用
- Phonegap (Android) - 数据库更改版本不起作用
- 使用jquery ajax更新数据库;不起作用
- 为什么除了数据库(WebSQL)之外,其他数据库名称在android中不起作用
- 索引数据库:删除功能不起作用
- 数据库操作后,Ajax 功能不起作用
- 从 Meteor 服务器插入到数据库不起作用
- i'我试图使用javascript ajax函数绑定数据库中的数据,但没有;不起作用
- 参数化的select查询在使用sqlite数据库的angular js中不起作用
- 数据库连接在ajax调用中不起作用-laravel
- 从数据库mysql中检索数据不起作用
- Postgre使用Ajax函数在带有复选框的数据库中进行多记录删除查询,不会返回任何结果;不起作用
- PHP Mysql Insert Into不起作用,没有错误,没有数据发布到数据库,早些时候同一页面也起作用
- AJAX PHP数据库查询不起作用
- 当我从数据库中检索值时,为什么Parse中的链式函数不起作用
- Ajax从数据库中删除数据的功能不起作用
- onclick提交上的数据库更新字段不起作用
- 数据库语句在googlechrome中不起作用
- 谷歌地图标记在数据库中不起作用
- Wordpress ajax主题.Ajax不起作用.数据库中的表中没有新数据