私はこれについて助けが必要です。私はこのコードを持っていますが、データベースに挿入するときに、データベースの2つのテーブルの間の関係を作成するために主キーと外部キーとして使用するidとstate_idを挿入しています。 idやstate_idではなく、正確な値を挿入したいと思っています。ありがとう。データベースに正確なデータ値を入力してください
<?php
include 'dbconnect.php';
$query = "SELECT `id`,`states` FROM `states`";
$result1 = mysqli_query($dbconnect,$query);
$rows = mysqli_num_rows($result1);
if ($rows){
while($row = mysqli_fetch_assoc($result1)){
$states[] = array("id" => $row['id'], "val" => $row['states']);
}
}
$query = "SELECT `id`, `state_id`, `local_government` FROM `local_governments`";
$result2 = mysqli_query($dbconnect,$query);
$rows2 = mysqli_num_rows($result1);
if ($rows2){
while($row2 = mysqli_fetch_assoc($result2)){
$local_government[$row2['state_id']][] = array("id" => $row2['id'], "val" => $row2['local_government']);
}
$jsonStates = json_encode($states);
$jsonLocal_government = json_encode($local_government);
}
if (isset($_POST['submit'])){
$stateOforigin = htmlspecialchars(trim($_POST['stateOforigin']));
$LGA = htmlspecialchars(trim($_POST['LGA']));
$sql = "UPDATE `sono` SET `stateOforigin`='$stateOforigin', `LGA`='$LGA' WHERE `eMail`='$email'";
$check = mysqli_query($dbconnect, $sql);
header ('location: form2.php');
?>
<script type="text/javascript">
<?php
echo "var states = $jsonStates; \n";
echo "var local_government = $jsonLocal_government; \n";
?>
function loadStates(){
var select = document.getElementById("statesSelect");
select.onchange = updateLocal_government;
for(var i = 0; i < states.length; i++){
select.options[i] = new Option(states[i].val,states[i].id);
}
}
function updateLocal_government(){
var statesSelect = this;
var state_id = this.value;
var local_governmentSelect=document.getElementById("local_governmentSelect");
local_governmentSelect.options.length = 0; //delete all options if any present
for(var i = 0; i < local_government[state_id].length; i++){
local_governmentSelect.options[i] = new Option(local_government[state_id][i].val,local_government[state_id][i].id);
}
}
</script>
<body onload='loadStates()'>
<p style='padding-left: 0px; font-size: 12px; font-weight: bold'>State Of Origin</p>
<p><select name="stateOforigin" class="userarea" id="statesSelect"></p></select>
<p style='padding-left: 0px; font-size: 12px; font-weight: bold'>Local Govt. Area</p>
<p><select name="LGA" class="userarea" id="local_governmentSelect">
<option value="Null">Loading</option></p>
</select>
</body>
最も簡単な方法は、 'new option()'で必要な値を2回使用することです。 '' – RST
は分かりません。どんな結果が得られ、何を得たいですか?加えて、あなたは$ email varがありますが、初期化されていません。 – Jimmmy
私はidとstate_idをデータベースに挿入しましたが、私が望むのはデータベースに挿入される状態の正確な名前です。 –