0

希望你没事!

我想执行这样的请求(SQL):

SELECT Name FROM course WHERE IdSectionFK = '.$idSectionFK.';

我有部分列表:

while($row = $selectAllSection->fetch(PDO::FETCH_OBJ)){
   echo "<option value=".$row->IdSection.">".$row->Name."</option>";
}

我想只显示所选值的数据。我尝试了这样的方法来获取列表的值:

<script>

function displayVals() {

        var idSection = $("#sectionListe").val();

        $.post('index.php', { 'idSection': idSection },function (){
          alert("success");
        })

        .success(function() { alert("second success"); })
        .error(function() { alert("error"); })
        .complete(function() { alert("complete"); });
    }                                    

    $("select").change(displayVals);
    displayVals();

</script>

因此,变量“idSection”等于我的 SQL 请求中的 PHP 变量“idSectionFK”。但是我怎样才能执行正确的 SQL 请求呢?

非常感谢你的帮助!

拉皮努。

4

1 回答 1

1

AJAX 是解决方案。

JS代码:

function displayVals() {
    var idSection= $("#sectionListe").val();
    $("p").html(idSection);
    $.post('/url/to/php/file', { 'idSection': idSection }, function (response) {
        // do something with the response here
        // e.g: $('select').append(response);
        console.log(response);
    });
}                                    

$("select").change(displayVals);
displayVals();

处理接收到的数据的 PHP 代码:

$idSectionFK = 0;

if (isset($_POST['idSection'])) {
    // get the ID from ajax, run SQL here
    $idSectionFK = intval($_POST['idSection']);

    $query = "SELECT Name FROM course WHERE IdSectionFK = '.$idSectionFK.';";

    // .... your code ...
}

只是给你一个基本的想法。

于 2013-07-20T19:34:17.590 回答