2015-09-29 5 views
-2

Доброе утро, Я пытаюсь использовать суперглобальный «$ _GET» в классе PHP, но ни один из моих 4-х решений не работал ... Вот моя последняя попытка, может кто-то угодить скажите мне, что не так? Спасибо

public $a; 


    function __construct($options = null, $initialize = true, $error_messages = null) { 
     $this->response = array(); 

       if(isset($_GET['album']){ 
      $this->a = $_GET['album']; 
     }else{ 
      $this->a = null 
     } 

     $this->options = array(
      'script_url' => $this->get_full_url().'/'.basename($this->get_server_var('SCRIPT_NAME')), 
      'upload_dir' => dirname($this->get_server_var('SCRIPT_FILENAME')).'/files/',$a,'/', 
      'upload_url' => $this->get_full_url().'/files/',$a,'/', 

...... 
} 
+0

Включен ли ваш URL '? Album = ' ?? – Epodax

+0

Конечно, я пробовал несколько значений. –

+0

вы могли бы рассмотреть возможность передачи $ _GET в конструктор (как лучший подход к дизайну) – BobbyTables

ответ

0
if(isset($_GET['album'])) //missing paranthesis here............. 
{ 
     $this->a = $_GET['album']; 
}else{ 
     $this->a = null 
    } 
+0

Ох .. :) спасибо за исправление, но все же, это не работает. –

0

Похоже, вы конкатенации URL с запятой:

'upload_dir' => dirname($this->get_server_var('SCRIPT_FILENAME')).'/files/',$a,'/', 
'upload_url' => $this->get_full_url().'/files/',$a,'/', 

Но если $ а нуль вы получите двойной слэш. И в этой строке отсутствует точка с запятой

$this->a = null