【发布时间】:2012-03-30 11:28:29
【问题描述】:
我在这方面遇到了一点麻烦,看不出我做错了什么。我有这个表格:
<div class="user">
<form name="userDetails" id="userDetails" method="post" >
<input type="text" name="firstName" id="firstName" class="firstName" placeholder="first name " />
<input type="text" name="lastName" id="lastName" class="lastName" placeholder="last name " />
<input type="text" name="address" id="address" class="address" placeholder="First line of Address " />
<input type="text" name="postcode" id="postcode" class="postcode" placeholder="Postcode " />
<input type="text" name="email" id="email" class="email" placeholder="E-Mail " />
<input type="text" name="phone" id="phone" class="phone" placeholder="Phone " />
<input type="button" id="submitDetails" class="submitDetails" name="submitDetails" value="Submit Your Details" />
</form>
</div>
因此,当用户单击按钮时,它应该提交表单,然后让这个 PHP 对表单进行操作(我知道 sql 不是准备好的语句并且容易受到注入,但这将在稍后完成):
<div class="overallSummary">
<?php
$fName = $_POST['firstName'];
$lName = $_POST['lastName'];
$address = $_POST['address'];
$pc = $_POST['postcode'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$userSQL = "INSERT INTO user (forename, surname, address, postcode, email, phone) VALUES ('$fName', '$lName', '$address', '$pc', '$email', '$phone')";
$result = mysql_query($userSQL) or die(mysql_error());
?>
</div>
但是,当我检查我的表时,没有信息被插入到数据库中。请记住,这段代码都在同一个文档中,因此我没有在表单声明中使用 action="file.type" 。这是因为我不确定 ajax 在这里是否合适。
非常感谢任何帮助,谢谢。
编辑
我可以做的是使用 ajax 和 jQuery 来监听按钮点击事件:
$(document).ready(function() {
$(".submitDetails").click(function(e) {
e.preventDefault();
var userData = $("#?").val();
var dataToSend = '?=' + eNameData;
$.ajax({
url: "userDetailTest.php",
type: "POST",
data: dataToSend,
cache: false,
success: function(php_output)
{
$(".overallSummary").html(php_output);
}
});
});
});
这里的想法是在单击按钮时使用此 ajax 并调用 ajax 函数,但我不确定将什么作为 ID 放入变量“userData”以及将什么添加到“dataToSend”变量中让它与我的表单一起使用。
【问题讨论】:
-
表单中没有操作属性
-
我已在我的问题中指定了这一点。