Используя 1,7,
Прямо сейчас у меня есть это:
<input type="text" name="searchword" class="keyword_search_input" size="32" maxlength="255" value="<? echo JRequest::getString('searchword'); ?>" placeholder="<? echo JText::_('Keyword(s)'); ?>"/><br />
Но я хочу поместить ключевые слова, разделенные пробелом или запятой, в массив, который будет передан этому:
$this->keywords = JRequest::getVar('searchword');
if ($keywords != "") $where_clause[] = ' s.keywords LIKE "%'.$keywords.'%"';
function getSearchword(){
return $this->keywords;
}
Любая помощь будет оценена ...
Ник
UPDATE:
Я понял это. Спасибо @travega за то, что указал мне правильное направление. Вот мое поле ввода:
<input type="text" name="searchword" class="keyword_search_input" size="32" maxlength="255" value="<? echo JRequest::getString('searchword'); ?>" placeholder="<? echo JText::_('Keyword(s)'); ?>"/><br />
Это передает строку в функцию конструкции в моем controller.php:
$this->keywords = JRequest::getVar('searchword');
Эти слова в этой строке, разделенные запятой и пробелом, затем помещаются в массив с помощью разнесения:
$this->keywords_array = explode(", ",$this->keywords);
Этот массив пользовательских слов сравнивается с базой данных ключевых слов MYSQL:
if ($keywords != "") $where_clause[] = ' s.keywords LIKE "%'.$this->keywords_array[0].'%" OR s.keywords LIKE "%'.$this->keywords_array[1].'%" ';
Единственная проблема, с которой я столкнулся в этом решении, заключается в том, что мой поиск ограничен двумя значениями в Keywords_array. Я хотел бы найти способ установить количество значений в поиске равным количеству значений в массиве ...