【发布时间】:2016-10-31 19:19:53
【问题描述】:
我试图通过 Ajax 请求将输入中的数据插入到 SQL 表中。
Ajax 请求本身似乎可以工作,但在将新行插入 SQL 表之前它没有获取输入值:确实添加了新行,但所有其他值都设置为默认值,除了时间和正确的日期。
我找了很多教程来检查我是否正确地编写了我的 Ajax 函数,但我发现的只是 jQuery Ajax 教程,所以我真的不知道我在这里做错了什么。
HTML:
<form method="POST">
value1: <input type="text" name="value1" maxlength="4"> <br>
value2: <input type="text" name="value2" maxlength="4"> <br>
value3: <input type="text" name="value3" maxlength="4"> <br>
</form>
<button onclick="send_ajax()"> Send</button>
Ajax 函数:
function send_ajax() {
console.log('function clicked');
if (window.XMLHttpRequest) {
//code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
}
else {
//code for IE6, IE5
xmlhttp = new ActiveXObject('Microsoft.XMLHTTP');
}
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
console.log('data sent');
}
}
xmlhttp.open('POST', 'filled_inputs_test.php', true);
xmlhttp.send();
}
知道我做错了什么吗?
注意:考虑到我的 php 文件在通过提交按钮调用而不使用 Ajax 时可以正常工作,我认为问题来自 Ajax 在调用 php 文件之前没有获取我的输入值。
php代码比较长,我没有添加,如果需要查看请告诉我
【问题讨论】:
标签: javascript php mysql ajax