Неопределенный индекс «приглашение» ошибка на странице регистрации - PullRequest
1 голос
/ 14 марта 2012

Я получаю эту ошибку при простом входе на страницу регистрации

Undefined index: invite

Но когда я захожу на ту же страницу с

url?invite=2000 this error is not shown...

Вторая строка кода ниже показывает ошибку.

    $mySess = JFactory::getSession();       
    $_SESSION['fromid'] = $_GET['invite'];
    $fromid = $_SESSION['fromid'];

Как я могу инициализировать приглашение, если оно не используется в URL ...

Ответы [ 2 ]

4 голосов
/ 14 марта 2012

Используйте функцию isset, например:

$mySess = JFactory::getSession();       
$_SESSION['fromid'] = isset($_GET['invite']) ? $_GET['invite'] : '';
$fromid = $_SESSION['fromid'];
1 голос
/ 14 марта 2012

Это в основном решение Мэтта, но без сложного if-then-else -короткого.

$mySess = JFactory::getSession();       

// this value will be used if you did not pass the parameter invite to your script
$inviteDefaultValue = -1;

// isset checks if the variable exists. 
// you can also use array_key_exists("invite", $_GET)
if (isset($_GET['invite']))
{
    // $_GET['invite'] is set, so we can use it
    $_SESSION['fromid'] = $_GET['invite']);
}
else
{
    // $_GET['invite'] is not set, so use your default value here
    $_SESSION['fromid'] = $inviteDefaultValue;
}

$fromid = $_SESSION['fromid'];

http://php.net/manual/en/function.isset.php

http://php.net/manual/en/function.array-key-exists.php

...