我正在尝试将一个整数传递给php代码,然后将它存储到WAMP sql db中,但是我无法使其工作。
JS函数 - item是我想要存储的整数:
function storeData(item){
$.ajax({
url: 'insert.php',
type: 'POST',
data: {
'var1': item
},
success: function(results) {
console.log("success");
},
error: function(results){
console.log("error");
}
});
}
PHP文件:
<?php
$host = "localhost:3306";
$user = "root";
$pass = "";
$databaseName = "items";
$con = mysqli_connect($host,$user,$pass, $databaseName);
//$dbs = mysqli_select_db($databaseName, $con);
$itemNumber = $_POST['var1'];
echo json_encode($itemNumber);
$sql = "INSERT INTO item_list (item_number) VALUES ('$itemNumber')";
mysqli_query($con, $sql) or die(mysqli_error());
?>
我刚收到此错误 - XML解析错误:未找到任何元素 位置:file:/// C:/wamp64/www/bootstrap-3.3.7-dist/insert.php 第8行,第3栏:
答案 0 :(得分:1)
仅查询数据库是不够的。然后你必须发回一些东西给javascript。在这种情况下,状态消息就足够了
<?php
$host = "localhost:3306";
$user = "root";
$pass = "";
$databaseName = "items";
$con = mysqli_connect($host,$user,$pass, $databaseName);
//$dbs = mysqli_select_db($databaseName, $con);
$itemNumber = $_POST['var1'];
echo json_encode($itemNumber);
$sql = "INSERT INTO item_list (item_number) VALUES ('$itemNumber')";
$result = mysqli_query($con, $sql) or die(mysqli_error());
if (!$result) {
echo json_encode(array('status' => 'FAILED'));
} else {
echo json_encode(array('status' => 'OK'));
}
?>
在你的js代码中
function storeData(item){
$.ajax({
url: 'insert.php',
type: 'POST',
data: {'var1': item },
success: function(data) {
console.log("In success method");
console.log("status returned " + data.status);
},
error: function(data){
console.log("error");
}
});
}
答案 1 :(得分:0)
要使console.log工作,你需要一个成功方法,所以改为:
function storeData(item){
$.ajax({
url: 'insert.php',
type: 'POST',
data: {
var1: item
}
});}
要:
function storeData(item){
$.ajax({
url: 'insert.php',
type: 'POST',
data: {
var1: item
},
success: function(results) {
console.log(results);
}
});}
另外为了更好的阅读,我建议你对你的数据进行json_encode编码:
echo json_encode($itemNumber);
exit;
答案 2 :(得分:0)
我弄清楚出了什么问题,显然我需要指定URL的完整路径,不认为它是必需的,因为主文件和php文件都在同一个文件夹中。
function storeData(item){
$.ajax({
url: 'http://localhost/bootstrap-3.3.7-dist/main.php',
type: 'POST',
data: {
'var1': item
},
success: function(results) {
console.log("success");
},
error: function(results){
console.log("error");
}
});
return false;
}