如何使用ajax将数据库值发布到下一页

时间:2014-01-13 12:51:35

标签: javascript php jquery ajax

我正在尝试使用ajax.i尝试将数据库检索到的值发布到下一页但是没有发布,任何人都可以指导我如何操作

PHP

与数据库连接

$sql = "SELECT * FROM `billingdatainputandexport` WHERE id='1'"; 
$result=mysql_query($sql);
$rows=mysql_fetch_array($result);
//print $sql;
 $billingmonth=$rows['billingmonth'];

我想将此结算月份传递给choicesuppliercostprice.php。

的javascript

$(document).ready(function() {
    $("#supplier").on("change", function() {

        var billingmonth='$billingmonth';
        var supplier = document.getElementById("supplier").value;
        var mcc = document.getElementById("mcc").value;
        var mnc = document.getElementById("mnc").value;
        $.post('selectsuppliercostprice.php', { org: supplier,mcc: mcc,mnc: mnc,billingmonth: billingmonth }, function(result) {
            $('#suppliercost').html(result);
            }
        );
    });
});

selectsuppliercostprice.php。

   $billingmonth=$_POST['billingmonth'];

5 个答案:

答案 0 :(得分:2)

你能试试吗,

<强> PHP

$billingmonth=$rows['billingmonth'];

echo '<input type="hidden" id="billingmonth" name="billingmonth" value="'.$billingmonth.'">'; // added hidden input

<强>使用Javascript:

$("#supplier").on("change", function() {
    var billingmonth= $('#billingmonth').val();
    ...
 });

答案 1 :(得分:1)

post变量是$ _POST而不是$ POST所以...应该是正确的:

$billingmonth = $_POST['billingmonth'];

同样在Javascript中,您必须打印billingmonth变量。 Javascript无法处理php变量:

var billingmonth='$billingmonth';

var billingmonth='<?php echo $billingmonth; ?>';

答案 2 :(得分:1)

这是最新的代码:你错过了我猜你脚本标签里面的php标签现在尝试:)

       $(document).ready(function() {
        $("#supplier").on("change", function() {

            var billingmonth='<?php echo $billingmonth ?>';
            var supplier = document.getElementById("supplier").value;
            var mcc = document.getElementById("mcc").value;
            var mnc = document.getElementById("mnc").value;
            $.post('selectsuppliercostprice.php', { org: supplier,mcc: mcc,mnc: mnc,billingmonth: billingmonth }, function(result) {
                $('#suppliercost').html(result);
                }
            );
        });
    });

答案 3 :(得分:1)

创建隐藏字段并将值存储在其中并在javascaript中读取该值并使用ajax传递

        <input type="hidden" name="some_name" value="<?php echo $billingmonth?>" id="some_name"/>

javascript代码

$(document).ready(function() {
    $("#supplier").on("change", function() {

        var billingmonth=document.getElementById('billingmonth').value;
        var supplier = document.getElementById("supplier").value;
        var mcc = document.getElementById("mcc").value;
        var mnc = document.getElementById("mnc").value;
        $.post('selectsuppliercostprice.php', { org: supplier,mcc: mcc,mnc: mnc,billingmonth: billingmonth }, function(result) {
            $('#suppliercost').html(result);
            }
        );
    });
});

如果你不想在

之外的任何地方使用它
   var billingmonth= '<?php echo $billingmonth?>';

答案 4 :(得分:1)

试试吧。

$billingmonth值存储到任何隐藏的输入中。

<input type="hidden" name="billing_month" id="billing_month" value="<?php echo $billingmonth; ?>"/>

使用隐藏输入id在jQuery ready函数中检索$ billingmonth值。

$(document).ready(function() {
    $("#supplier").on("change", function() {

        var billingmonth=$("#billing_month").val();
        var supplier = $("#supplier").val();
        var mcc = $("#mcc").val();
        var mnc =$("#mnc").val();
        $.post('selectsuppliercostprice.php', { org: supplier,mcc: mcc,mnc: mnc,billingmonth: billingmonth }, function(result) {
            $('#suppliercost').html(result);
            }
        );
    });
});