我尝试使用带有多输入数据的AJAX INSERT INTO
到Database
,但是当我发送多个Input
数据时,我遇到了一些问题。我错过了什么吗?
这个 JS 文件
的 JAVASCRIPT
function ajaxSaveTitle() {
'use strict';
var vTitle = document.getElementById('inputTitle').value;
var vPrice = document.getElementById('inputPrice').value;
var vTitlev = "vTitlev=" + vTitle;
var vPricev = "vPricev=" + vPrice;
var tXhr = new XMLHttpRequest();
tXhr.onreadystatechange = function() {
if(this.readyState == 4 && this.status == 200) {
document.getElementById('linputTitle').innerHTML = this.responseText;
}
};
tXhr.open("POST","uploadfile.php","true");
tXhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
tXhr.send(vTitlev,vPricev);}
这是PHP
档案
的 PHP
<?php
session_start();
include_once('connect.php');
$currID = $_SESSION['user_id'][0];
if(!empty($_POST['vTitlev']) && !empty($_POST['vPricev'])) {
$fileTitle = $_POST['vTitlev'];
$fileTitle = stripslashes($fileTitle);
$fileTitle = mysqli_real_escape_string($con, $fileTitle);
$filePrice = $_POST['vPricev'];
$filePrice = stripslashes($filePrice);
$filePrice = mysqli_real_escape_string($con, $filePrice);
$qfileTitle = "INSERT INTO file (usr_ID, fileName, prc) VALUES
('$currID','$fileTitle','$filePrice')";
if(mysqli_query($con, $qfileTitle)) {
echo "Berhasil di Simpan";
} else {
echo("Error description: " . mysqli_error($con));
};
mysqli_close($con);}
?>
答案 0 :(得分:1)
您必须使用&
更改您的发送代码
tXhr.send(vTitlev,vPricev);}
到
tXhr.send(vTitlev+"&"+vPricev);}
答案 1 :(得分:1)
你应该使用这样的发送:
tXhr.send(vTitlev+'&'+vPricev);
它接受一个字符串作为参数:https://www.w3schools.com/xml/ajax_xmlhttprequest_send.asp
答案 2 :(得分:1)
如果是发布请求,您的数据应与“&amp;”绑定。逗号无效,因为send只接受一个参数。
看看这个https://www.w3schools.com/xml/ajax_xmlhttprequest_send.asp
数据应该是这样的
xhttp.send("fname=Henry&lname=Ford");
不是这个
xhttp.send("fname=Henry,lname=Ford");