Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/256.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/402.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Webrequest未完全工作_Php_Javascript_Mysql_Html_Httpwebrequest - Fatal编程技术网

Php Webrequest未完全工作

Php Webrequest未完全工作,php,javascript,mysql,html,httpwebrequest,Php,Javascript,Mysql,Html,Httpwebrequest,我有个小问题。我想进行自动搜索,但webrequest automatic的结果与我按enter键时的结果有所不同 我希望结果完全相同,结果应该是我按下enter键时得到的结果 代码请求: function showUser(str, str2) { if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code f

我有个小问题。我想进行自动搜索,但webrequest automatic的结果与我按enter键时的结果有所不同

我希望结果完全相同,结果应该是我按下enter键时得到的结果

代码请求:

function showUser(str, str2)
{
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)
{
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
}
} 
xmlhttp.open("GET", "klanttabel.php?search=" + encodeURIComponent(str) + "&search2=" +       encodeURIComponent(str), true);
xmlhttp.send();
}
代码查询为我提供了正确的结果

if($search != ''){

$where[] = "( klant_id LIKE '%" .$search."%' OR  voornaam LIKE '%" .$search."%' OR     achternaam LIKE '%" .$search."%' OR email LIKE '%"        .$search."%' OR plaats LIKE '%"   .$search."%' OR bedrijfsnaam LIKE '%" .$search."%' ) ";

if($search2 != ''){
$where[] = " ( klant_id LIKE '%" .$search2."%' OR voornaam   LIKE '%" .$search2."%' OR   achternaam LIKE '%" .$search2."%' OR email LIKE '%" .$search2."%' OR   plaats LIKE '%"   .$search2."%' OR bedrijfsnaam LIKE '%" .$search2."%') ";
}
$query_where = (is_array($where))?" WHERE ".implode(" AND ", $where):""; 
$result = mysql_query("SELECT * FROM klant ".$query_where." ORDER BY klant_id DESC");
$i = 0;
}
我有两个输入字段,因此您可以搜索两个不同的值。当我输入它们并按enter键时,它会给出相应的结果

但如果我让它自动执行,它只会给出我输入的最后一个字段的结果

所以基本上,它只搜索最后一个字段。我认为这与我的输入字段有关,下面是代码:

<form method="get">
<input onfocus="this.value=''" type="text" name="search" value="Naam..."    onkeyup="showUser(this.value)"></input><br />

<input onfocus="this.value=''" type="text" name="search2" value="Plaats..."  onkeyup="showUser(this.value)"></input><input type="submit" value="zoeken" name="submit2"   </input></form>

一个更优雅的解决方案,而不是使用本机XMLHttpRequests和所有其他解决方法是。此外,还有其他事项:

输入元素没有结束符。 一个在JSFIDLE上工作的修改示例:

HTML:


您可能希望缩进代码,并使用类似jQuery的库来执行请求。这肯定会让你的生活更轻松。好吧,但我该怎么做呢?我没有使用jQuery的任何经验…请访问并下载该库。这里有一些非常好的教程,介绍你想做的基本知识。另一个图书馆是yui——根本不起作用。我下载了jquery.js,并将其作为以下内容包括在内:我有你发布的js代码…@Andre Woons:你实际上必须将函数包装成$function{…}这样,当页面加载完成时,这些函数就会被调用。它现在根本不会自动搜索。也许你有msn或电子邮件,这样你就可以接收所有代码了?@Andre Woons:你能先试试我贴的小提琴吗?也许你可以推断出如何实现你所追求的目标。
<form id="form">
    <input type="text" id="search" name="search" value="Naam..." />

    <br />

    <input type="text" id="search2" name="search2" value="Plaats..." />

    <input type="submit" value="zoeken" />
</form>
$(function() {

$('#search, #search2').focus(function() { // clear on focus
    $(this).val('');
}).keyup(function() { // perform request on keyup
    $.ajax({ type: 'GET',
             url:  'klanttabel.php',
             data: { search:  $('#search').val(),
                     search2: $('#search2').val() },
             success: function(text) {
                 $("#txtHint").html(text);
             }
           });
});

});