从select选项中获取值并在php

时间:2016-04-08 12:10:44

标签: php jquery ajax post drop-down-menu

我有这个选择,我想在更改后保存每个值,保存并在其他选择中使用

这是我的代码:

<?
$sql = "SELECT * FROM championnat ";
$result = $conn->query(sprintf($sql));
if($result){
    if ($result->num_rows != 0)
    {  
        $rows=array(); 
?>
<select name="nom_championnat" id="nom_championnat" >
    <option value=""></option>
    <?php
        while($r=mysqli_fetch_assoc($result))
        { 
    ?>
    <option   value=" <?php echo $r['idChampionnat']?>" name="nom_championnat" selected >
    <?php  echo $r['nomChampionnat']  ?></option>
    <?php
        }
    }
}
?>
</select>
</div>

我需要变量$ r ['idChampionnat']将它保存在每个选择中并在此重新使用中使用它,它怎么能将它放入并重新插入sql ????

<?php
$sql = "SELECT * FROM equipe  where idChampionnat=???? ";
$result = $conn->query(sprintf($sql));
if($result){
    if ($result->num_rows != 0)
        {
        $rows=array(); 
?>
<select name="equipe1" >
    <option value=""></option>
    <?php
        while($r=mysqli_fetch_assoc($result))
        { 
    ?>
    <option  required value=" <?php echo $r['nomEquipe']?>" name="equipe1" selected ><?php  echo $r['nomEquipe']  ?>
    </option>
    <?php
        }
    }
}
?>
</select>

只是为了清除它,

1 个答案:

答案 0 :(得分:1)

当选择第一个框时,您需要使用jQuery来激活AJAX调用。

我已经做了一段时间,但这应该会给你一些想法。我从herehere获取了一些代码作为示例

说你的html看起来像这样

<select id="nom_championnat">
    <option value="value1">value1</option>
    <option value="value2">value2</option>
</select>
<select id="equipe1"></select>

然后你需要告诉jquery当nom_championnat改变选择时该做什么

$('#nom_championnat').change(function() {
    var data = "";
    $.ajax({
        type:"POST",
        url : "queryfile.php",
        data : "value="+$(this).val(),
        async: false,
        success : function(response) {
            data = response;
            return response;
        },
        error: function() {
            alert('Error occured');
        }
    });
    var string = data.message.split(",");
    var array = string.filter(function(e){return e;});
    var select = $('equipe1');
    select.empty();
    $.each(array, function(index, value) {          
        select.append(
                $('<option></option>').val(value).html(value)
            );
    });
});

然后你需要一个queryfile.php来处理ajax请求,比如

<?php 
   print_r($_POST);
   $value = $_POST["value"];
   $sql = "select where {$value} ..."
   $result = execute($sql);
   echo $result;
?>