sql >> データベース >  >> RDS >> Mysql

「一致するものが見つかりません」を表示するか、DIVの結果を非表示にします(AJAXおよびMySQL)

    更新

    有効なデータを確認し、データベースクエリの結果があるかどうかを確認する必要があります。レコードがない場合は、データが見つからないというメッセージを出力できます。$ExecQueryの出力を確認する必要があります。 ifを設定します それに応じた条件。出力と結果を教えてください。これがお役に立てば幸いです。

    ajax.phpを更新 最終更新セクション

    echo "<li onclick='fill(`".$Result['Name']."`)'>".$Result['Name']."</li>";
    

    完全なajax.php

      <?php
        //Including Database configuration file.
        include "db.php";
        //Getting value of "search" variable from "script.js".
    if (isset($_GET['search'])) {
    //Search box value assigning to $Name variable.
    $Name = $_GET['search'];
    //Search query.
    $Query = "SELECT Name FROM search WHERE Name LIKE '$Name%' LIMIT 5";
    //Query execution
    $ExecQuery = MySQLi_query($con, $Query);
    //Creating unordered list to display result.
        if ($ExecQuery->num_rows > 0) {
             echo "<ul>";
             while ($Result = MySQLi_fetch_array($ExecQuery)) {
                // use the onclick function that defined in js file. you can use the `  sign in js instead of ' if you needed.
                echo "<li onclick='fill(`".$Result['Name']."`)'>".$Result['Name']."</li>";
             }
            echo "</ul>";
        }else{
            echo "<ul><li>No Result Found!</li></ul>";      
        }
    }
    die();
    ?>
    

    そしてあなたのajaxコード。

    function fill(value) {
      console.log(value);
      $('#search').val(value);
      $('#display').hide();
    }
     $(document).ready(function() {
    //On pressing a key on "Search box" in "index.php" file. This function will be called.
    $("#search").keyup(function() {
       //Assigning search box value to javascript variable named as "name".
       $('#display').hide();
       $('#no-results').css("display", "none");
       var name = $('#search').val();
       //Validating, if "name" is empty.
       if (name == "") {
           //Assigning empty value to "display" div in "index.php" file.
           $('#no-results').css("display", "block");
       }
       //If name is not empty.
       else {
           //AJAX is called.
           $.ajax({
               //AJAX type is "Post".
               type: "GET",
               //Data will be sent to "ajax.php".
               url: "ajax.php",
               //Data, that will be sent to "ajax.php".
               data: {
                   //Assigning value of "name" into "search" variable.
                   search: name
               },
               //If result found, this funtion will be called.
               success: function(html) {
    
               if (html == '<ul><li>No Result Found!</li></ul>') {
                  $('#no-results').css("display", "block");
                }else{
                   //Assigning result to "display" div in "index.php" file.
                     $("#display").html(html).show();
                 }
    
               }
           });
       }
     });
     });
    

    必要に応じて他の部品を交換してください。



    1. シンプルなPHP投票システム

    2. xamppのインストール後にapacheを実行中にエラーが発生しました

    3. GROUPBYの場合のグループ内の操作

    4. SQL Server AlwaysOn(可用性グループ)アーキテクチャとステップバイステップのインストール-2