2017-12-06 6 views
0

私のユーザ名データベースで検索したいけど、キー押し機能を認識しません。また、私はこれが私ののindex.phpPHP by keypress jquery

<!DOCTYPE html> 
 
<html> 
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 
 

 
<head> 
 
    <title></title> 
 
    <?php include 'search.php'; ?> 
 

 
    <script> 
 
    $(document).ready(function() { 
 
     $("#textbox1").keypress(function() { 
 
     $.ajax({ 
 
      type: "GET", 
 
      url: "search.php", 
 
      success: function(data) { 
 
      $("#main").html(data); 
 
      } 
 
     }); 
 
     }); 
 
    }); 
 
    </script> 
 

 
    <form method="POST"> 
 
    enter keyword to search<br> 
 
    <input type="text" name="textbox1" id="textbox1"> 
 
    <br><br> 
 
    <div id="main"></div> 
 
    </form> 
 
</head> 
 

 
<body>

これは私の検索されている(何もボタンがないためISSETを使用することはできません)最初の負荷にsearch.phpを防ぎたいです.phpconnection.phpが正しく動作しています。私はinputの使用を示唆し:

$.ajax({ 
    type: "GET", 
    url: "search.php", 
    data: {textbox1: $(this).val()}, 
    success: function (data) { 
      $("#main").html(data); 
    } 
}); 

注:ので、私は次のようにあなたがあなたのAjaxリクエストのデータとして、あなたのPHPページにフィールドの値を送信する必要があり、ここで

<?php 

    include 'connection.php'; 

    $search_value = $_POST['textbox1']; 
    $query = "SELECT username FROM users WHERE username LIKE '" . $search_value . "%'"; 
    $conn_status = mysqli_query($conn, $query); 

    while($row = $conn_status->fetch_assoc()) 
    { 
     echo $row['username'] . '<br>'; 
    } 
?> 
+0

のみ**質問につき1つの**ご質問ください。複数の質問がある場合は、複数の質問をしてください。 –

+0

[ブラウザの開発者ツールでAJAXリクエスト/レスポンスを見たことがありますか?プロジェクトにjQueryライブラリを含めましたか?エラーが報告されていますか? Webサーバーでこれを実行していますか?](http://jayblanchard.net/basics_of_jquery_ajax.html) –

+0

keypressが機能していないことをどのように知っていますか? PHPに何も送っていないので、何が押されたのか分かりません。他のキーボードイベントで確認しましたか? –

答えて

2

それを貼り付けていませんよユーザー入力をトラッキングすると効率的です。

$("#textbox1").on('input', function(){ 
    //Your logic here 
}); 

これは役立ちます。

+0

最初の開封時にインクルードファイルが読み込まれないようにする方法 –

+0

_first opening_の意味は? –

+0

今すぐ使えますか? –

0

このスニペットは、間違ったHTMLがあり、サーバーにデータを送信するのを忘れているため、改訂版を使った作業です。

<!DOCTYPE html> 
 
<html> 
 

 
<head> 
 
    <title></title> 
 
</head> 
 

 
<body> 
 
    <form method="POST"> 
 
    enter keyword to search<br> 
 
    <input type="text" name="textbox1" id="textbox1"> 
 
    <br><br> 
 
    <div id="main"></div> 
 
    </form> 
 

 

 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 
 
    <script> 
 
    $(document).ready(function() { 
 

 
     $("#textbox1").on('input',function() { 
 

 
     var searchText = $(this).val(); 
 
     console.log("Calling PHP with value:" + searchText); 
 

 
     $.ajax({ 
 
      type: "GET", 
 
      data: "textbox1=" + searchText, 
 
      url: "search.php", 
 
      success: function(data) { 
 
      $("#main").html(data); 
 
      }, 
 
      error: function (xhr, ajaxOptions, thrownError) { 
 
      console.log(xhr.responseText); 
 
      } 
 
     }); 
 
     }); 
 
    }); 
 
    </script> 
 
</body> 
 

 
</html>