[英]select multiple rows from mysql and sent to jquery post function in php
在我的應用程序中,我必須根據類別加載數據。 我正在做的是單擊類別時,在我獲取類別ID的地方調用了click函數,並將其傳遞給$.post
方法到php頁面load_project.php
。 在該頁面上,我根據類別ID選擇項目,並且必須將選擇的行發送回成功功能。 我的問題是,當我將數據發送回陣列中時,僅收到數據警報的最后一行。 我不知道我要去哪里。 誰能幫幫我嗎。
PHP頁面:
<script>
$(document).ready(function() {
$("#categorylink").click(function() {
cid = $(this).attr("data-cid");
$.post('load_project.php', { cid: "" + cid + "" }, function(data) {
alert(data); //here I get only one row, but there is actually 3 rows
});
});
});
</script>
<ul>
<a><li data-filter="all">>All</li></a>
<?php $get=$config->get_cat();
while($row = $get->fetch(PDO::FETCH_ASSOC)) {
?>
<a id="categorylink" data-cid="<?php echo $row['category_id'];?>">
<li>
<?php echo $row['category_name'];?>
</li>
</a> //this is my categories
<?php } ?>
</ul>
load_project.php
<?php
require_once 'config.php';
$config = new DBConfig;
if(isset($_POST['cid']))
{
$cid=$_POST['cid'];
$get=$config->getprojectbycategory($cid);
while($row=$get->fetch(PDO::FETCH_ASSOC)) {
$results['projects'] = $row;
}
echo json_encode($results);
}
?>
從成功函數中,我必須將行填充到網格中。 我無法做到這一點。 因此,當前我通過href將類別ID傳遞給php頁面本身,並在頁面重新加載后填充數據。 由於它不是加載數據的好方法,因此我想用jquery ajax替換它。 請幫我。
編輯1
當我這樣嘗試時:
$results[] .= $row['project_name'];
我正在警報中得到三個項目名稱: [[],"Private Palace","Private Villa F","23rd Floor Addax Tower"]
此問題是因為您存儲在數組中的值被以前的值覆蓋。
解決方案是聲明$results['projects'] = array();
在while循環之前。
$results['projects'] = array();
while($row=$get->fetch(PDO::FETCH_ASSOC)){
$results['projects'] = $row['project_name'];
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.