Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

Не отображаются переменные

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Веб-программинг] >> Не отображаются переменные
Имя
Сообщение << Старые топики   Новые топики >>
Не отображаются переменные - 2009-03-09 10:34:27.943333   
e2world

Сообщений: 15
Оценки: 0
Присоединился: 2008-10-31 17:53:38.353333
На html-страничке форма, которая взаимодействует со скриптом. Данные введённые в форме, отсылаются с помошью скрипта.

HTML-страница:
&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"&gt; &lt;html&gt; &lt;head&gt; &lt;meta http-equiv="content-type" content="text/html; charset=windows-1250"&gt; &lt;meta name="generator" content="Формы"&gt; &lt;title&gt;Пага для форм&lt;/title&gt; &lt;/head&gt; &lt;body&gt; Прива! Будем лабать формы!!! &lt;form action="obrabotka.php" method="POST" name="form1" id="form1"&gt; &lt;br&gt;Ваши ФИО:&lt;br&gt; &lt;input type="text" name="fio" value="Фоменович Василий Пупкин "&gt; &lt;br&gt;Пароль:&lt;br&gt; &lt;input type="password" name="pass"&gt; &lt;br&gt;Ваш e-mail:&lt;br&gt; &lt;input type="text" name="email"&gt; &lt;br&gt;Выбери вариант диска&lt;br&gt; &lt;input type="radio" name="disk" value="cd"&gt;CD&lt;br&gt; &lt;input type="radio" name="disk" value="dvd" checked&gt;DVD&lt;br&gt; &lt;input type="radio" name="disk" value="blueray"&gt;Blue-ray&lt;br&gt; &lt;input type="radio" name="disk" value="hddvd"&gt;HD-DVD&lt;br&gt; &lt;br&gt;Укажите состав диска:&lt;br&gt; &lt;input type="checkbox" name="ch1" value="Да"&gt;Программы&lt;br&gt; &lt;input type="checkbox" name="ch2" value="Да"&gt;Видео&lt;br&gt; &lt;input type="checkbox" name="ch3" value="Да"&gt;ОС&lt;br&gt; &lt;input type="checkbox" name="ch4" checked value="Да"&gt;Обои&lt;br&gt; Тип доставки:&lt;br&gt; &lt;select name="delivery"&gt; &lt;option&gt;Срочная &lt;option&gt;Обычная &lt;/select&gt; &lt;br&gt;Ваш адрес и примечания&lt;br&gt; &lt;textarea name="add_text" rows="5" cols="30"&gt; &lt;/textarea&gt;&lt;br&gt; &lt;input type="submit" value="Отправить"&gt; &lt;/form&gt; &lt;/body&gt; &lt;/html&gt;
PHP-скрипт:
&lt;?php if (!isset($ch1)) {$ch="нет";} if (!isset($ch2)) {$ch="нет";} if (!isset($ch3)) {$ch="нет";} if (!isset($ch4)) {$ch="нет";} mail("admin@vidsporta.com","Заказ диска","Человек по имени $fio указавший пароль $pass , указал своё мыло - $email. Он хочет заказать $disk , с: \n Проги - $ch1 \n Видео - $ch2 \n ОС - $ch3 \n Обои - $ch4 \n С типом доставки - $dilivery. Его адресс - $add_text "); ?&gt; Думаю понятно какой письмо должно прийти, но приходит:
quote:

Человек по имени указавший пароль
, указал своё мыло - . Он хочет заказать , с:

Проги -

Видео -

ОС -

Обои -

С типом доставки - . Его адресс -


Чё сделать чтобы переменные показывались в письме?
Post #: 1
RE: Не отображаются переменные - 2009-03-09 10:46:52.170000   
Sh1td0wn

Сообщений: 156
Оценки: 0
Присоединился: 2008-05-16 16:48:32.490000
А как насчёт задать значения переменных, напимер $add_text = $_POST['add_text'];
Post #: 2
RE: Не отображаются переменные - 2009-03-09 10:47:28.926666   
Cep}|{

Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
quote:


if (!isset($ch1)) {$ch="нет";}
if (!isset($ch2)) {$ch="нет";}
if (!isset($ch3)) {$ch="нет";}
if (!isset($ch4)) {$ch="нет";}
По уму надо все переменные получать из соответствующих массивов. Вот и получай их из массивов. В форме передаешь данные ПОСТом? Значит и в скрипте бери их из ПОСТа:
$ch1=(isset($_POST['ch1'])) ? $_POST['ch1']:'нет';
$ch2=(isset($_POST['ch2'])) ? $_POST['ch2']:'нет';
$ch3=(isset($_POST['ch3'])) ? $_POST['ch3']:'нет';
$ch4=(isset($_POST['ch4'])) ? $_POST['ch4']:'нет';
Post #: 3
RE: Не отображаются переменные - 2009-03-09 10:59:01.256666   
e2world

Сообщений: 15
Оценки: 0
Присоединился: 2008-10-31 17:53:38.353333
Сделал как сказал Cep}|{ - заменил только верх и в письме заработало. Но если остальные переменные заменить на $_POST['текст'], то вылазиет ошибка (заменил $add_text на $_POST['add_text'])
quote:

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in W:\home\test.test\www\obrabotka.php on line 16
Post #: 4
RE: Не отображаются переменные - 2009-03-09 11:23:17.640000   
Cep}|{

Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
Синтаксическая ошибка у тебя. Код выложи.
Post #: 5
RE: Не отображаются переменные - 2009-03-09 11:28:44.406666   
azimzaim

Сообщений: 320
Оценки: 0
Присоединился: 2009-01-04 22:14:32.760000
я бы посоветовал писать так:

&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"&gt; &lt;html&gt; &lt;head&gt; &lt;meta http-equiv="content-type" content="text/html; charset=windows-1250"&gt; &lt;meta name="generator" content="Формы"&gt; &lt;title&gt;Пага для форм&lt;/title&gt; &lt;/head&gt; &lt;body&gt; Прива! Будем лабать формы!!! &lt;form action="obrabotka.php" method="POST" name="form1" id="form1"&gt; &lt;br&gt;Ваши ФИО:&lt;br&gt; &lt;input type="text" name="fio" value="&lt;?=@$fio;?&gt;"&gt; &lt;br&gt;Пароль:&lt;br&gt; &lt;input type="password" name="pass" value="&lt;?=@$pass;?&gt;"&gt; &lt;br&gt;Ваш e-mail:&lt;br&gt; &lt;input type="text" name="email" value ="&lt;?=@$email;?&gt;"&gt; &lt;br&gt;Выбери вариант диска&lt;br&gt; &lt;input type="radio" name="disk" value="cd"&gt;CD&lt;br&gt; &lt;input type="radio" name="disk" value="dvd" checked&gt;DVD&lt;br&gt; &lt;input type="radio" name="disk" value="blueray"&gt;Blue-ray&lt;br&gt; &lt;input type="radio" name="disk" value="hddvd"&gt;HD-DVD&lt;br&gt; &lt;br&gt;Укажите состав диска:&lt;br&gt; &lt;input type="checkbox" name="ch1" value="Да"&gt;Программы&lt;br&gt; &lt;input type="checkbox" name="ch2" value="Да"&gt;Видео&lt;br&gt; &lt;input type="checkbox" name="ch3" value="Да"&gt;ОС&lt;br&gt; &lt;input type="checkbox" name="ch4" checked value="Да"&gt;Обои&lt;br&gt; Тип доставки:&lt;br&gt; &lt;select name="delivery"&gt; &lt;option&gt;Срочная &lt;option&gt;Обычная &lt;/select&gt; &lt;br&gt;Ваш адрес и примечания&lt;br&gt; &lt;textarea name="add_text" rows="5" cols="30"&gt;&lt;?=@$add_text;?&gt; &lt;/textarea&gt;&lt;br&gt; &lt;input type="submit" value="Отправить"&gt; &lt;/form&gt; &lt;/body&gt; &lt;/html&gt;
PHP-скрипт:
<?php
exrtact ($_POST);

mail("admin@vidsporta.com","Заказ диска","Человек по имени @$fio указавший пароль $pass
, указал своё мыло - @$email. Он хочет заказать @$disk , с: \n
Проги - @$ch1 \n
Видео - @$ch2 \n
ОС - @$ch3 \n
Обои - @$ch4 \n
С типом доставки - @$dilivery. Его адресс - @$add_text ");
?>

Это идеальный вариант, когда юзер ввел все данные правильно, а если необходимо, то можно обрабатывать принятые данные.

Post #: 6
RE: Не отображаются переменные - 2009-03-09 11:36:04.510000   
e2world

Сообщений: 15
Оценки: 0
Присоединился: 2008-10-31 17:53:38.353333
Всё! Получилось! HTML-страничку оставил без изменений, а php-скрипт получился таким:
quote:

&lt;?php

$ch1=(isset($_POST['ch1'])) ? $_POST['ch1']:'нет';
$ch2=(isset($_POST['ch2'])) ? $_POST['ch2']:'нет';
$ch3=(isset($_POST['ch3'])) ? $_POST['ch3']:'нет';
$ch4=(isset($_POST['ch4'])) ? $_POST['ch4']:'нет';

$fio = $_POST['fio'];
$pass = $_POST['pass'];
$email = $_POST['email'];
$disk = $_POST['disk'];
$delivery = $_POST['delivery'];
$add_text = $_POST['add_text'];


mail("admin@vidsporta.com","Заказ диска","Человек по имени $fio указавший пароль $pass
, указал своё мыло - $email. Он хочет заказать $disk , с: \n
Проги - $ch1 \n
Видео - $ch2 \n
ОС - $ch3 \n
Обои - $ch4 \n
С типом доставки - $delivery. Его адресс - $add_text ");

?&gt;

Спасибо за помощь :)
Post #: 7
Страниц:  [1]
Все форумы >> [Веб-программинг] >> Не отображаются переменные







Связаться:
Вопросы по сайту / xakep@glc.ru

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