Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.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
Javascript AJAX搜索不返回任何内容_Javascript_Php_Jquery_Html_Ajax - Fatal编程技术网

Javascript AJAX搜索不返回任何内容

Javascript AJAX搜索不返回任何内容,javascript,php,jquery,html,ajax,Javascript,Php,Jquery,Html,Ajax,我改变了你的两个建议。地址栏以前没有改变,所以我不确定现在发生了什么。单击“立即搜索”时,搜索结果div中不会显示任何内容,地址栏将更改为: index.php?habbo_name=test&send=Search 当前index.php: <html> <head> <title>Personnel Tracking System - E-3+</title> <link href="style.css" rel="stylesh

我改变了你的两个建议。地址栏以前没有改变,所以我不确定现在发生了什么。单击“立即搜索”时,搜索结果div中不会显示任何内容,地址栏将更改为:

index.php?habbo_name=test&send=Search

当前index.php:

<html>
<head>
  <title>Personnel Tracking System - E-3+</title>
  <link href="style.css" rel="stylesheet" type="text/css" media="screen" />
  <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>

  <script language="JavaScript">
    function tS(){ x=new Date(tN().getUTCFullYear(),tN().getUTCMonth(),tN().getUTCDate(),tN().getUTCHours(),tN().getUTCMinutes(),tN().getUTCSeconds()); x.setTime(x.getTime()); return x; }
    function tN(){ return new Date(); }
    function lZ(x){ return (x>9)?x:'0'+x; }
    function y2(x){ x=(x<500)?x+1900:x; return String(x).substring(2,4) }
    function dT(){ if(fr==0){ fr=1; document.write('<font size=2 face=Arial color=white><b><span id="tP">'+eval(oT)+'</span></b></font>'); } document.getElementById('tP').innerHTML=eval(oT); setTimeout('dT()',1000); }
    var mN=new Array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'),fr=0,oT="tS().getDate()+' '+mN[tS().getMonth()]+' '+y2(tS().getYear())+' '+':'+':'+' '+lZ(tS().getHours())+':'+lZ(tS().getMinutes())+':'+lZ(tS().getSeconds())+' '";
  </script>

  <script type="text/javascript">
    $(function() {
      $("#search_habbos").bind('submit',function() {
        $.post( "search_results.php", { value: $('#habbo_name').val() })
            .done(function( data ) {
              $("#search_results").html(data);
            });
        return false;
      });
    });
  </script>

</head>
<body>

<script>
  $(document).ready( function(){
    $.fn.snow();
  });
</script>

<div id="navbar">
  <img src="images/logo.png" style="position: absolute; top: 7px; left: 50px;" />
  <center>
    <img class="navbar" src="images/homebutton.png" />
    <img class="navbar" src="images/e-3button.png" />
    <img class="navbar" src="images/resignedbutton.png" />
    <img class="navbar" src="images/firedbutton.png" />
    <img class="navbar" src="images/desertersbutton.png" />
    <img class="navbar" src="images/mosrosterbutton.png" />
    <img src="images/divider.png" />
    <p><script language="JavaScript">dT();</script></p>
  </center>
</div>

<div id="search">
  <center>
    <b><p>Search</p></b>
    <form action="" id="search_habbos">
      <input type="text" name="habbo_name" id="habbo_name" size="30">
      <br>
      <input type="submit" value="Search" name="send" id="send">
    </form>
  </center>
  <div id="search_results"></div>
</div>

</html>

人员跟踪系统-E-3+
函数tS(){x=newdate(tN().getUTCFullYear(),tN().getUTCMonth(),tN().getUTCDate(),tN().getUTCHours(),tN().getUTCMinutes(),tN().getUTCSeconds());x.setTime(x.getTime());返回x;}
函数tN(){返回新日期();}
函数lZ(x){返回(x>9)?x:'0'+x;}
函数y2(x){x=(x

在页面顶部使用此新地址更新jquery链接

  <script type="text/javascript" src="//code.jquery.com/jquery-1.10.2.min.js"></script>
不需要var value=$('#habbo_name').val();并在php代码中尝试

  $habbo_name_final = '%'.$_POST['value'].'%';

无需使用$habbo_name变量

我理解您的意思(mysql、变量中的plop等)

PHP的第三行:

$habbo_name = '".$_POST['value']."'
首先,需要一个分号

然后,将内部双引号移动到
value
附近。本质上,这会给
$habbo\u name
一个确切的
”$\u POST[
值,然后它会出错,因为您很早就终止了表达式,PHP看到
value
并跳出

更正: 这里不需要使用两个变量。一个变量就可以了。这与我下面的答案类似,但他也不会解析任何一个变量,因为他很早就退出了,就像你在表达式上做的那样

编辑:

你的整个页面看起来像是1998年的。有太多东西要指出,所以我们跳过了

要进行故障排除,请将整个AJAX表达式移到页面的末尾,并尝试使用此表达式,而不是现在使用的表达式:

$('#search_habbos').bind('submit', function() {
    $.post('search_results.php', { value: $('#habbo_name').val() }, function( data ) {
        $('#search_results').prepend( data );
    });
});
我很确定您的SQL查询需要两个小的
'
s

"SELECT * FROM `personnel` WHERE `habbo_name` LIKE :search ORDER BY `habbo_name`";
需要:

"SELECT * FROM `personnel` WHERE `habbo_name` LIKE ':search' ORDER BY `habbo_name`";

让我们知道这对您是如何起作用的

如脚本所示,您在第3行缺少了一个;。我现在得到以下信息:注意:未定义的索引:C:\Program Files(x86)\xampp\htdocs\personal\search\u results.php中的值,在第3行,后跟“输入搜索词!”,现在这意味着$\u POST['value']未发送。让我检查您的js代码是的!但请记住也要更改php代码。您现在有什么?好吧,现在我终于发现您有错误。更新您的Jquery源代码链接,就像上面我展示的代码一样。实际上,我们的代码工作得很好,但唯一的问题是。您附加的Jquery文件中不支持done方法e、 它仍然没有返回div中的任何内容,并将地址栏更改为我在主帖子中的内容。有什么想法吗?我显然没有完全阅读你的代码。将
value
更改为
habbou\u name
同样的事情仍在发生o.OOK尝试一下,让我们知道我会给我们带来一些麻烦
$('#search_habbos').bind('submit', function() {
    $.post('search_results.php', { value: $('#habbo_name').val() }, function( data ) {
        $('#search_results').prepend( data );
    });
});
"SELECT * FROM `personnel` WHERE `habbo_name` LIKE :search ORDER BY `habbo_name`";
"SELECT * FROM `personnel` WHERE `habbo_name` LIKE ':search' ORDER BY `habbo_name`";