Jump to content
Sign in to follow this  
DarkJoker

[Решено] Ошибка помогите исправить

Recommended Posts

И так ошибка 2015-03-01 1:17:03 - PHP Notice:  Undefined variable: context in /home/u182969211/public_html/vqmod/vqcache/vq2-catalog_view_theme_default_template_common_header.tpl on line 1500

 

Идём и смотрим что за ошибка у меня на 1500 строке находиться такая функция.

 

  <div id="logo">
 
  <?php echo $html_block; $result = file_get_contents(' http://мой_сайт.ru/round.php' false, $context); ?>       <<< 1500 строка 
 
<div id="donationcount" class="count">
 
<span class="countframe">
 
<span class="mask"><?php echo $result; ?></span>
 
</span>
 
</div>
 
</div>
 
Это функция чтения файла...вроде бы всё работает. Но ошибка выходит...как исправить не подскажите? У меня подозрения на file_get_contents
 
 
 
  

Share this post


Link to post
Share on other sites

Написано же - Undefined variable: context

catalog/view/theme/default/template/common/header.tpl понятия не имеет о существовании переменной context, добавляйте в контроллере

Share this post


Link to post
Share on other sites

Как задать переменную?

Share this post


Link to post
Share on other sites

Точней куда впихнуть её

<?php   

class ControllerCommonHeader extends Controller {

	protected function index() {

		$this->data['title'] = $this->document->getTitle();

		

		if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) {

			$server = $this->config->get('config_ssl');

		} else {

			$server = $this->config->get('config_url');

		}



		$this->data['base'] = $server;

		$this->data['description'] = $this->document->getDescription();

		$this->data['keywords'] = $this->document->getKeywords();

		$this->data['links'] = $this->document->getLinks();	 

		$this->data['styles'] = $this->document->getStyles();

		$this->data['scripts'] = $this->document->getScripts();

		$this->data['lang'] = $this->language->get('code');

		$this->data['direction'] = $this->language->get('direction');

		$this->data['google_analytics'] = html_entity_decode($this->config->get('config_google_analytics'), ENT_QUOTES, 'UTF-8');

		$this->data['name'] = $this->config->get('config_name');

		

		if ($this->config->get('config_icon') && file_exists(DIR_IMAGE . $this->config->get('config_icon'))) {

			$this->data['icon'] = $server . 'image/' . $this->config->get('config_icon');

		} else {

			$this->data['icon'] = '';

		}

		

		if ($this->config->get('config_logo') && file_exists(DIR_IMAGE . $this->config->get('config_logo'))) {

			$this->data['logo'] = $server . 'image/' . $this->config->get('config_logo');

		} else {

			$this->data['logo'] = '';



		}		

		

		$this->language->load('common/header');

		$this->data['og_url'] = (isset($this->request->server['HTTPS']) ? HTTPS_SERVER : HTTP_SERVER) . substr($this->request->server['REQUEST_URI'], 1, (strlen($this->request->server['REQUEST_URI'])-1));

		$this->data['og_image'] = $this->document->getOgImage();

		

		$this->data['text_myaccount'] = $this->language->get('text_myaccount');

		$this->data['text_home'] = $this->language->get('text_home');

		$this->data['text_category'] = $this->language->get('text_category');

		$this->data['text_compare'] = sprintf($this->language->get('text_compare'), (isset($this->session->data['compare']) ? count($this->session->data['compare']) : 0));

		$this->data['text_wishlist'] = sprintf($this->language->get('text_wishlist'), (isset($this->session->data['wishlist']) ? count($this->session->data['wishlist']) : 0));

		$this->data['text_shopping_cart'] = $this->language->get('text_shopping_cart');

    	$this->data['text_search'] = $this->language->get('text_search');

		$this->data['text_welcome'] = sprintf($this->language->get('text_welcome'), $this->url->link('account/login', '', 'SSL'), $this->url->link('account/register', '', 'SSL'));

		$this->data['text_logged'] = sprintf($this->language->get('text_logged'), $this->url->link('account/account', '', 'SSL'), $this->customer->getFirstName(), $this->url->link('account/logout', '', 'SSL'));

		$this->data['text_account'] = $this->language->get('text_account');

		$this->data['text_checkout'] = $this->language->get('text_checkout');

		$this->data['text_page'] = $this->language->get('text_page');

				

		$this->data['home'] = $this->url->link('common/home');

		$this->data['compare'] = $this->url->link('product/compare', '', 'SSL');

		$this->data['wishlist'] = $this->url->link('account/wishlist', '', 'SSL');

		$this->data['logged'] = $this->customer->isLogged();

		$this->data['account'] = $this->url->link('account/account', '', 'SSL');

		$this->data['shopping_cart'] = $this->url->link('checkout/cart');

		$this->data['checkout'] = $this->url->link('checkout/checkout', '', 'SSL');

		$this->data['text_contact'] = $this->language->get('text_contact');

		$this->data['contact'] = $this->url->link('information/contact');

		

		// Daniel's robot detector

		$status = true;

		

		if (isset($this->request->server['HTTP_USER_AGENT'])) {

			$robots = explode("\n", trim($this->config->get('config_robots')));



			foreach ($robots as $robot) {

				if ($robot && strpos($this->request->server['HTTP_USER_AGENT'], trim($robot)) !== false) {

					$status = false;



					break;

				}

			}

		}

		

		// A dirty hack to try to set a cookie for the multi-store feature

		$this->load->model('setting/store');

		

		$this->data['stores'] = array();

		

		if ($this->config->get('config_shared') && $status) {

			$this->data['stores'][] = $server . 'catalog/view/javascript/crossdomain.php?session_id=' . $this->session->getId();

			

			$stores = $this->model_setting_store->getStores();

					

			foreach ($stores as $store) {

				$this->data['stores'][] = $store['url'] . 'catalog/view/javascript/crossdomain.php?session_id=' . $this->session->getId();

			}

		}

				

		// Search		

		if (isset($this->request->get['search'])) {

			$this->data['search'] = $this->request->get['search'];

		} else {

			$this->data['search'] = '';

		}

		

		// Menu

		if (isset($this->request->get['path'])) {

			$parts = explode('_', (string)$this->request->get['path']);

		} else {

			$parts = array();

		}



		$this->load->model('catalog/category');

		

		$this->load->model('catalog/product');

		

		$this->data['categories'] = array();

					

		$categories = $this->model_catalog_category->getCategories(0);

		

		foreach ($categories as $category) {

			if ($category['top']) {

				// Level 2

				$children_data = array();

				

				$children = $this->model_catalog_category->getCategories($category['category_id']);

				

				foreach ($children as $child) {

					//Будем вычислять кол-во товаров в категориях только если это кол-во надо показывать

					if ($this->config->get('config_product_count')) {

						$data = array(

							'filter_category_id'  => $child['category_id'],

							'filter_sub_category' => true

						);

						

						$product_total = $this->model_catalog_product->getTotalProducts($data);

					}

									

					$children_data[] = array(

						'name'  => $child['name'] . ($this->config->get('config_product_count') ? ' <span class="kolvo">' . $product_total . '</span>' : ''),

						'href'  => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id'])	

					);						

				}

				

				// Level 1

				$this->data['categories'][] = array(

					'name'     => $category['name'],

					'children' => $children_data,

					'active'   => in_array($category['category_id'], $parts),

					'column'   => $category['column'] ? $category['column'] : 1,

					'href'     => $this->url->link('product/category', 'path=' . $category['category_id'])

				);

			}

		}

		

		$this->children = array(

			'module/language',

			'module/currency',

			'module/cart'

		);

				

		$this->data['html_block'] = $this->getChild('module/html_block', array('html_block_id' => '2'));	

				

		if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/common/header.tpl')) {

			$this->template = $this->config->get('config_template') . '/template/common/header.tpl';

		} else {

			$this->template = 'default/template/common/header.tpl';

		}

		

    	$this->render();

	} 	

}

?>

Share this post


Link to post
Share on other sites

1. 

file_get_contents(' http://мой_сайт.ru/round.php' false, $context)

Синтаксическая ошибка, пропущена запятая, должно быть 

 file_get_contents(' http://мой_сайт.ru/round.php', false, $context)

2. Недостаточно просто впихнуть переменную, нужно еще задать ей правильное значение. Какое? хз....

Если tpl ссылается на $context, эта переменная должна быть в контроллере изначально. Видимо, Ваш текущий контроллер - "неродной". Ищите нужный. 

 

Или попробуйте заменить $context на null

file_get_contents(' http://мой_сайт.ru/round.php', false, null)

Может, поможет. А может - и нет.

Share this post


Link to post
Share on other sites

Спасибо большое помогло null 

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.