2016-03-28 19 views
0

Ich google dieses Problem, aber immer noch nicht die Antwort gefunden.

Ich versuche, Suche über Jquery JSON mit getJSON-Methode zu erstellen. dies ist mein Code

PHP file: report_cari.php

<?php 
header('Content-Type: application/json'); 
include "koneksi.php"; 
ini_set('display_errors', '0'); 


$sql = "SELECT RID,MESIN,DATE(HARI_TGL)AS TGL,TGL_REAL,PRODUK FROM adonan WHERE DATE(HARI_TGL) LIKE '%".$_REQUEST['term']."%' OR PRODUK LIKE '%".$_REQUEST['term']."%' GROUP BY RID ORDER BY TGL_REAL DESC"; 

$hasil = mysqli_query($mysqli, $sql); 
$results = array(); 

foreach($hasil as $row){ 

    $results[] = array(
      'RID'=> $row[RID], 
      'MESIN' => $row[MESIN], 
      'TGL' => $row[TGL], 
      'TGL_REAL' => $row[TGL_REAL], 
      'PRODUK' => $row[PRODUK], 
    ); 
} 


$json = json_encode($results); 

echo $json; 
?> 

and javascipt: report.php

<input id="CARILAH" data-type="search"> 


<div style="width: 100%; height: 400px; overflow: auto"> 
     <table data-role="table" id="tabel1" data-mode="columntoggle" class="ui-body-d ui-shadow table-stripe ui-responsive" data-column-btn-theme="b" data-column-btn-text="Columns to display..." 
     data-column-popup-theme="a" data-input="#filterTable-input"> 
     <thead> 
      <tr class="ui-bar-d"> 
      <th data-priority="1" align='center'>RID</th> 
      <th data-priority="1" align='center'>MESIN</th> 
      <th data-priority="1" align='center'>TGL</th> 
      <th data-priority="1" align='center'>WAKTU</th> 
      <th data-priority="1" align='center'>PRODUK</th> 
      </tr> 
     </thead> 
     <tbody> 
      <!--div id='records_table'></div--> 
     </tbody> 
     </table> 
</div> 

javascript

<script src="jqm2/jquery-2.1.4.min.js"></script> 
    <script src="jqm2/jquery.mobile-1.4.5.min.js"></script> 
    <script src="validation/jquery.validate.js"></script> 
    <script> 
    $(document).ready(function(){ 

/*for view data*/ 
    $.ajax({ 
     type: "POST", 
     url: "report_action.php", 
     dataType: "json", 

    success: function (response) { 

     // alert(JSON.stringify(response)); 

     var trHTML = ''; 
     $.each(response, function (i, item) { 

      trHTML += '<tr><td>' + item.RID + '</td><td>' + item.MESIN + '</td><td>' + item.TGL + '</td><td>' + item.TGL_REAL + '</td><td><a href="report_detail.php?RID='+ item.RID +'" data-ajax="false" target="_parent">' + item.PRODUK + '</a></td></tr>';  
     }); 
     $('#tabel1 tbody').append(trHTML); 
    }, 



}); 


    /*for searching data*/ 
    $("#CARILAH").keyup(function(){ 
     var oke = $(this).val(); 

      //alert(oke); 
      $.getJSON("report_cari.php", function(result){ 

       if (!json[0]) { 
        //console.log("NO DATA!") 
        alert("tidak ada data"); 
       }   
       else{ 
         var trHTML = ''; 
         $.each(response, function (i, item) { 

         trHTML += '<tr><td>' + item.RID + '</td><td>' + item.MESIN + '</td><td>' + item.TGL + '</td><td>' + item.TGL_REAL + '</td><td><a href="report_detail.php?RID='+ item.RID +'" data-ajax="false" target="_parent">' + item.PRODUK + '</a></td></tr>';  
        }); 
        $('#tabel1 tbody').append(trHTML); 

       }    


      }); 

    }); 

}); 
</script> 

diese Datei ist Ajax für die Suche kombinieren und für Anzeigen von Daten. aber nicht funktionieren. Daten anzeigen Arbeit. Suchdaten funktionieren nicht. Wie kann ich Daten von json_encode mit $ getJSON keyup event bekommen?

nb: report_cari.php work and can generate JSON.

Jeder kann helfen?

danke im voraus.

+0

ist diese Datei auf dem gleichen Niveau wie "report_cari.php" JS? .. scheint, wie die URL Problem. –

+0

Js Datei ist der gleiche Ort mit report.php – Uchsun

+0

überprüfen Sie den Anruf in Ihrem Browser Konsole..Es sollte Ihnen etwas zeigen, –

Antwort

1

Senden gesucht Parameter-Server wie unten, $.getJSON haben optionale Parameterdaten

$("#CARILAH").keyup(function(){ 
     var oke = $(this).val(); 

      $.getJSON("report_cari.php",{term : oke}, function(result){ 

       if (result.length == 0) { 
        console.log("NO DATA!") 

       }   
       else{ 
         var trHTML = ''; 
         $.each(result, function (i, item) { 

         trHTML += '<tr><td>' + item.RID + '</td><td>' + item.MESIN + '</td><td>' + item.TGL + '</td><td>' + item.TGL_REAL + '</td><td><a href="report_detail.php?RID='+ item.RID +'" data-ajax="false" target="_parent">' + item.PRODUK + '</a></td></tr>';  
        }); 
        $('#tabel1 tbody').append(trHTML); 

       }    


      }); 

    }); 
+0

Ich habe versucht, Ihren Rat, aber immer noch nicht arbeiten. Konsolenergebnis ReferenceError: Antwort ist nicht definiert, stürzt mein Code mit anderen jquery ab? – Uchsun

+0

Wenn Sie Antwort als Variable verwenden, dann ändern Sie es auch in Funktion (Antwort) in getJSON –

+0

Können Sie Ihre Antwort bearbeiten, weil ich immer noch nicht verstehe. – Uchsun