2017-01-09 80 views
0

我有一个数据存储在数据库中(Charles,Dale,Jack,William)。我使用PHP代码从数据库中提取数据,最初显示所有数据。现在我添加一个文本字段,可以在其中编写上述四个名称中的任何一个,并且在键入上只显示写在文本字段上的名称。但是当我清除文本框时,我遇到了问题,它没有显示任何内容。当我清除文本字段时,我想要显示从数据库提取的所有数据。如何处理退格键

下面给出的是我的jQuery代码。

$('#search_data').keyup(function() { 
    var search_data = $('#search_data').val(); 
    $.ajax({ 
     type: "POST", 
     url: 'db.php', 
     data: {search: search_data}, 
     dataType: 'html', 
     success: function(result) { 
      $(".container").html(result); 
     } 
    }); 
}); 

<input type="text" id="search_data" class="col-xs-2"> 
<input type="submit" id="search_button" class="btn-info go inline" value="Search" style="cursor:pointer; position:absolute; "> 

下面给出的是我的SQL代码

$result2 = mysql_query("SELECT * FROM employee WHERE Employee_name LIKE '%$s%' "); 

回答

0

如果您要选择一切,如果输入的是空的,你可以这样做:

$sql = "SELECT * FROM employee"; 
if (!empty($s)) { 
    $sql .= " WHERE Employee_name LIKE '%".mysql_real_escape_string($s)%."'"; 
} 

$result2 = mysql_query($sql); 

几件事情要注意:

  1. mysql_*函数已在PHP版本7中删除,不应使用。
  2. 您的代码(并且此示例可能仍然存在)容易受到SQL注入的影响。

您必须迁移到使用mysqli_*函数或PDO并准备好语句。