w3schools PHP AJAX实时搜索,

时间:2017-03-12 10:56:16

标签: php ajax livesearch

当我开始使用php,xml和所有有趣的时候。

在php code from this example at w3school中,我添加了一个变量:

//lookup all links from the xml file if length of q>0
if (strlen($q)>0) {
  $hint="";
  for($i=0; $i<($x->length); $i++) {
    $y=$x->item($i)->getElementsByTagName('title');
    $z=$x->item($i)->getElementsByTagName('url');

//添加了变量

    $w=$x->item($i)->getElementsByTagName('w');

    if ($y->item(0)->nodeType==1) {
      //find a link matching the search text
      if (stristr($y->item(0)->childNodes->item(0)->nodeValue,$q)) {
        if ($hint=="") {
          $hint="<a href='" . 
          $z->item(0)->childNodes->item(0)->nodeValue . 
          "' target='_blank'>" . 
          $y->item(0)->childNodes->item(0)->nodeValue . "</a>

//在一些文本中添加了var in循环:

         <p>textLabel: " . $w->item(0)->childNodes->item(0)->nodeValue . " </p>";

我的xml包含这样的内容:

<title>1</title>
<url>5</url>
<w></w>

我想检查变量'w'是否为空,在我的情况下,它足以测试一个整数,可能是这样的吗?:

if (is_int($w)) {
    # code...
  }

我尝试使用if语句修改php代码,但每当我插入它时,我只生成了意外的if_t错误。

期望的最终结果是显示labelText和值,如果有int,否则,什么都不显示。

  

修改

我的变量上有var_dump()我正在弄清楚发生了什么。空节点返回NULL,所以很高兴知道。

我继续插入if语句:

if ($c->item(0)->nodeType==1) {
  //find a name matching the search text
  if (stristr($c->item(0)->childNodes->item(0)->nodeValue,$q)) {
    if ($hint=="") {
      //new if statement to check if node value is NULL
      if (is_null($f->item(0)->childNodes->item(0)->nodeValue)) {
          $lbl="";
      } else{$lbl='some text to display or not';
      }

      $hint=

然后我将$ lbl连接到我想要文本的地方,并且它有效!

我确信有一个更好的方法,但随着我编程exp的日子,我很高兴能够弄明白!尽管如此,可以以更好的方式提供建议:)

0 个答案:

没有答案