[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: простой вопрос по глобальным переменным
nighting
вот кусочек неправильного скрипта:
PHP
$bb =<<<HERE
<table border="0" width="100%" id="other">
    <tr>
        <td width="100%"><p align="center">
            Запомните свои регистрационные данные:
            Ваш логин: $_POST
['login']
            Ваш пароль: $_POST
['password']
HERE;


Как можно подсветить эти переменные, чтобы сервер не выдавал синтаксическую ошибку?

Если внести перед всем $login = $_POST['login']; и заменить в скрипте $_POST['login'] на $login, то вроде бы как ошибку не выдает, но таким способом не хотелось бы пользоваться...

И заодно еще один маленький вопросик не совсем по теме...
Обязательно указывать в заголовке <meta> кодировку страницы, или можно смело пологаться на браузеры?
Кодировка utf8



Спустя 9 минут, 54 секунды (21.01.2009 - 09:08) Guest написал(а):
Цитата
но таким способом не хотелось бы пользоваться...

Таким способом пользоваться желательно и необходимо, так как Вы рискуете получить еще и нотис при обращении к несуществующему элементу массива. Переменные нужно объявлять явно, примерно по такой схеме:
PHP
$login = isset($_POST['login'])?$_POST['login']:null;
А кодировку лучше выставлять заголовком:
PHP
header("Content-Type: text/html; charset=utf-8");

Спустя 52 минуты, 20 секунд (21.01.2009 - 10:00) nighting написал(а):
Guest
У меня стоит проверка на существование $_POST['login'] , если она не существует, то выполняется другая часть скрипта, поэтому нотис исключается...

По поводу заголовка - спасибо. А обязательно/желательно ли указывать?

Спустя 9 минут (21.01.2009 - 10:09) twin написал(а):
Вообще то сервер сам выставит кодировку, если в .htacces указать
AddDefaultCharset UTF-8
Но. Заголовок желателен, а скорее обязателен, потому что при переносе скрипта на другой хостинг могут возникнуть проблемы либо лишние телодвижения. А мета теги - вещь не надежная.

Спустя 10 минут, 9 секунд (21.01.2009 - 10:20) nighting написал(а):
twin
Ясно. Спасибо, буду указывать...

Спустя 5 минут, 20 секунд (21.01.2009 - 10:25) dfsq написал(а):
ну а если отвечать по сути, то если тебе надо вставить в строку слолжную переменную типа $_POST['login'] или там $this->db то просто заключай это все дело в фигурные скобки {}:

$bb =<<<HERE
<table border="0" width="100%" id="other">
<tr>
<td width="100%"><p align="center">
Запомните свои регистрационные данные:
Ваш логин: {$_POST['login']}
Ваш пароль: {$_POST['password']}
HERE;

Спустя 43 минуты, 31 секунда (21.01.2009 - 11:08) nighting написал(а):
dfsq
ААА... Все перепробовал, кроме фигурных скобок))) И как они у меня из головы вылетели???
Спасибо!


_____________
Стране нужны паровозы! Стране нужен метал!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.