我从PHP
文件传递到非洲大陆的js
文件。基本上我需要将数据插入数据库(放入大陆)并获取它的ID
,但无论我做什么,它都会返回empty string
或500 Internal Service Error
以下是PHP Code
:
$continent = $_POST['continent'];
$sql = "INSERT INTO location_continent (`name`) VALUES ('". $continent ."')";
if(!$result = mysqli_query($con, $sql)){
die('There was an error running the query [' . $db->error . ']');
}
$sql = "SELECT id FROM location_continent WHERE `name` = '". $continent ."'";
$result2 = $con->query($sql);
if(!$result2){
die('There was an error running the query [' . $con->error . ']');
}
return $result2->num_rows;
以下是JS Code
:
$.ajax({
url: 'process.php?section=continent',
type: 'POST',
data: 'continent='+key,
success: function(res) {
continentid = res;
console.log(res);
},
error: function(res) {
console.log(res);
}
});
传递的Key
类似Africa
。
我在php file
中尝试了以下内容:
return mysqli_insert_id($conn);
return $result;
$result = mysqli_query($con, $sql);
我现在已经挣扎了大约2个小时。我似乎无法找到错误。
注意 请注意,信息正好被插入数据库,只是我无法获取ID。
答案 0 :(得分:2)
在ajax中,你需要打印/ echo输出返回数据而不是return语句,所以尝试替换
return $result2->num_rows;
到
echo $result2->num_rows;
您也可以发送您的查询字符串,如: -
$.ajax({
url: 'process.php',
type: 'POST',
data: {'section':'continent','continent':key},
success: function(res) {
continentid = res;
console.log(res);
},
error: function(res) {
console.log(res);
}
});
然后,如果正确的查询执行错误导致找不到$con
和$db
已发布的代码
答案 1 :(得分:0)
您正在返回,但您不在函数中,因此请尝试回显(echo mysqli_insert_id($conn);
)