Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/282.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.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获取3级下拉列表的值。已获取第一个下拉列表值,但如何在不使用会话的情况下获取第二个和第三个下拉列表值_Php_Jquery_Html_Ajax - Fatal编程技术网

Php 要通过ajax获取3级下拉列表的值。已获取第一个下拉列表值,但如何在不使用会话的情况下获取第二个和第三个下拉列表值

Php 要通过ajax获取3级下拉列表的值。已获取第一个下拉列表值,但如何在不使用会话的情况下获取第二个和第三个下拉列表值,php,jquery,html,ajax,Php,Jquery,Html,Ajax,我能够获取所有值,但当第二个和第三个下拉菜单通过Ajax出现时,如何获取这些值?我想在不使用会话变量的情况下获取第二个和第三个下拉值 我正在从数据库中获取下拉列表的值,根据接下来的两个下拉列表 <script> $(document)ready(function() { $("#b").change(function() { var b=$(this)

我能够获取所有值,但当第二个和第三个下拉菜单通过Ajax出现时,如何获取这些值?我想在不使用会话变量的情况下获取第二个和第三个下拉值

我正在从数据库中获取下拉列表的值,根据接下来的两个下拉列表

      <script>
          $(document)ready(function()
           {
            $("#b").change(function()
               {
             var b=$(this).val();

          $.ajax({url:"state.php", data:{id:b}, success: function(data)
             {
         $("#d").html(data);
            }
           });
         });
         $("#b1").click(function()
           {
          var a=$("#nm").val();
          var b1=$("#m").val();
          var c=$("#f").val();
          var d=$("#c").val();
          var e=$("#cpp").val();
          var f=$("#php").val();
          var g=$("#email").val();
          var h=$("#pass").val();
           var b=$("#b").val()
          $.ajax({url:"formaction.php",data:{nm:a,b1:b1,c:c,d:d,f:f,email:g,pass:h,b:b}, success: function(data)
         {
           $("#d1").html(data);
          }
         });
      });
     });
     </script>
     <?php
       $con=mysql_connect("localhost","root","");
       mysql_select_db("arijitatest",$con);
       $qr=mysql_query("select * from country");
       ?>
       Name:<input type="text" name="nm" id="nm"><br>
       Gender:<input type="radio" name="g" id="m" value="male">M 
       <input type="radio" name="g" id="f" value="female">F
       <br>
    Skill:<input type="checkbox" name="s[]" id="c" value="c">C
<input type="checkbox" name="s[]" id="cpp" value="cpp">CPP
<input type="checkbox" name="s[]" id="php" value="php">PHP
  <br>

  Country:
    <select id="b" name="coun">
    <option>select</option>
    <?php
       while($row=mysql_fetch_array($qr))
        {
       ?>
       <option value="<?php echo $row['cid']?>"> <?php echo $row['cname']?></option>

  <?php
   }
 ?>

  </select>
  <br>
 <div id="d" name="d">
  </div>
 </select> <br>
 Email id:<input type="text" name="email" id="email"> <br>
 Password:<input type="password" name="pass" id="pass">
 <br>
 <input type="button" id ="b1" value="SUBMIT">
 <input type="reset" value="CLEAR">
 </form>
 <div id="d1" name="d"></div>
   this is the page for 2nd dropdown
     <script>
     $(document).ready(function()
        {
        $("#b1").change(function()
            {
             var b1=$(this).val();
             $.ajax({url:"city.php", data:{sid:b1}, success: function(data)
      {
      $("#d2").html(data);
            }
       });
    });
    });
      </script>
       <?php
        $con=mysql_connect("localhost","root","");
          mysql_select_db("arijitatest",$con);

          $cid=$_REQUEST['id']; //echo $cid;
          $qr=mysql_query("select * from state where cid='$cid'");
            ?>

      <select id="b1">
       <option>select</option>
      <?php

        while($row=mysql_fetch_array($qr))
        {
         ?>

           <option value="<?php echo $row['sid']?>"><?php echo $row['sname']?></option>
  <?php
   }
   ?>
   </select>
   <div id="d2">
   </div>
我正在从数据库中获取下拉列表的值,取决于接下来的两个下拉列表。几天前我遇到了类似的问题,好吧,让我们看看我们得到了什么

我建议为config.php创建一个单独的文件,并一直填充它。另外,你很快就会被要求使用mysqli/PDO,所以我将把这留给球队,在我的例子中使用PDO

dbconfig.php

get_city.php

get_states.php

这是一个工作的代码,所以你不应该有任何麻烦玩 周围很多,如果有什么你不明白的,感觉一下 自由提问


首先,级别2和级别3的标记在哪里?我想在表单提交后插入州和城市值。@Amrita请详细说明场景?您正在从数据库中获取国家的所有数据,然后您希望州和城市依赖于国家还是不依赖于国家?
<?php

$db_host = "localhost";
$db_user = "yourusernamehere";
$db_pass = "";
$db_name = "yourdbnamehere";

try
{
 $db_con = new PDO("mysql:host={$db_host};dbname={$db_name}",$db_user,$db_pass);
 $DB_con->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch(PDOException $e)
{
 $e->getMessage();
}
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function()
{
 $(".country").change(function()
 {
  var id=$(this).val();
  var dataString = 'id='+ id;

  $.ajax
  ({
   type: "POST",
   url: "get_states.php",
   data: dataString,
   cache: false,
   success: function(html)
   {
      $(".state").html(html);
   } 
   });
  });


 $(".state").change(function()
 {
  var id=$(this).val();
  var dataString = 'id='+ id;

  $.ajax
  ({
   type: "POST",
   url: "get_city.php",
   data: dataString,
   cache: false,
   success: function(html)
   {
    $(".city").html(html);
   } 
   });
  });

});
</script>
</head>

<body>
<center>
<div>
<label>Country :</label> 
<select name="country" class="country">
<option selected="selected">--Select Country--</option>
<?php
 $stmt = $DB_con->prepare("SELECT * FROM tabel_country");
 $stmt->execute();
 while($row=$stmt->fetch(PDO::FETCH_ASSOC))
 {
  ?>
        <option value="<?php echo $row['country_id']; ?>"><?php echo $row['country_name']; ?></option>
        <?php
 } 
?>
</select>

<label>State :</label> <select name="state" class="state">
<option selected="selected">--Select State--</option>
</select>


<label>City :</label> <select name="city" class="city">
<option selected="selected">--Select City--</option>
</select>

</div>
<br />
</center>
</body>
</html>
<?php
include('dbconfig.php');
if($_POST['id'])
{
 $id=$_POST['id'];

 $stmt = $db_con->prepare("SELECT * FROM tbl_city WHERE state_id=:id");
 $stmt->execute(array(':id' => $id));
 ?><option selected="selected">Select City :</option><?php
 while($row=$stmt->fetch(PDO::FETCH_ASSOC))
 {
  ?>
  <option value="<?php echo $row['city_id']; ?>"><?php echo $row['city_name']; ?></option>
  <?php
 }
}
?>
<?php
include('dbconfig.php');
if($_POST['id'])
{
 $id=$_POST['id'];

 $stmt = $db_con->prepare("SELECT * FROM tbl_state WHERE country_id=:id");
 $stmt->execute(array(':id' => $id));
 ?><option selected="selected">Select State :</option><?php
 while($row=$stmt->fetch(PDO::FETCH_ASSOC))
 {
  ?>
        <option value="<?php echo $row['state_id']; ?>"><?php echo $row['state_name']; ?></option>
        <?php
 }
}
?>