[英]PHP Not passing variables through to ajax
我正在從js
文件通過大洲傳遞到PHP
文件。 基本上,我需要將數據插入數據庫(放入大洲)並獲取它的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。
在ajax中,您需要打印/回顯輸出以獲取返回數據而不是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
您正在返回,但您不在函數中,因此請嘗試使用echo mysqli_insert_id($conn);
( echo mysqli_insert_id($conn);
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.