Переменная в команде Echo

Noldor

Новичок
Переменная в команде Echo

Извините за очень глупый вопрос. Давно не писал на php, а сейчас уже php5, и я слегка фаломорфирую.
Пишу элементарный код:
echo ("Привет, $name"), а не выводится ничего. Разобрался с глобальными переменными. Переписываю код:
echo ("Привет, $_GET['name']"); возникает вроде как синтаксическая ошибка. Это чего так?
ЗЫ: допускаю возможность собственного слабоумия. Помогите что ли.
 

DiMA

php.spb.ru
Команда форума
echo ("Привет, {$_GET['name']}");
echo ("Привет, $_GET[name]");

+ не забудь о htmlspecialchars($name)
 

x-yuri

Новичок
тогда еще можно вспомнить об sql-иньекциях, об использовании prepared statements и проверке данных, полученных от пользователя
 

x-yuri

Новичок
а как через echo можно словить инъекцию?=))
если мы перехватываем вывод и последний перенаправляем на mysql ))
а если серьезно: так, вспомнилось, всего лишь продолжил развивать тему
 

Фанат

oncle terrible
Команда форума
возникает вроде как синтаксическая ошибка. Это чего так?
потому что синтаксис не соблюден.
почитать правильный синтаксис совсем несложно в мануале, набирается в браузере за пол-секунды - [m]types.string[/m]
 

Noldor

Новичок
>echo 'Привет, '.$_GET['medved'];
>echo ("Привет, {$_GET['name']}");
>echo ("Привет, $_GET[name]");

а как предпочтительнее? А то гляжу тут еще 6-ой php намечается. Не успею 5-ый запомнить, как уже снова меняй все переменные на фиг.

>не забудь о htmlspecialchars($name)
как же забудешь их :)
 

x-yuri

Новичок
PHP:
echo 'Привет, '.$_GET['medved'];
имхо так виднее, что строка конкатенируется с переменной

PHP:
echo ("Привет, $_GET[name]");
а так просто не работает
 

Фанат

oncle terrible
Команда форума
x-yuri
это у тебя в штанах не работает.

Noldor
делай, как тебе удобнее.
к версиям пхп это никакого отношения не имеет.
 

Фанат

oncle terrible
Команда форума
Это показательный момент, кстати.
Против такого синтаксиса, в силу его неоднозначности.

Поэтому чаще всего используется первый вариант.
 

Noldor

Новичок
Ну раз тут такая помощь хорошая, еще вопрос:
нужно сайтег быстренько скромный написать. Знаю, что хостеры дают поддержку всех версий php и работает и 3-й, и 4й и 5-ый php.
На каком писать? На 3-м, который вроде как помню, или на 5-ом, который требует поднапрячься и поизучать?
 

x-yuri

Новичок
а что на 3ьем еще кто-то пишет? :confused:

-~{}~ 26.12.08 19:49:

4ый уже перестали поддерживать (новые версии не выпускаются)
 

Фанат

oncle terrible
Команда форума
Разницы никакой нет.
Заявления про разницу между 3, 4 и 5 версиями - бред и больная фантазия. снизу вверх оно отлично совместимо. То, что написано "на третьем", прекрасно будет работать на 5. Некоторые нюансы, такие, как этот, решаются в 5 секунд гуглем по ходу дела.
 

Noldor

Новичок
Угу, нет никакой разницы - беру из справочника по php3 код вставляю в тот же Денвер и хреннарыло!!! И сидишь методом научного тыка ищешь ошибку в синтаксисе.
 

x-yuri

Новичок
а зачем сейчас 3й пхп?
а Noldor на данном этапе я думаю разницы не заметит
 

Noldor

Новичок
поздно пришла мысль:
$idea=$_GET['$name'];
echo ("Ламер ты, $idea");

работает.
но насколько целесообразно с точки зрения оптимизации на каждой странице иметь наборы внутренних переменных?
 
Сверху