Javascript Ajax调用-我需要一个Ajax调用,它将表数据发送到我的PHP查询
Javascript Ajax调用-我需要一个Ajax调用,它将表数据发送到我的PHP查询,javascript,php,mysql,ajax,Javascript,Php,Mysql,Ajax,$client\u number=$\u POST['client\u number']; $client\u name=$\u POST['client\u name']; $service=$_POST['service']; $size=$_POST['size']; $volume=$_POST['volume']; $deliver\u point=$\u POST['deliver\u point']; $port_orgin=$_POST['port_orgin']; $a_por
$client\u number=$\u POST['client\u number'];
$client\u name=$\u POST['client\u name'];
$service=$_POST['service'];
$size=$_POST['size'];
$volume=$_POST['volume'];
$deliver\u point=$\u POST['deliver\u point'];
$port_orgin=$_POST['port_orgin'];
$a_port_orgin=$_POST['a_port_orgin'];
$公路货运=$邮政['公路货运'];
$terms=$_POST['terms'];
$competitor=$_POST['competitor'];
$freight\u speed=$\u POST['freight\u speed'];
$report\u comments=$\u POST['report\u comments'];
$company_stage=$_POST['company_stage'];
$meeting_rating=$_POST['meeting_rating'];
$client\u user\u name=$\u POST['client\u user\u name'];
$client_user_status=$_POST['client_user_status'];
$client\u user\u kids=$\u POST['client\u user\u kids';
$client_user_habiods=$_POST['client_user_habiods'];
$client_user_comments=$_POST['client_user_comments'];
$query=“插入tobytemp.fcl\u报告(客户编号、客户名称、服务、大小、数量、交货点、港口组织、港口组织、公路货运、条款、竞争对手、货运速度、报告评论、公司阶段、会议评级、客户用户名称、客户用户状态、客户用户子女、客户用户爱好、客户用户评论)
值(“$client\u number.”、“$client\u name.”、“$service.”、“$size.”、“$volume.”、“$deliver\u point.”、“$port\u orgin.”、“$a\u port\u orgin.”、“$road\u freight.”、“$terms.”、“$competitor.”、“$freight\u speed.”、“$report\u comments.”、“$port\u comments.”、“$company company。“,”、“$client\u user\u kids.”、“$client\u user\u cabiods.”、“$client\u user\u comments.”);";
$result=$dbLink->query($query);
我建议您重新开始您的代码,这样您就可以更好地设计它,但一旦它已经太大了,而且我没有足够的时间,我将保留您的风格,并尝试帮助您:
首先,您需要知道您的PHP代码只处理INSERT
语句,因此,您需要为编辑(UPDATE
语句)和删除(DELETE
语句)执行另一个代码
您已经有了一个storeAdd
函数,因此我复制了它来创建databaseAdd
函数:
databaseAdd: function(entry) {
ajax('http://cmlsys/toby/fcl_form_upload.php', null, 'POST', entry);
},
然后,我们的ajax
助手:
function ajax(url, callback, method, params) {
if (!method) method = 'GET';
var xhr = new XMLHttpRequest();
xhr.open(method, url);
if (callback) xhr.addEventListener('load', function() {
callback.call(this, xhr);
});
if (params) {
params = Object.keys(params).map(function (key) {
return encodeURIComponent(key) + '=' + encodeURIComponent(params[key]);
}).join('&');
xhr.send(params);
}
else {
xhr.send();
}
}
因此,您将使用storeAdd
和tableAdd
函数的正下方:
if (entry.id == 0) { // add
fcl_form_data.storeAdd(entry);
// Adds data to table when pressed save - like a temp table above
fcl_form_data.tableAdd(entry);
fcl_form_data.databaseAdd(entry);
}
你试过ajax吗?显示你的Javascript代码。你不喜欢表单和常规帖子吗?@Buzinas添加了一段TY@JulioSoares我需要像这样的情况下,没有互联网连接。其他明智的Id只是简单地张贴到从一个表单到我的php。它将被用于一个电话差距的应用程序在最后。非常感谢你的帮助,我是否可以添加一个按钮,使其仅在单击时运行ajax?这样他们就可以在添加到mysql数据库@buzinasSo之前查看/查看表中的内容。我不能有2个按钮?1个保存到浏览器,1个上载(运行ajax)如果没有internet连接,它将保存到浏览器,而不是mysql数据库。因此,我需要一个提交按钮,以便在重新建立连接时发送。@rapidwaters这里是您的。我在事件中创建了一个新的网格按钮“保存到数据库”,并创建了另一个
else if
:else if(op==“database”){fcl_form_data.databaseAdd(entry);}。databaseAdd
code和ajax
函数与答案中的函数相同。我已经在这里进行了测试,它正在发送它应该发送的参数。id=5&client\u number=assassa&client\u name=asasasassa&service=&size=&volume=&deliver\u point=&port\u orgin=&a\u port\u orgin=&road\u运费=&terms=&competitor=&freight\u速度=&report\u comments=&company\u stage=2&client\u user\u name=12121&client\u user\u name\u status=已婚&client\u user\u name\u kids=2&client\u user\u业余爱好=asaa&client\u user\u comments=ASASASASASASAA1212121