我得到了DB與多個表像區域/國家/國家/等。我想根據其他列表選擇下拉列表。多個下拉列表與PHP和MySQL
我已經嘗試了很多東西,但似乎沒有任何工作。
這是我的最新版本:
core.php中:
<html>
<body>
<script type="text/javascript" src="jquery-1.11.0.min.js"></script>
<script type="text/javascript">
function abc(){
var val = document.getElementById('Region_ID').value;
$.post("getSecondDropDown.php",{ Region_ID:val}, function(data) {
$("#Country_ID").html(data);
});
}
</script>
<form action="/NewService.php" id="ServiceForm" method="post">
Name:<input type="text" name="Service_Name"></br>
Region: <select name="Region_ID" onchange="abc()" form="ServiceForm">
<?php
include('config.php');
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $conn->prepare("SELECT Region_ID, Region_Name FROM Regions");
$stmt->execute();
$result = $stmt->setFetchMode(PDO::FETCH_ASSOC);
foreach($stmt as $v) {
echo "<option value='" . $v['Region_ID'] ."'>" . $v['Region_Name'] ."</option>";
}
}
catch(PDOException $e) {
echo "Error: " . $e->getMessage();
}
$conn = null;
?>
</select></br>
Country: <select name="Country_ID" form="ServiceForm">
</select></br>
<input type="submit">
</form>
</body>
</html>
getSecondDropDown.php:
<?php
$Region_ID =$_POST['Region_ID'];
$option="";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $conn->prepare("SELECT Country_ID, Country_Name FROM Countries WHERE Region_ID ='$Region_ID'");
$stmt->execute();
$result = $stmt->setFetchMode(PDO::FETCH_ASSOC);
foreach($stmt as $v) {
echo "<option value='" . $v['Country_ID'] ."'>" . $v['Country_Name'] ."</option>";
}
echo $option;
?>
「似乎沒有任何工作」。究竟哪一點失敗? (例如,預期與實際行爲有什麼區別?)您是否從PHP或瀏覽器控制檯收到任何錯誤消息? – ADyson
你會得到什麼錯誤?嘗試var_dump($ result)作爲開始。什麼是輸出? – Josip
@ADyson它只是不顯示任何國家。 – lusins123