我正在尝试使用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'];
答案 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);
}
);
});
});