У меня есть таблица с именем tblstationerystock, имеющая три столбца, например: -

Uin, дата заказа, количество.

Есть несколько записей на разных orderdate против uin.

Моя структура таблицы: -

enter image description here

У меня есть форма, в которой есть два раскрывающихся списка ввода (uin и orderdate), которые принимают ввод из таблицы tblstationerystock.

Если я выбираю uin в первом раскрывающемся списке ввода, я хочу, чтобы во втором раскрывающемся списке отображались только те date, которые принадлежат этому конкретному uin.

Моя проблема: -

Но во втором раскрывающемся списке все время отображается все значение.

мой код для формы

<?php
include('includes/config.php');
?>

<div class="form-group col-md-12">
<label> User Name<span style="color:red;">*</span></label>
<select class="form-control" name="user" id="uin" onchange="fnorderdate()" >
<option value=""> </option>
<?php 
$sql = "SELECT uin from  tblstationerystock group by uin order by uin asc ";
$query = $dbh -> prepare($sql);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
{
foreach($results as $result)
{               ?>  
<option value="<?php echo htmlentities($result->uin);?>"><?php echo htmlentities($result->uin);?></option>
 <?php }} ?>
</select>
</div>


<div class="form-group col-md-12">
<label> User Name<span style="color:red;">*</span></label>
<select class="form-control" name="user" id="orderdate" >
<option value=""> </option>
<?php 
$sql = "SELECT orderdate from  tblstationerystock group by orderdate order by orderdate asc ";
$query = $dbh -> prepare($sql);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
{
foreach($results as $result)
{               ?>  
<option value="<?php echo htmlentities($result->orderdate);?>"><?php echo htmlentities($result->orderdate);?></option>
 <?php }} ?>
</select>
</div>
<script>
function fnorderdate()
{
    uin=$('#uin').val();
    $.ajax({
        method:"post",
        url:"ajax.php"'
        data:{uin:uin},
        
        success:function(result)
        {
            $('#orderdate').html(result);
        
        

}
</script>

мой код ajax

<?php
include('includes/config.php');
if(isset($_POST[uin]))
{
    $uin=$POST['uin'];
    
    $select="select orderdate from tblstationerystock where uin='$uin' ";
    $query=mysqli_query($conn,$select);
    while($data=mysqli_fetch_assoc($query))
    {
        echo "<option value='".$data['orderdate']."'>".$data['orderdate']."</option>
    }
}
    


?>
-3
roopa 10 Ноя 2020 в 07:46

1 ответ

Лучший ответ

Просмотр части: -

<?php
include('includes/config.php');
?>
<div class="form-group col-md-12">
<label> UIN<span style="color:red;">*</span></label>
<select class="form-control" name="uin" id="uin" >
<option value="" > </option>
<?php 
$sql = "SELECT uin from  tblstationerystock group by uin order by uin asc";
$query = $dbh->prepare($sql);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
{
foreach($results as $result)
{  ?>  
<option value="<?php echo htmlentities($result->uin);?>">
<?php echo htmlentities($result->uin);?>
</option>
 <?php }} ?>
</select>
</div>


div class="form-group col-md-12">
<label> ORDER DATE<span style="color:red;">*</span></label>
<select class="form-control" name="orderdate" id="orderdate" >

</select>
</div>

Код jQuery / AJAX: -

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js" type="text/javascript"></script>

<script type="text/javascript">
$(document).ready(function(){

    $('#uin').on("change",function () {
        var uin = $(this).val();
        $.ajax({
            url: "ajax.php",
            type: "POST",
            data: "uin="+uin,
            success: function (response) {
                console.log(response);
                $("#orderdate").html(response);
            },
        });
    }); 

});

</script>

Сделайте файл php с именем ajax.php в том же каталоге

И поместите этот код: -

<?php 
include('includes/config.php');
$uin = $_POST['uin'];
echo "<option>Select ORDER DATE</option>";
$sql = "SELECT orderdate from  tblstationerystock WHERE uin=$uin";
$query = $dbh -> prepare($sql);
$query->execute();
$results=$query->fetchAll(PDO::FETCH_OBJ);
$cnt=1;
if($query->rowCount() > 0)
{
foreach($results as $result)
{               ?>  
<option value="<?php echo htmlentities($result->orderdate);?>">
<?php echo htmlentities($result->orderdate);?>
</option>
 <?php }}
 ?>
-2
KUMAR 10 Ноя 2020 в 07:07