2012-04-01 1 views
0

Я создаю простую форму, и в этой форме я хочу иметь функцию автозаполнения. http://www.script-tutorials.com/autocomplete-with-php-jquery-mysql-and-xml/ я прочитал этот учебник, и для моих данных я создал файл XML в следующем формате,AutoComplete не предлагает вход в строку ввода текста PHP и XML

<inputs> 
    <input>AA</input> 
    <input>BAC</input> 
    <input>AWT</input> 
    <input>tag</input> 
    <input>AHY</input> 
</inputs> 

И метод, который обрабатывает автозаполнения

$aValues = $aIndexes = array(); 
     $sFileData = file_get_contents('data2.xml'); // reading file content 
     $oXmlParser = xml_parser_create('UTF-8'); 
     xml_parse_into_struct($oXmlParser, $sFileData, $aValues, $aIndexes); 
     xml_parser_free($oXmlParser); 

     $aTagIndexes = $aIndexes['ITEM']; 
     if (count($aTagIndexes) <= 0) exit; 
     foreach($aTagIndexes as $iTagIndex) { 
      $sValue = $aValues[$iTagIndex]['value']; 
      if (strpos($sValue, $sParam) !== false) { 
       echo $sValue . "\n"; 
      } 
     } 
    break; 

Но проблема в том, когда я m вводя в поле, он всегда предлагает данные, которые являются строчными. Например, если я набираю либо «A», либо «a», он предлагает только тег данных «

В чем проблема, как мне это решить?

Спасибо.

ответ

4

Функция strpos() чувствительна к регистру, поэтому возвращается только тег, содержащий букву «a». Вы должны использовать stripos(), если вы хотите проверить регистр без учета регистра.

+0

О, спасибо! – CanCeylan

Смежные вопросы