使用jQuery getJSON将变量发送到php post

时间:2015-03-15 14:48:15

标签: php jquery

我正在创建一个我需要下拉的网页。当我选择第一个下拉列表时,将添加第二个drodown中的值,因此我需要将第一个下拉列表的值发布到服务器以生成sql查询。

<?php
$catName = $_POST['catname'];


require_once('my_sqli_connect.php');

$sql = "select product_name from products where category_name='$catName'";

$res = mysql_query($sql);

$result = array();

while($row = mysql_fetch_array($res)){
    array_push($result, 
        array('product_name'=>$row[0]));
}

echo json_encode(array("result"=>$result));

mysql_close($con);?>

我的jquery代码

$("#selectcat").change( function() {

    $.getJSON(
        '../database/bringproduct.php', 
        'catname='+$('#selectcat').val(),
        function(info){
            $('#bringproduct').empty();

            $.each(info.result, function(){
                $('ul').append('<li>'+this['product_name']+'</li>');
            });
        }); 
    });

我通过给$ catName一个默认值并删除getJSON()中的第二个参数来测试php脚本它运行正常。谁能告诉我我在做错误的地方?

1 个答案:

答案 0 :(得分:0)

您正在发送GET请求($.getJSON),但期望PHP中的POST变量:$catName = $_POST['catname'];。更改为$catName = $_GET['catname'];