Получить имя пользователя из URL и установить в виде строки.Но это ничего не возвращает - PullRequest
0 голосов
/ 30 июня 2011

Я пытаюсь вернуть текущее имя пользователя. Я получаю имя пользователя из URL и получаю доступ методом $_GET['user'].

Но когда я пытаюсь использовать метод get, он не возвращает имя, а возвращает пустое.

echo $_GET['user']; // giving myname

$userName=$_GET["user"];

function getUserName()
{
global $userName;       
    if(isset($userName)){   
        return $userName;
    }else{
        return "defaultuser";
    }
}

Я тоже это пробовал:
$userName="".$_GET['user']."";

Но когда я просто даю $userName="myname";, это работает. Так есть ли проблемы в этой строке $userName=$_GET["user"];.

Ответы [ 2 ]

1 голос
/ 30 июня 2011

Попробуйте это

http://www.mysite.com/index.php?user=myname

Метод 1:

if(isset($_GET['user'])) {
    $username = $_GET['user'];
} else {
    $username = 'defaultUser';
}

Метод 2:

function getUsername() {
   $username = (isset($_GET['user'])) ? $_GET['user'] : 'defaultUser';
   return $username;
}

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

P.S .: Если вы планируете использовать приведенный выше код для запросов к базе данных, не забудьте использовать mysql_real_escape_string()

0 голосов
/ 19 июля 2011

попробуйте это:

function getUserName()
{

    if(isset($_GET['user'])){   
        return $_GET['user'];
    }else{
        return "defaultuser";
    }
}  

Вам не нужно иметь другой var, также $_GET является суперглобальным, поэтому вам не нужен глобальный оператор

...