打开包含数据库中提取数据的新页面

时间:2016-11-03 18:24:55

标签: javascript php

我正在尝试打开一个包含数据库数据的新页面,我这样做了:

这是我要显示我的数据

    <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 +'&nbsplei' + '</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)。我知道代码有点乱(我是新手)谢谢。

3 个答案:

答案 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 +'&nbsplei' + '</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 +'&nbsplei' + '</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>

我不确定您是否正在获取数据。否则试试这个,让我知道这是否有效。