我正在尝试打开一个包含数据库数据的新页面,我这样做了:
这是我要显示我的数据
<table id="produse">
<thead>
<tr>
<th class="fluid">First Column</th>
<th class="fixed">Fixed Column</th>
<th class="fluid">Third Column</th>
</tr>
</thead>
<tbody>
<tr></tr>
</tbody>
</table>
整个JavaScript文件,以表达我想要做的事情:
$(function(){
//arata categoriile
$('.menu').on('click', function(){
$('#box').toggle('slide').show();
$.ajax({
url:'fetchsubmenu.php',
data : {nume : $(this).attr('data-value')},
dataType : 'json',
success:function(data){
console.log(data);// process your response
showObjects(data);
}
});
});
function showObjects(obiecte){
$('#box tbody').html('');
for(var i=0; i<obiecte.length; i++){ //Functia care arata obiectele
var aparat = obiecte[i];
$('#box tbody').append(getRow(aparat));
}
}
function getRow(aparat){
var row = '<tr>'+
'<td>' + '<a class="linkin" data-value='+aparat.id+' href="produs.html" >'+aparat.nume+'</a>' + '</td>'+
'</tr>';
return row;
}
// arata produsele dupa click pe linkul de categorie
$(document).on('click', '.linkin', function(){
$.ajax({
url:'foodstore.php',
dataType:'JSON',
data : {id : $(this).attr('data-value')},
success: function(data){
console.log(data);// process your response
var rows = '';
$.each(data,function(aparat){
rows+= '<td>'+'<div id="prod">'+
'<div>'+ '<img src='+aparat.imagine+' width="150" height="80" />' +'</div>'+
'<div>'+ aparat.nume + '</div>' + //functia care le aranjeaza
'<div>'+ aparat.pret +' lei' + '</div>'+
'<div>'+'<button type = "button" id = "comanda">'+'Comanda'+'</button>'+'</div>'
+ '</div>'+'</td>';
});
$('#produse').html(rows);
}
});
});
});
和php文件:
$conn=mysql_connect('localhost','root','');
mysql_select_db('alinDataBase');
$idcat = $_GET['id'];
$query = "SELECT * FROM electrocasnice WHERE subcat = '$idcat' ";
$result = mysql_query($query,$conn);
$output='';
while($row = mysql_fetch_array($result)){
$output=array(
"nume" => $row["nume"],
"pret" => $row["pret"],
"imagine" => $row["imaginepath"]
);
$records[] = $output;
}
echo json_encode($records);
mysql_close($conn);
所以我想要做的是,一旦我点击链接,我想用我的数据库中的数据打开页面,但页面是空白的(除了表thead
)。我知道代码有点乱(我是新手)谢谢。
答案 0 :(得分:0)
您正在发送:
data : {nume : $(this).attr('data-value')}
但你读到了:
$idcat = $_GET['id'];
答案 1 :(得分:-1)
没有测试,我可以告诉你需要包装这段代码:
$.each(data,function(aparat){
rows+= '<td>'+'<div id="prod">'+
'<div>'+ '<img src='+aparat.imagine+' width="150" height="80" />' +'</div>'+
'<div>'+ aparat.nume + '</div>' + //functia care le aranjeaza
'<div>'+ aparat.pret +' lei' + '</div>'+
'<div>'+'<button type = "button" id = "comanda">'+'Comanda'+'</button>'+'</div>'
+ '</div>'+'</td>';
});
进入tr标签
$.each(data,function(aparat){
rows+= '<tr><td>'+'<div id="prod">'+
'<div>'+ '<img src='+aparat.imagine+' width="150" height="80" />' +'</div>'+
'<div>'+ aparat.nume + '</div>' + //functia care le aranjeaza
'<div>'+ aparat.pret +' lei' + '</div>'+
'<div>'+'<button type = "button" id = "comanda">'+'Comanda'+'</button>'+'</div>'
+ '</div>'+'</td></tr>';
});
另外,我会使用$('#produse tbody').html(rows);
代替$('#produse').html(rows);
答案 2 :(得分:-1)
到目前为止,我能够在这里指出小变量声明错误
<div class="container">
<div class="mydiv">h & v aligned</div>
</div>
我不确定您是否正在获取数据。否则试试这个,让我知道这是否有效。