Форум программистов, компьютерный форум, киберфорум
PHP: Фреймворки
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
4 / 4 / 0
Регистрация: 29.03.2011
Сообщений: 38
1

Кодировка для поиска CodeIniter

13.10.2013, 18:54. Показов 573. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
фреймворк CodeIgniter; редактор - phpdesigner 8; xampp.
В общем проблема такая: поиск работает только по одному английскому слову (букве).
т.е. если запрос tovar 2 или 22 или товар и тд то результаты не выводятся, а в поле поиска %xx%xx%
в адресной строке пишется все правильно, т.е. локалхост/сайт/контроллер/функция/запрос
Везде кодировка UTF-8 (и в базе и на страницах)
Модель
PHP
1
2
3
4
5
6
7
8
9
10
11
12
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
//Модель Search для поиска товаров 
class Search_model extends CI_Model {
    
    function search($terms)
  {
    // Выполнение запроса и возврат результата
    $this->db->like('description',$terms);
        $query  =   $this->db->get('products');
        return $query->result();
  }  
}
Контролер:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
//Контроллер для поиска товаров
class Search extends CI_Controller {
    
function searchf($search_terms = '')
  {
    // Если форма отправлена перепишем URL добавив строку запроса
    // обратите внимание, что с некоторыми символами 
    // могут быть проблемы.
    if ($this->input->post('search'))
    {
      redirect('/search/searchf/' . $this->input->post('search'));
    }
    if ($search_terms)
    {
      // Загрузка модели и выполнение поиска по БД
      $this->load->model('search_model');
      $results = $this->search_model->search($search_terms);
    }
    // Загрузка файла вида и вывод на экран
    $this->load->view('search_view', array(
      'search_terms' => $search_terms,
      'results' => @$results
    ));
  } 
}
Вид
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
            <?php $this->load->helper('form'); ?>
            <?php echo form_open($this->uri->uri_string); ?>
            <?php echo form_label('search:', 'search'); ?>
            <?php echo form_input(array('name' => 'search', 'id' => 'search-box', 'value' => $search_terms)); ?>
            <?php echo form_submit('search22', 'Search'); ?>
            <?php echo form_close(); ?>
            <?php if ( ! is_null($results)): ?>
              <?php if (count($results)): ?>
                <ul>
                <?php foreach ($results as $result): ?>
                  <li><h3><a href="<?=base_url();?>index.php/product/view/<?php echo $result->title_en; ?>"><?php echo $result->title; ?></a></h3></li>
                <?php endforeach ?>
                </ul>
              <?php else: ?>
                <p><em>There are no results for your query.</em></p>
              <?php endif ?>
            <?php endif ?>
У кого какие варианты?

Добавлено через 42 секунды
Добавлено через 17 часов 10 минут
РЕШЕНИЕ ЕСТЬ!
надо было воспользоваться функцией urlencode
PHP
1
$decoded = rawurldecode($search_terms);
Ну и в моделях заменить принимающий параметр
PHP
1
2
3
4
5
6
7
function search($decode)
  {
    // Выполнение запроса и возврат результата
    $this->db->like('description',$decode);
        $query  =   $this->db->get('products');
        return $query->result();
  }
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.10.2013, 18:54
Ответы с готовыми решениями:

WebBrowser.Navigate - передача параметров поиска и неверная кодировка
Подскажите кто-нибудь, пожалуйста, почему по нажатию кнопки слово &quot;аврора&quot; в составе ссылки из...

Неверная кодировка сводит на нет результаты поиска по листу
Всем привет, форумчане! Делаю проверку в коде значения содержащегося в ячейке. В ячейке находится...

Создать программу для поиска первого нечетного элемента в заданном массиве методом бинарного поиска
Бинарный поиск Первый нечетный, помогите пожалуйста.

1.3 В механизме полнотекстового поиска для поиска с учетом синонимов слова "алый" используется выражение:
Доброго времени суток! 1. !алый 2. 'алый' 3. (алый) 4. &quot;алый&quot; Где найти в конфигурации...

0
13.10.2013, 18:54
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.10.2013, 18:54
Помогаю со студенческими работами здесь

Создание формы поиска на сайте. Почему не выводится результат поиска при вводе символов в поле поиска?
Добрый день! Создаю форму поиска с всплывающими подсказками. Попробую, выложить строки кода,...

Кодировка для Git в консоли для виндоус
Кто может подсказать как сделать, чтобы кодировка правильно отображалась в обычной консоли на...

Кодировка для ie
Добрый день. Подскажите пожалуйста пишу самую простую страничку, вот код: &lt;!DOCTYPE HTML&gt; &lt;html...

Кодировка для строки
Всем привет. Подскажите, пожалуйста, каким образом строка...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru