PHPファイルにajaxリクエストを作成しようとしています。PHPへのAjaxリクエストの送信が動作しない
「国」選択オプションメニューが変更されたときにajaxリクエストが発生します。結果は、「州」という新しい選択オプションメニューであり、オプションは「国」選択オプションメニューでの選択に基づいています。
これは私がそれを見えるようにしたいものです:AjaxはPHPへの要求を行っているとき
私がいる問題があり、PHPは空の配列を返すしているようです:
誰もが間違っているかもしれないものを知っていますか?
ありがとうございました!
HTML選択オプションのために:
$("#Country").on("change",function(){
var val = $('#Country').val();
performAJAX(val,'Country','StateProvince');
});
function performAJAX(choice,prevSelect,newSelect){
$.ajax({
type: "post",
url: "select-creation.php",
data: {choice: choice, prevSelect: prevSelect,newSelect: newSelect},
dataType: "json",
success: function(data){
var obj = $.parseJSON(data);
console.log("meow meow");
}
});
}
PHPコード:
<select name="Country" class="form-control input-sm" id="Country">
</select>
のonchange機能付き
Ajaxコード
<?php session_start();
try{
$choice = $_POST['choice'];
$prevAttri = $_POST['prevSelect'];
$nxtAttri = $_POST['newSelect'];
$data = array();
$sql = 'SELECT '.$nxtAttri.' FROM agents WHERE '.$prevAttri.' = :userChoice';
include_once $_SERVER['DOCUMENT_ROOT'].'/inc/Database.class.php';
$db = new Database();
$conn = $db->getConnection();
$query = $conn->prepare($sql);
$query->bindValue(':userChoice',$choice,PDO::PARAM_STR);
if($query->execute()){
$data = $query->fetchAll(PDO::FETCH_ASSOC);
}//stmt
return json_encode($data);
}catch(PDOException $e){
echo $e->getMessage();
}
?>
"meow meow"コンソールログは、PHPのファイルである – Bpicks
がPHPの開発者ではありませんでしたが、返信に成功したかどうかを確認するテストとして機能しますが、PHPでは 'echo json_encode($ data)'それを返す代わりに? – Frankusky
データが返ってこないかもしれません – guradio