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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Ошибка

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
zheev
Отправлено: 27 Октября, 2015 - 18:48:21
Post Id


Новичок


Покинул форум
Сообщений всего: 30
Дата рег-ции: Окт. 2015  


Помог: 0 раз(а)




Ребят, помогите пожалуйста решить проблемку( Не могу понять в чем проблема.

Fatal error: Call to a member function set_data() on a non-object in /home/p335602/www/xn--43-jlcauan 2aim2fwe.xn--p1ai/handlers/novos troiki.php on line 15

Вот я вызываю функцию

PHP:
скопировать код в буфер обмена
  1. echo $view->set_data('title', $row['title']);


Вот класс:

PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3. include_once("function/db.php");
  4.  
  5. class view{
  6.        
  7.         private $pr = array();
  8.        
  9.         const catalog = "new_kv";
  10.         const page = "pages";
  11.        
  12. static public function get_url(){
  13.         $url = explode("/", $_GET['page']);
  14.         $count = count($url)-1;
  15.         return $url[$count];   
  16. }
  17.  
  18. static public function get_null_url(){
  19.         $url = explode("/", $_GET['page']);
  20.         return $url[0];
  21. }
  22.  
  23. static public function get_amount_url(){
  24.         if($_GET['page']==''){$_GET['page']='';}
  25.         $url = explode("/", $_GET['page']);
  26.         $count = count($url)-1;
  27.         return $count;
  28. }
  29.  
  30. public function set_data($cont, $name){
  31.         $this->pr[$cont]=$name;
  32. }
  33.  
  34.  
  35.  
  36. public function get_data($cont){
  37.         global $perfix,$db;
  38.                
  39.                         $content = $db->prepare("select * from `".$perfix.self::page."` where `url`=?");
  40.                         $content->execute(array(self::get_url()));
  41.                         $row = $content->fetch();      
  42.                        
  43.                         if($row[$cont]!=''){
  44.                                 $this->pr[$cont]=$row[$cont];
  45.                         }
  46.                        
  47.                         return $this->pr[$cont];
  48. }
  49.  
  50.        
  51. static public function get_handlers(){
  52.         global $perfix,$db;
  53.                 if($_GET['page']==""){$_GET['page']=" ";}
  54.                 $handlers = $db->prepare("select * from `".$perfix.self::page."` where `url`=?");
  55.                 $handlers->execute(array(view::get_null_url()));
  56.                 $row = $handlers->fetch();
  57.                         if($row['handlers']!=''){
  58.                                 $path = $_SERVER['DOCUMENT_ROOT']."/handlers/".$row['handlers'].".php";
  59.                                 if(file_exists($path)){
  60.                                         include_once($path);
  61.                                 }      
  62.                         }
  63. }
  64.  
  65. static public function get_breadcrumbs(){
  66.         global $perfix,$db;
  67.                
  68.                
  69.                 $urls = explode("/",$_SERVER['REQUEST_URI']);
  70.                 $return[] = '<a href="'.$sitehost.'/">Главная</a>';
  71.                 $curls = count($urls);
  72.                                
  73.                 for($i=0;$i++<=$curls-1;){
  74.                                 $select = $db->prepare("select * from `".$perfix.self::page."` where `url`=?");
  75.                                 $select->execute(array($urls[$i]));
  76.                                 $row = $select-> fetch();
  77.                         if($row['url']!=''){                   
  78.                                 $url.= ''.$row['url'];
  79.                                 $return[] = '<a href="'.$url.'">'.$row['title'].'</a>';
  80.                         }
  81.                                
  82.                 return implode(' / ', $return);
  83.                
  84.                 }
  85. }      
  86.  
  87.  
  88. }
  89.  
  90. $view = new view;
  91.  
  92. ?>
  93.  


Заранее спасибо
 
 Top
andrewkard
Отправлено: 27 Октября, 2015 - 18:53:29
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


Помог: 30 раз(а)




zheev
PHP:
скопировать код в буфер обмена
  1. class View{};
  2.  
  3. $view = new View();
  4.  
  5. var_dump($view);
 
 Top
zheev
Отправлено: 27 Октября, 2015 - 19:29:09
Post Id


Новичок


Покинул форум
Сообщений всего: 30
Дата рег-ции: Окт. 2015  


Помог: 0 раз(а)




andrewkard пишет:
zheev
PHP:
скопировать код в буфер обмена
  1. class View{};
  2.  
  3. $view = new View();
  4.  
  5. var_dump($view);


Выдает это - object(view)#2 (1) { ["pr":"view":private]=> array(0) { } }
(Добавление)
andrewkard пишет:
zheev
PHP:
скопировать код в буфер обмена
  1. class View{};
  2.  
  3. $view = new View();
  4.  
  5. var_dump($view);


А в файле обработчике, где вызываю функцию, пишет NULL
 
 Top
Viper
Отправлено: 27 Октября, 2015 - 20:29:22
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




zheev я так и не понял, у вас статический или динамический класс? Вы уж определитесь.


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
zheev
Отправлено: 27 Октября, 2015 - 20:33:37
Post Id


Новичок


Покинул форум
Сообщений всего: 30
Дата рег-ции: Окт. 2015  


Помог: 0 раз(а)




Viper пишет:
zheev я так и не понял, у вас статический или динамический класс? Вы уж определитесь.


Динамический
(Добавление)
Viper пишет:
zheev я так и не понял, у вас статический или динамический класс? Вы уж определитесь.


А если можно помогите навести в коде "порядок" так как я ООП не давно начал изучать
 
 Top
Viper
Отправлено: 27 Октября, 2015 - 20:36:13
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




zheev пишет:
Динамический
так и делайте его динамическим. А то у вас фарш из мух и котлет.


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
zheev
Отправлено: 27 Октября, 2015 - 20:39:26
Post Id


Новичок


Покинул форум
Сообщений всего: 30
Дата рег-ции: Окт. 2015  


Помог: 0 раз(а)




Viper пишет:
zheev пишет:
Динамический
так и делайте его динамическим. А то у вас фарш из мух и котлет.


Не поможете?
 
 Top
Viper
Отправлено: 27 Октября, 2015 - 23:13:13
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




https://gist[dot]github[dot]com/Globulop[dot][dot][dot]b5f8d8c775084a2b мог что-то упустить(поздно уже, залипаю).


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
zheev
Отправлено: 28 Октября, 2015 - 09:04:03
Post Id


Новичок


Покинул форум
Сообщений всего: 30
Дата рег-ции: Окт. 2015  


Помог: 0 раз(а)




Viper пишет:
https://gist[dot]github[dot]com/Globulop[dot][dot][dot]b5f8d8c775084a2b мог что-то упустить(поздно уже, залипаю).


Спасибо большое)) но ошибка не пропала((
 
 Top
andrewkard
Отправлено: 28 Октября, 2015 - 11:11:27
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


Помог: 30 раз(а)




zheev
Ошибка означает, что в момент вызова функции set_data $view не является объектом:
zheev пишет:
$view->set_data('title', $row['title']);

что подтверждает
zheev пишет:
где вызываю функцию, пишет NULL

(Добавление)
Уберите все методы, добавляйте по одному и проверяйте на создание.
 
 Top
zheev
Отправлено: 28 Октября, 2015 - 15:04:39
Post Id


Новичок


Покинул форум
Сообщений всего: 30
Дата рег-ции: Окт. 2015  


Помог: 0 раз(а)




И как быть(
andrewkard пишет:
zheev
Ошибка означает, что в момент вызова функции set_data $view не является объектом:
zheev пишет:
$view->set_data('title', $row['title']);

что подтверждает
zheev пишет:
где вызываю функцию, пишет NULL

(Добавление)
Уберите все методы, добавляйте по одному и проверяйте на создание.
 
 Top
andrewkard
Отправлено: 28 Октября, 2015 - 17:18:14
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


Помог: 30 раз(а)




Уберите все методы (функции), добавляйте по одному(одной) и проверяйте на создание.
 
 Top
zheev
Отправлено: 28 Октября, 2015 - 18:11:30
Post Id


Новичок


Покинул форум
Сообщений всего: 30
Дата рег-ции: Окт. 2015  


Помог: 0 раз(а)




Вот что выдает object(view)#2 (3) { ["pr":"view":private]=> array(0) { } ["page"]=> string(5) "pages" ["catalog"]=> string(6) "new_kv" }

andrewkard пишет:
Уберите все методы (функции), добавляйте по одному(одной) и проверяйте на создание.
 
 Top
andrewkard
Отправлено: 28 Октября, 2015 - 18:15:33
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


Помог: 30 раз(а)




zheev
Ошибки нет? Вызывайте этот:
PHP:
скопировать код в буфер обмена
  1.  
  2. $view->set_data('title', $row['title']);
  3.  


без echo
 
 Top
zheev
Отправлено: 28 Октября, 2015 - 18:25:17
Post Id


Новичок


Покинул форум
Сообщений всего: 30
Дата рег-ции: Окт. 2015  


Помог: 0 раз(а)




Все равно ошибка(

andrewkard пишет:
zheev
Ошибки нет? Вызывайте этот:
PHP:
скопировать код в буфер обмена
  1.  
  2. $view->set_data('title', $row['title']);
  3.  


без echo
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Объектно-ориентированное программирование »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB