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 Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
Exponat
Отправлено: 04 Сентября, 2015 - 14:35:46
Post Id



Частый гость


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


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




В классе объявляю переменные :
PHP:
скопировать код в буфер обмена
  1. class ModelCheckoutMist{
  2.  
  3. private $login    = 'test';
  4. private $password = 'test';    
  5. private $function = 'test';    
  6. private $where    = 'test';  
  7. private $order = 'test';
  8. private $sign = md5 ($login. $password . $function . $where . $order);
  9. <sign>{$this->sign}</sign>
  10.  


Но мне пишет ошибку: Parse error: syntax error, unexpected '(', expecting ',' or ';' in /home/name/web/site.net/public_h tml/mist.php on line 41

Оно ссылается на эту строчку: private $sign = md5 ($login. $password . $function . $where . $order);

Что тут не правильно? Какой синтаксис?
 
 Top
DeepVarvar Супермодератор
Отправлено: 04 Сентября, 2015 - 14:38:04
Post Id



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


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


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




Ты пытаешься засунуть в декларацию какую-то логику.
Так нельзя.
 
 Top
Exponat
Отправлено: 04 Сентября, 2015 - 14:44:59
Post Id



Частый гость


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


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




Вот код всего класса:
PHP:
скопировать код в буфер обмена
  1. <?
  2. class ModelCheckoutMist{
  3.  
  4. private $login    = 'test';
  5. private $password = 'test';    
  6. private $function = 'test';    
  7. private $where    = 'test';  
  8. private $order = 'test';
  9. private $sign = md5 ($login. $password . $function . $where . $order);
  10.  
  11.     private function sendRequest($xml) {
  12.         $ch = curl_init();
  13.         curl_setopt($ch, CURLOPT_URL, 'http://api1c.meest-group.com/services/1C_Query.php');
  14.         curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  15.         curl_setopt($ch, CURLOPT_HTTPHEADER, Array("Content-Type: text/xml"));
  16.         curl_setopt($ch, CURLOPT_HEADER, 0);
  17.         curl_setopt($ch, CURLOPT_POSTFIELDS, $xml);
  18.         curl_setopt($ch, CURLOPT_POST, 1);
  19.         curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
  20.         $response = curl_exec($ch);
  21.         curl_close($ch);
  22.  
  23.         return $response;
  24.     }
  25.  
  26.     public function getOfficess() {
  27.                 $xml = '<?xml version="1.0" encoding="utf-8"?>
  28. <param>
  29.    <login>{$this->login}</login>
  30.  <function>{$this->function}</function>
  31.  <where>{$this->where}</where>
  32.  <order>{$this->order}</order>
  33.  <sign>{$this->sign}</sign>
  34. </param>';
  35.  
  36.  
  37.  
  38.         $cache = md5($xml);
  39.         if (!empty($offices)) {
  40.             return $offices;
  41.         } else {
  42.             $offices = $this->sendRequest($xml);
  43.             return $offices;
  44.         }
  45.     }
  46. }
  47.  
  48. $np = new ModelCheckoutMist();
  49. echo $np->getOfficess();?>
  50.  


Разве я не правильно передаю переменные?
 
 Top
andrewkard
Отправлено: 04 Сентября, 2015 - 14:58:21
Post Id


Участник


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


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




Exponat
Нельзя так:
PHP:
скопировать код в буфер обмена
  1.  
  2. private $sign = md5 ($login. $password . $function . $where . $order);
  3.  


нужно:


и уже потом присвоить этому свойству значение, например в конструкторе.
 
 Top
Exponat
Отправлено: 04 Сентября, 2015 - 15:00:57
Post Id



Частый гость


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


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




А как тогда $sign присвоить все другие переменные?
 
 Top
andrewkard
Отправлено: 04 Сентября, 2015 - 15:12:09
Post Id


Участник


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


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




Exponat пишет:
А как тогда $sign присвоить все другие переменные?


Так:
PHP:
скопировать код в буфер обмена
  1.  
  2. class myClass{
  3.     public $one='test';
  4.     public $two;
  5.  
  6.     function __construct(){
  7.         $this->two = 'two_'.$this->one;
  8.     }
  9.  
  10. }
  11.  
  12. $obj = new myClass();
  13. echo $obj->two;
  14.  
 
 Top
Exponat
Отправлено: 04 Сентября, 2015 - 16:12:38
Post Id



Частый гость


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


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




andrewkard, спасибо, так получается.
А как зашифровать в md5?
(Добавление)
Получилось.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB