.ajaxForm将数据传递到php
.ajaxForm passing data to php
我很难使用ajaxForm将数据传递到我的PHP文件中,以便插入MySQL数据库。
下面是JavaScript函数,它目前在表单提交过程中显示进度条,问题是姓名、电话和电子邮件的"帖子"不起作用,但附件上传起作用。
$(function() {
var name = document.getElementById("name").value;
var phone = document.getElementById("phone").value;
var email = document.getElementById("email").value;
var percent = $('.percent');
var bar = $('.bar');
$('form').ajaxForm({
dataType: 'json',
data : {
name:name,
phone:phone,
email:email
},
beforeSend: function() {
document.getElementById("bar").style.backgroundColor="rgb(51,166,212)";
bar.width('0%');
percent.html('0%');
},
uploadProgress: function(event, position, total, percentComplete) {
var pVel = percentComplete + '%';
bar.width(pVel);
percent.html(pVel);
},
complete: function(data) {
document.getElementById("bar").style.backgroundColor="rgb(185,221,111)";
percent.html("Done!");
setTimeout(function(){
modal.style.display = 'none';
location.reload();
}, 2000);
}
});
});
以下是要将值传递到的PHP文件中的代码。
<?php
include("sql_connection.php");
$name = $_POST['name'];
$phone = $_POST['phone'];
$email = $_POST['email'];
$sql = "INSERT INTO helpdesk (Name, Phone, Email) VALUES ($name, $phone, $email)";
mysqli_query( $conn, $sql);
$dir = 'uploads/';
$count = 0;
if ($_SERVER['REQUEST_METHOD'] == 'POST' and isset($_FILES['files']))
{
foreach ( $_FILES['files']['name'] as $i => $name )
{
if ( !is_uploaded_file($_FILES['files']['tmp_name'][$i]) )
continue;
if( move_uploaded_file($_FILES["files"]["tmp_name"][$i], $dir . $name) )
$count++;
}
}
echo json_encode(array('count' => $count));
?>
有什么建议吗?
感谢
将SQL查询更改为:
$sql = "INSERT INTO helpdesk (Name, Phone, Email) VALUES ('".$name."', '".$phone."', '".$email."')";
否则,您需要在启动数据库连接的顶部更改include。
正如我在你的评论中所读到的,问题是输入可能不包含任何值。您何时启动Ajax请求?提交或页面加载后?
也许你可以在他应该获取信息的地方添加代码?
$.ajax 中缺少类型参数
$('form').ajaxForm({
type: 'POST',
dataType: 'json',
data : {'name':name,'phone':phone,'email':email},
......................................
感谢您的帮助,SQL查询实际上是错误的,但我还需要为每个变量使用一个函数,以便在发布之前返回其当前状态。
感谢
$('form').ajaxForm({
type: 'POST',
dataType: 'json',
data : {
name:function () {
return name = document.getElementById("name").value;
},
phone:function () {
return phone = document.getElementById("phone").value;
},
email:function () {
return email = document.getElementById("email").value;
}
},
相关文章:
- 如何使用Jquery一步一步地获取PHP数据
- 过滤包含一些文本的 PHP 数据表
- Ajax 使用函数每秒获取一次 php 数据
- Ajax表单不返回PHP数据
- AJAX和PHP数据传输不起作用
- AJAX:将PHP数据存储在Javascript变量中
- 可以通过更改下拉菜单中的选项来发送/接收PHP数据
- Ajax 模态窗口可以访问父窗口 PHP 数据吗?
- 如何在 JavaScript 变量中获取 PHP 数据
- ajax 调用 PHP 数据返回 VM92:1 未捕获语法错误:意外的标记 {.
- Javascript - 自动从数据库加载php数据
- 将 PHP 数据从mysql_fetch_array保存为脚本变量
- 将 php 数据表导出为 pdf 版本
- 将 PHP 数据发送到 JavaScript 单击事件
- 将PHP数据返回到我当前的网页,供Javascript访问
- 带有 PHP 数据闪烁更新的 Ajax
- 将引导模式与动态 PHP 数据重用
- 将 php 数据输出到 jquery 数组中
- 按日期更改 PHP 数据表中的行颜色
- 如何将会话 php 数据从 PHP 传输到 JS