如何将所选选项值输入PHP

如何将所选选项值输入PHP,php,ajax,Php,Ajax,我有一些下拉列表,我需要得到PHP变量的所选选项值。我在同一个.PHP页面上有ajax和PHP代码 <?php if (isset($_POST['data'])) { echo $_POST['data']; $var = $_POST['data']; exit; } ?> <script src="js/jquery-1.11.3.min.js"></script> <select id="_city"> &

我有一些下拉列表,我需要得到PHP变量的所选选项值。我在同一个.PHP页面上有ajax和PHP代码

 <?php
if (isset($_POST['data'])) {
    echo $_POST['data'];
    $var = $_POST['data'];
    exit;
}
?>
<script src="js/jquery-1.11.3.min.js"></script>
<select id="_city">
    <option value="1">
        Kharkiv
    </option>
    <option value="2">
        Lviv
    </option>
    <option value="3">
        Kiev
    </option>
</select>

<script type="text/javascript">
    $(document).ready(function () {
        $("#_city").bind("change", function (e) {
            $.ajax({
                type: "POST",
                data: $("#_city").val()
            });
        });
    });
</script>

哈尔科夫
利沃夫
基辅
$(文档).ready(函数(){
$(“###u city”).bind(“change”,函数(e){
$.ajax({
类型:“POST”,
数据:$(“###u市”).val()
});
});
});
Firebug说我发布了一个值,作为回答,我获得了一个完整的html页面,但在PHP中我什么都没有。

这样做:

     <script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
 <?php
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST)) {
    echo '<pre>';
    print_r($_POST);
    echo $_POST['data'];
    $var = $_POST['data'];
    exit;
}
?>
<select id="_city">
    <option value="1">
        Kharkiv
    </option>
    <option value="2">
        Lviv
    </option>
    <option value="3">
        Kiev
    </option>
</select>
<script>    

    $(document).ready(function () {
            $("#_city").bind("change", function (e) {
                $.ajax({
                    type: "POST",
                    data: { data: $("#_city").val() }
                });
            });
        });
</script>

哈尔科夫
利沃夫
基辅
$(文档).ready(函数(){
$(“###u city”).bind(“change”,函数(e){
$.ajax({
类型:“POST”,
数据:{data:$(“##_城市”).val()}
});
});
});

同样感谢您的表单代码放在哪里?我忘了说我没有表单,ajax在更改事件上运行,因为您的
$\u POST
数组中没有
数据
键。如果(isset($\u POST['data'])在您通过ajax发布数据时没有运行,那么当有帖子时(这里是您的ajax调用)请求将在
if(isset($\u POST['data']){…}
部分中得到响应,当您直接点击url时,您将看到
else
part.write
if(isset($\u POST)){..}
当我更改select if条件中的值时,我不明白为什么?