Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Ошибка Khana 3.2 ErrorException [ Strict ]: Creating default object from empty value Ошибка Kohana 3.2 ErrorException [ Strict ]: Creating default object from empty valueErrorException [ Strict ]: Cr
Форумы портала PHP.SU » » CMS и фреймворки » Ошибка Khana 3.2 ErrorException [ Strict ]: Creating default object from empty value Ошибка Kohana 3.2 ErrorException [ Strict ]: Creating default object from empty valueErrorException [ Strict ]: Cr

Страниц (1): [1]
 

1. relight - 29 Февраля, 2012 - 22:18:05 - перейти к сообщению
текст ошибки ErrorException [ Strict ]: Creating default object from empty value
ругается на строчку

PHP:
скопировать код в буфер обмена
  1. $this->templete->catalog = $top;


вот полный код

PHP:
скопировать код в буфер обмена
  1. class Controller_Index extends Controller_Template {
  2.    
  3.         public $template = 'v_base';
  4.        
  5.         public function before()
  6.         {
  7.             parent::before();
  8.             //получаем список категорий из модели
  9.             $categories = Model::factory('catalog')->categories();
  10.             //получаем список лучших товаров
  11.             $top = Model::factory('catalog')->top();
  12.             $this->template->site_name = 'Элли';
  13.             $this->template->site_description = 'То, что вы хотели!';
  14.             $this->templete->top = $top;
  15.             $this->template->categories = $categories;
  16.            
  17.          }
  18.  
  19.         public function action_index()
  20.         {
  21.             $this->template->title_page = 'Главная страница';
  22.             $this->template->content = ' ';
  23.         }
  24.        
  25.         public function action_catalog() {
  26.             $product = Model::factory('catalog')->all_product();
  27.             $this->template->title_page = 'Каталог товаров';
  28.             $this->template->content = View::factory('v_catalog', array(
  29.                 'product' => $product,
  30.             ));
  31.         }
  32.        
  33.  
  34. }


модель
PHP:
скопировать код в буфер обмена
  1. class Model_Catalog extends Model {
  2.         //каталог товаров
  3.         public function all_product()
  4.         {
  5.             return array(
  6.                 'Товар1' => 228,
  7.                 'Товар2' => 44,
  8.                 'Товар3' => 400,
  9.                 'Товар4' => 50,
  10.             );
  11.         }
  12.         //Лучшие товары
  13.         public function top()
  14.         {
  15.             return array(
  16.                 'Товар3',
  17.                 'Товар1',
  18.             );
  19.         }
  20.         //Список категорий
  21.         public function categories()
  22.         {
  23.             return array(
  24.                 'Категория1',
  25.                 'Категория2',
  26.                 'Категория3',
  27.                
  28.             );
  29.         }
  30.        
  31.        
  32.  
  33. }


Вид

PHP:
скопировать код в буфер обмена
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html>
  3.     <head>
  4.         <title><?=$site_name?>|<?=$title_page?></title>
  5.         <meta http-equiv="Content-Type" content="text/html; charset=utf-8">  
  6.     </head>
  7.     <body>
  8.         <div class="head">
  9.             <h1><?=$site_name?></h1>
  10.             <h3><?=$site_description?></h3>
  11.            
  12.         </div>
  13.         <div class="main-content">
  14.             <div class="left-block">
  15.                 <h4>Категории</h4>
  16.                  <?foreach($categories as $cat):?>
  17.                     <ul>
  18.                         <li><?=$cat?></li>
  19.                     </ul>
  20.                 <?endforeach?>
  21.             </div>
  22.             <div class="content">
  23.                 <h4><?=$title_page?></h4>
  24.                 <?=$content?>
  25.             </div>
  26.             <div class="right-block">
  27.                 <h4>Лучшие товары</h4>
  28.                 <?foreach($top as $t):?>
  29.                     <ul>
  30.                         <li><?=$t?></li>
  31.                     </ul>
  32.                 <?endforeach?>
  33.             </div>
  34.         </div>
  35.         <div class="footer">
  36.            
  37.         </div>
  38.     </body>
  39. </html>
2. Мелкий - 01 Марта, 2012 - 08:40:01 - перейти к сообщению
Определитесь, templete или template

relight пишет:
ругается на строчку

Вопрос: а почему этой строчки в приведённом коде нету?
3. relight - 01 Марта, 2012 - 21:08:08 - перейти к сообщению
строчка есть в контроллере)) Спасибо! не усмотрел, орфографическую ошибку))) ломал голову не один час))
4. pantela - 21 Мая, 2016 - 17:37:43 - перейти к сообщению
Хоть и топик усторел, но у меня тоже это проблемма, но она только на хосту... на локалке без ошибки работает...
ErrorException [ Warning ]: Creating default object from empty value

CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. class Controller_Admin_Pages_Dashboard_Dashboard extends Controller_Admin_Sbase {
  3.  
  4.         public function action_index()
  5.         {
  6.  
  7.                 $block_left->object_booking = View::factory('admin/widgets/stat_progress/objects/object_booking');
  8.  
  9.                 $this->template->block_left = array($block_left);
  10.  
  11.         }
  12.        
  13. }
  14.  



CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. class Controller_Admin_Sbase extends Controller_Core {
  3.  
  4.         public $template = 'admin/v_base';
  5.  
  6.         ...
  7. }
  8.  


Локально print_r выводит
CODE (htmlphp):
скопировать код в буфер обмена
  1. (
  2.     [0] => stdClass Object
  3.         (
  4.             [object_booking] => View Object
  5.                 (
  6.                     [_file:protected] => Z:\home\test37.ru\www\application\views\admin/widgets/stat_progress/objects/object_booking.php
  7.                     [_data:protected] => Array
  8.                         (
  9.                         )
  10.  
  11.                 )
  12.  
  13.         )
  14.  
  15. )


Ну а уже вывод пытаюсь вывести так
CODE (htmlphp):
скопировать код в буфер обмена
  1. if (isset($block_left))
  2. {
  3.         foreach($block_left[0] as $bleft) echo $bleft;
  4. }

 

Powered by ExBB FM 1.0 RC1