[英]Cant pass ajax variable to php
我有這個html代碼,說Cliente的部分充滿了簡單的mysql查詢; 我想做的是,當您在Cliente中選擇一個選項時,它會自動在第二個列表中顯示鏈接到數據庫中cliente的選項。
<div class="form-group">
<label class="col-md-4 control-label" for="selectbasic">Cliente</label>
<div class="col-md-4">
<select id="cliented" name="cliented" class="form-control">
<?php foreach ($dcli3 as $key) { ?>
<option value="<?php echo $key['id'] ?>"><?php echo $key['nombre'] . ' ' . $key['apellido'] ?></option>
<?php } ?>
</select>
</div>
</div>
<div class="form-group">
<label class="col-md-4 control-label" for="selectbasic">Cuenta</label>
<div class="col-md-4">
<select id="cuentad" name="cuentad" class="form-control">
<?php foreach ($dcu as $key) { ?>
<option value="<?php echo $key['numero'] ?>"><?php echo $key['numero'] ?></option>
<?php } ?>
</select>
</div>
</div>
為了獲得第一個列表中的選定選項,我可以使用以下js代碼進行操作:
$(document).ready(function() {
$('select[name="cliented"]').change(function(){
var cliented = $(this).val();
$.ajax({
type: 'POST',
url: 'cons.php',
data: cliented,
dataType: 'json',
});
});
});
到那時為止,一切都很好,即使我使用alert(cliented); 它顯示了與所選客戶端相對應的ID。 問題是當我這樣查詢時:
if (isset($_POST['cliented'])) {
$cliente = $_POST['cliented'];
$cu = "SELECT * FROM cuenta WHERE idc= '$cliente'";
$dcu = $conn->query($cu);
}
$ cliente變量始終為空。 我想念什么?
您要發送鍵/值對。 現在,您所發送的就是價值
更改:
data: cliented,
至:
data: {cliented: cliented},
您需要將值分配給鍵。
$(document).ready(function () {
$('select[name="cliented"]').change(function () {
var cliented = $(this).val();
var postData = {
cliented: cliented
}
$.ajax({
type: 'POST',
url: 'cons.php',
data: postData,
dataType: 'json',
});
return false;
});
});
$(document).ready(function() {
$('select[name="cliented"]').change(function(){
var cliented = $(this).val();
DATA = 'cliented=' + cliented;
$.ajax({
type: 'POST',
url: 'cons.php',
data: cliented,
dataType: 'json',
success:function()
{
}
});
});
});
您沒有使用ajax設置變量名稱。
更改:
data: cliented,
to:
data:'cliented='+cliented
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.