Apabila ajax meminta data daripada pangkalan data dalam php dan mengembalikannya kepada javascript menggunakan JSON, beberapa data tidak boleh dipaparkan Bolehkah anda menyelesaikan masalah ini?
过去多啦不再A梦
过去多啦不再A梦 2017-06-13 09:22:04
0
1
916

Apa yang saya tulis ialah fungsi penapisan Saya menggunakan Ajax untuk meminta maklumat daripada pangkalan data dalam PHP dan menggunakan JSON untuk menghantarnya kembali ke JavaScript Walau bagaimanapun, apabila memasukkan kandungan yang berkaitan, beberapa penapis boleh dibaca daripada pangkalan data, manakala yang lain tidak. Saya fikir Tanya bagaimana untuk menyelesaikannya.

kod javascript:

submitElement.addEventListener('click',function(event){
     if(searchDescription === 1){
         search = filterByTitleElement.value;
     }else if(searchDescription === 2){
         search = filterByDescriptionElement.value;
     }

     //将输入的搜索信息传递给php文件,让其再数据库中找到相应的匹配项。

         var xmlhttp;
         if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
             xmlhttp = new XMLHttpRequest();
         }
         else {// code for IE6, IE5
             xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
         }
         xmlhttp.onreadystatechange = function () {
             if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                 a = eval('(' + xmlhttp.responseText + ')');
                                  tableDisplay.innerHTML = a.length;
                 }
             }
         };
         xmlhttp.open("GET", "SearchDeal.php?inputMessage=" + search + "&searchdescription=" + searchDescription, true);
         xmlhttp.send();
 });

 function pageForDisplay(number){
     var result = "<thead><tr><td>Search Result</td></tr></thead><tr><td><table border=\"1\" id=\"inside\">";
     for(var i = 0; i < 5 ;i++){
         result = result + " <tr><td><p class=\"photoInside\"><a href=\"DetailsPage.php\"><img src=\"travel-images/square-medium/" + a[number + i]['PATH'] +"\"></a>" +
             "<h3><a href=\"DetailsPage.php\">" + a[number + i]['Title'] +"</a></h3>" +
             "<p>" + a[number + i]['Description'] + "</p>" +
             "</p></td></tr>";
     }
      result = result + "</table></td></tr>";
     return result;

kod php:

     $messageForSearch = $_GET["inputMessage"];
$messageForNumber = $_GET["searchdescription"];
$conn = mysqli_connect("localhost","root","","travel");
if($messageForNumber == 1){
    $sql = "SELECT ImageID,Title,Description ,PATH FROM travelimage where Title REGEXP '[$messageForSearch]'";
}else if($messageForNumber == 2){
   $sql = "SELECT ImageID,Title,Description ,PATH FROM travelimage where Description REGEXP '[$messageForSearch]'";
}
$a = mysqli_query($conn,$sql);
$json = mysqli_fetch_all($a,MYSQLI_ASSOC);
//print_r($json);
echo json_encode($json);
}

Mengikut kod di atas, kadangkala a.length akan berubah, tetapi kadangkala ia tidak akan berubah (biasanya apabila terdapat terlalu banyak hasil yang ditapis). Walau bagaimanapun, jika saya menggantikan baris terakhir kod dalam php dengan print_r($json), akan ada output.

过去多啦不再A梦
过去多啦不再A梦

membalas semua(1)
仅有的幸福

json memerlukan pengekodan utf8, semak sama ada data yang diperolehi daripada pangkalan data semuanya dikodkan utf8.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan