【发布时间】:2016-03-25 17:21:17
【问题描述】:
我正在尝试使用 PHP 和 Ajax 提交表单。但问题是有时它会插入一个值,有时是 2,有时是全部,而现在它什么也没插入。为什么会这样?我该如何纠正?
这是我的代码: Ajax
$(document).ready(function(){
$("button").click(function(){
$.ajax({
url: "submitform.php",
type: "POST",
data: $("form").serialize(),
success: function(data){
alert("well");
},
error: function(){
alert("Error");
}
});
});
});
HTML
<form id="signupform" name="form1" method="post" enctype="multipart/form-data">
<table>
<tr>
<td><input type="text" name="name" placeholder="Enter your name" required /></td>
<td rowspan="3"><div class="propic"><img id="imgid" src="images/dp.png" /></div>
<input id="imgInput" type="file" name="image"/></td>
</tr>
<tr>
<td><input type="text" name="username" placeholder="Enter username" required /></td>
</tr>
<tr>
<td><input id="digits" type="text" name="phone" maxlength="10" placeholder="Enter your phone no." required /></td>
</tr>
<tr>
<td><input type="password" name="password" maxlength="12" placeholder="Enter password" required /></td>
<td><input id="button" type="submit" name="submit" value="Sign Up" /></td>
</tr>
</table>
</form>
PHP
<?php
$conn=mysqli_connect("localhost", "root", "", "winkcage");
//$im=$_SESSION["pathsession"];
$nam=""; $usernam=""; $phon=""; $pass="";
$nam=$_POST["name"];
$usernam=$_POST["username"];
$phon=$_POST["phone"];
$pass=$_POST["password"];
$signquery="INSERT INTO signup(name, username, phone, password) VALUES('$nam', '$usernam', '$phon', '$pass')";
$signqueryrun=mysqli_query($conn, $signquery);
?>
注意:我现在不想插入图像值。待此问题解决后,我将插入它。
【问题讨论】:
-
你能显示
var_dump的$_POST吗? -
我猜这个 PHP 文件现在没有执行。所以我现在无法检查。
-
从检查元素中检查 ajax 是否命中指定的 url 或 ajax 调用时是否为 404?
-
Ajax 正在工作,因为 Inspect 元素中没有错误。
-
如果浏览器发出请求,请检查浏览器开发工具的网络选项卡。
标签: javascript php ajax