Jump to content
Sign in to follow this  
epson950

Ошибка при поиске

Recommended Posts

ocStore 1.5.5.1.2

при поиске чего либо возникает ошибка

Parse error: syntax error, unexpected T_PUBLIC in /home/********/daylapku.ru/htdocs/oc/vqmod/vqcache/vq2-catalog_controller_product_search.php on line 521

пробовал разные модули поиска и разные шаблоны- не помогает. Подозреваю, что проблема может быть в стороннем модуле, но в каком понять не могу. Помогите разобраться в чем дело.

 

на всякий случай код со строки 521 до конца

				public function ajax()
				{
					// Contains results
					$data = array();
					if( isset($this->request->get['keyword']) ) {
						// Parse all keywords to lowercase
						$keywords = strtolower( $this->request->get['keyword'] );
						// Perform search only if we have some keywords
						if( strlen($keywords) >= 3 ) {
							$parts = explode( ' ', $keywords );
							$add = '';
							// Generating search
							foreach( $parts as $part ) {
								$add .= ' AND (LOWER(pd.name) LIKE "%' . $this->db->escape($part) . '%"';
								$add .= ' OR LOWER(p.model) LIKE "%' . $this->db->escape($part) . '%")';
							}
							$add = substr( $add, 4 );
							$sql  = 'SELECT pd.product_id, pd.name, p.model FROM ' . DB_PREFIX . 'product_description AS pd ';
							$sql .= 'LEFT JOIN ' . DB_PREFIX . 'product AS p ON p.product_id = pd.product_id ';
							$sql .= 'LEFT JOIN ' . DB_PREFIX . 'product_to_store AS p2s ON p2s.product_id = pd.product_id ';
							$sql .= 'WHERE ' . $add . ' AND p.status = 1 ';
							$sql .= 'AND pd.language_id = ' . (int)$this->config->get('config_language_id');
							$sql .= ' AND p2s.store_id =  ' . (int)$this->config->get('config_store_id'); 
							$sql .= ' ORDER BY p.sort_order ASC, LOWER(pd.name) ASC, LOWER(p.model) ASC';
							$sql .= ' LIMIT 15';
							$res = $this->db->query( $sql );
							if( $res ) {
								$data = ( isset($res->rows) ) ? $res->rows : $res->row;
				
								// For the seo url stuff
								$basehref = 'product/product&keyword=' . $this->request->get['keyword'] . '&product_id=';
								foreach( $data as $key => $values ) {
									$data[$key] = array(
										'name' => htmlspecialchars_decode($values['name'] . ' (' . $values['model'] . ')', ENT_QUOTES),
										'href' => $this->url->link($basehref . $values['product_id'])
									);
								}
							}
						}
					}
					echo json_encode( $data );
				}
				
			
?>

Share this post


Link to post
Share on other sites

А можете сюда приложить весь файл?

Меня терзают смутные сомнения...с какого перепуга у Вас в контроллере оказались запросы?

Share this post


Link to post
Share on other sites

livesearch/живой поиск, или что там.

есть тема поддержки. туда и пишите.

Share this post


Link to post
Share on other sites

livesearch/живой поиск, или что там.

есть тема поддержки. туда и пишите.

 

Если имелся ввиду модуль Autosearch - то приведенный код не от него, скрипт livesearch.js в различных вариациях по всему инету выложен, я лишь за основу для модуля его брал.

 

А ошибка в коде вроде в том, что пропущена закрывающая скобка, добавить } перед ?> в самом конце

Edited by AlexDW

Share this post


Link to post
Share on other sites

да, имел в виду ваш модуль. или у вас там в product/product/ajax идет запрос?..

в любом случае - код сторонний. значит есть модуль или тема оформления "с плюшками". значит есть автор и должна быть поддержка.

upd:

не. причина как раз где-то выше. скорее всего где-то потеряна точка с запятой.

Edited by afwollis

Share this post


Link to post
Share on other sites

А ошибка в коде вроде в том, что пропущена закрывающая скобка, добавить } перед ?> в самом конце

не помогло :(

 

в любом случае - код сторонний. значит есть модуль или тема оформления "с плюшками". значит есть автор и должна быть поддержка.

Я новичок а opencart, поэтому ставил очень много модулей (для выбора лучшего и любопытства), а теперь сказать изза которого это произошло   мне лично сложно. Я вроде все модули поиска поудалял (в админке) и тему (шаблон) менял, но не помогло, поэтому сюда и обратился. Я конечно могу переставить ОС, но хотелось бы разобраться с этим.

Share this post


Link to post
Share on other sites

Да все мы когда-то были новичками ;)

 

А ошибка в том, что удалили скобку закрывающую ПЕРЕД функцией, добавьте } перед 521 строкой

Share this post


Link to post
Share on other sites
Parse error: syntax error, unexpected '}' in /home/********/daylapku.ru/htdocs/oc/vqmod/vqcache/vq2-catalog_controller_product_search.php on line 520

вот прикладываю весь файл на всякий случай. но меня еще смущает то, что даже при удалении этого файла он появляется снова. может править надо в каком то другом месте, а не в кэше?

vq2-catalog_controller_product_search.zip

Share this post


Link to post
Share on other sites

как говорится - "ясенпень! в другом месте!"

только неизвестно, контроллер @catalog/controller/product/search.php@ или какой-то xml файл...

Share this post


Link to post
Share on other sites

как говорится - "ясенпень! в другом месте!"

только неизвестно, контроллер @catalog/controller/product/search.php@ или какой-то xml файл...

Спасибо добрый человек! Пнул в правильном направлении :) Теперь я точно знаю что виноват вот этот xml

vqmod_livesearch.zip

 

Может можно его "починить", а то програмист из меня нулевой :(

Share this post


Link to post
Share on other sites

внесите код из него руками в файлы.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.