Как правильно извлекать получить переменные
Я все еще немного новичок в php и задавался вопросом, как лучше извлечь переменную $_GET из url.
Например, как бы я мог захватить его из чего-то вроде этого:
http://www.blahblahblah.com/reset_password.php?token=3072420e7e32cbcf304da791537d757342cf5957
Просто хочу получить все от " token=etc..."
Заранее спасибо
4 ответа:
Простой способ:
$token = isset($_GET['token']) ? $_GET['token'] : null;Если
tokenзадано, то оно присваивается$token, в противном случае$tokenравно null.
$_GETявляется массивом:$token = $_GET['token'];Поэтому, если вы распечатаете, вы должны увидеть маркерную часть строки запроса:
echo "'Token: $token'"; // should display 'Token: 3072420e7e32cbcf304da791537d757342cf5957';Примечание
Если вы пытаетесь использовать $ token для поиска базы данных mysql, вам нужно сначала избежать косых черт, чтобы предотвратить проблемы безопасности:
$token = mysql_real_escape_string($_GET['token']);Кроме того, вы сначала должны иметь соединение mysql перед вызовом
mysql_real_escape_string().Примечание V. 2
В строке запроса, ваш токен будет все от
?token=до тех пор, пока PHP не встретит разделитель ключа запроса/пары (обычно&и;). А именно:http://www.blahblahblah.com/reset_password.php?token=3072420e7e32cbcf304da791537d757342cf5957&token2=otherstuff
&token2=otherstuffбудет еще один ключ, доступный по$_GET['token2'], так что это не будет проблемой с$_GET['token'].