Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/249.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PHP中使用ajax预填充相应国家/地区的州详细信息_Php_Mysql_Ajax - Fatal编程技术网

在PHP中使用ajax预填充相应国家/地区的州详细信息

在PHP中使用ajax预填充相应国家/地区的州详细信息,php,mysql,ajax,Php,Mysql,Ajax,在选择任何国家/地区后,我需要在frmState下拉框中预先填充州详细信息。 但我对ajax还不熟悉,对它的了解还不够。你能帮我做这个例行公事吗?如下所示。 它可能值很多钱。提前谢谢 我在mySql中有两个表 tbl_国家 columns: country_id(auto inc id) | country_name | country_code tbl_州 columns: state_id(auto inc id) | state_name | country_name Html代码 &

在选择任何国家/地区后,我需要在frmState下拉框中预先填充州详细信息。 但我对ajax还不熟悉,对它的了解还不够。你能帮我做这个例行公事吗?如下所示。 它可能值很多钱。提前谢谢

我在mySql中有两个表

tbl_国家

columns: country_id(auto inc id) | country_name | country_code
tbl_州

columns: state_id(auto inc id) | state_name | country_name
Html代码

<select class="txtselectcomp" name="frmCountry" id="frmCountry" onChange="showHint(this.value);" onblur="checkEmptyData('frmCountry');" required="required" >
<option value="">Select  country</option>
    <?php
for ($i = 0; $i < count($strCountries); $i++) { ?>
         <option value="<?php
    echo $strCountries[$i]['country_name']; ?>" <?php
    if ($_POST['frmCountryName'] == $strCountries[$i]['country_name']) { ?> selected="selected" <?php
    } ?>><?php
    echo ucfirst($strCountries[$i]['country_name']); ?></option>
    <?php
} ?>
</select> 

<select class="txtselectcomp" name="frmState" id="frmState" onblur="checkEmptyData('frmState');" required="required" >
<option value="">Select State</option>
</select>   
findState.php

  <?php
    include ("config.php");
    $country_name = $_GET["value"];
    $sql = doSelectState($country_name);
    ?>
        <select name="State" id="State">
        <?php
    for ($i = 0; $i < count($sql); $i++) {
        $id = $sql[$i]['state_id'];
        $state = $sql[$i]['state_name'];
        echo '<option value="' . $id . '">' . $state . '</option>';
    }
   ?>
   </select>


在这里,您不必创建select元素。你可以这样做

<?php
include ("config.php");
$country_name = $_GET["value"];
$sql = doSelectState($country_name);
for ($i = 0; $i < count($sql); $i++) {
    $id = $sql[$i]['state_id'];
    $state = $sql[$i]['state_name'];
    echo '<option value="' . $id . '">' . $state . '</option>';
}

这样,在将数据返回到浏览器时,您将获得选项字段,而不是select,它可以是select的内部html。您现在要做的是将SELECT元素插入到SELECT元素中

  <?php
    include ("config.php");
    $country_name = $_GET["value"];
    $sql = doSelectState($country_name);
    ?>
        <select name="State" id="State">
        <?php
    for ($i = 0; $i < count($sql); $i++) {
        $id = $sql[$i]['state_id'];
        $state = $sql[$i]['state_name'];
        echo '<option value="' . $id . '">' . $state . '</option>';
    }
   ?>
   </select>
<?php
include ("config.php");
$country_name = $_GET["value"];
$sql = doSelectState($country_name);
?>
    <select name="State" id="State">
    <?php
for ($i = 0; $i < count($sql); $i++) {
    $id = $sql[$i]['state_id'];
    $state = $sql[$i]['state_name'];
    echo '<option value="' . $id . '">' . $state . '</option>';
}
<?php
include ("config.php");
$country_name = $_GET["value"];
$sql = doSelectState($country_name);
for ($i = 0; $i < count($sql); $i++) {
    $id = $sql[$i]['state_id'];
    $state = $sql[$i]['state_name'];
    echo '<option value="' . $id . '">' . $state . '</option>';
}