Сейчас на сайте:
Пользователей: 0
Отсутствуют.
Роботов: 2
Yandex, Googlebot
Гостей: 84
Всех: 86
ВНИМАНИЕ! Конкурс по программированию!
Проект Programmers.kz и школа hotPen3D2D предлагает Вам курсы по веб-дизайну, веб-программированию и компьютерной графике. Подробности здесь.
Информация к новости
- Просмотров: 2058
- Автор: КазКиберГетик
Создание формы отзывов
Категория: WEB-программирование » PHP и MySQL » Уроки PHP
После того, как директор нашей вымышленной фирмы установил цены на товары и сделал доступным возможность заказов дисков прямо на сайте, возникает следующая потребность: получить отзывы от клиентов. Для чего? Во-первых, чтобы узнать, какие недостатки присутствуют в этой системе: клиент должен иметь право высказать о своих неудобствах заказа товара. Во-вторых, у него могут возникнуть вопросы в заполнении формы (или в чём-либо другом). Ну и вообще: всем посетителям сайта необходимо дать право высказаться, если они этого хотят. Это высказывание (вопрос, пожелание) отправляются на электронный адрес администратора (директора) и после получения им письма он реагирует на него.
Данный сервис просто необходим: ни одна солидная компания не обходится без мнения своих покупателей. Как раз сегодня мы и займёмся этим интересным и полезным делом - созданием формы отзывов и вопросов.
В нашей форме будет присутствовать одна отличительная особенность от остальных подобных форм: возможность "умной" отправки письма. Т.е. в зависимость от того, какой текст ввёл посетитель в поле сообщения, письмо будет отсылаться соответствующему сотруднику компании. Например, если в сообщении будет обнаружено слово "Сотрудничество", то целесообразнее будет направить письмо не директору, а в отдел маркетинга или другим лицам.
Давайте уже перейдём к практике и напишем небольшой каркас нашей формы. Вот сама форма:
bool mail(кому, тема, сообщение, [дополнительные параметры])
Первые три параметры обязательны, а четвёртый - нет.
$name=trim($name);
Функция nl2br() принимает строку в качестве параметра и заменяет в ней все символы новой строки дескриптором <br> HTML. Это полезно при выводе длинной строки в окне браузера. Например, мы использовали эту функцию для форматирования отзыва клиента с целью вывода его на экране:
<? echo nl2br($mailcontent); ?>
До сих пор мы использовали языковую конструкцию echo для вывода строк в окне браузера. PHP поддерживает также функцию print и выполняет ту же задачу, что и echo, но поскольку она является функцией, то возвращает значение (0 или 1, в зависимости от успешности выполнения). Приведу два простых примера:
echo "Всего куплено дисков: $Total.";
и
printf ("Всего куплено дисков: %s.", $total);
Последовательность %s в строке формата называется спецификацией преобразования. Приведённая спецификация означает "заменить строкой". В данном случае она будет заменена значением переменной $total, интерпретируемым в качестве строки. Преимущество использования функции printf() в том, что можно использовать более удобную спецификацию преобразования для указания того, что в действительности $total - число с плавающей точкой и оно должно содержать два знака после десятичной точки, как показано в следующем примере:
printf("Всего куплено дисков: %f.", $total);
Все эти функции несомненно помогут Вам в форматировании текста. А на сегодня я заканчиваю эту статью. Конечно же, мы продолжим в следующих статьях усовершенствовать нашу форму отправки сообщения. Удачи Вам.
Источник: web-brodilka.ru
Данный сервис просто необходим: ни одна солидная компания не обходится без мнения своих покупателей. Как раз сегодня мы и займёмся этим интересным и полезным делом - созданием формы отзывов и вопросов.
В нашей форме будет присутствовать одна отличительная особенность от остальных подобных форм: возможность "умной" отправки письма. Т.е. в зависимость от того, какой текст ввёл посетитель в поле сообщения, письмо будет отсылаться соответствующему сотруднику компании. Например, если в сообщении будет обнаружено слово "Сотрудничество", то целесообразнее будет направить письмо не директору, а в отдел маркетинга или другим лицам.
Давайте уже перейдём к практике и напишем небольшой каркас нашей формы. Вот сама форма:
<form action="feedback.php" name="feedback"> <table align=center> <tr> <td>Тема сообщения:</td> <td align=center><input type="text" name="subject" size=35 maxlength=50></td> </tr> <tr> <td>Ваш E-mail:</td> <td align=center><input type="text" name="fromadress" size=35 maxlength=40></td> </tr> <tr> <td>Ваше сообщение:</td> <td align=center><textarea rows=4 cols=26 name="mailcontent" maxlength=255></textarea></td> </tr> <tr> <td colspan=2 align=center><input type=submit value="Отправить" class="buttons"></td> </tr> </table> </form>А это php-скрипт, обрабатывающий эту форму:
<?php $toadress = "direktor@cd-magazine-for-you.ru"; mail($toadress, $subject, $mailcontent); ?> <html> <head> <title>Письмо выслано!</title> </head> <body> <h1>Письмо выслано!</h1><br> <p>Ваше письмо успешно отправлено!</p> </body> </html>Как Вы наверное поняли из вышеописанного кода, поля формы объединены, а РНР-функция mail() применяется для отправки их по электронной почте по адресу direktor@cd-magazine-for-you.ru. В общем случае функция mail() выглядит так:
bool mail(кому, тема, сообщение, [дополнительные параметры])
Первые три параметры обязательны, а четвёртый - нет.
Форматирование строк
Ваша задача, как программиста, обеспечить обработку всех вариантов вводимых данных: чтобы они выглядели корректно и не возникло проблем при отправки сообщения. Для этого, необходимо преобразовать введённый пользователем текст, к понятному компьютеру виду. В PHP существует для этого несколько функций. Первой, очень полезной функцией, является функция удаления лишних пробелов trim(), которая удаляет ненужные пробелы справа и слева. Вот пример её работы:$name=trim($name);
Функция nl2br() принимает строку в качестве параметра и заменяет в ней все символы новой строки дескриптором <br> HTML. Это полезно при выводе длинной строки в окне браузера. Например, мы использовали эту функцию для форматирования отзыва клиента с целью вывода его на экране:
<? echo nl2br($mailcontent); ?>
До сих пор мы использовали языковую конструкцию echo для вывода строк в окне браузера. PHP поддерживает также функцию print и выполняет ту же задачу, что и echo, но поскольку она является функцией, то возвращает значение (0 или 1, в зависимости от успешности выполнения). Приведу два простых примера:
echo "Всего куплено дисков: $Total.";
и
printf ("Всего куплено дисков: %s.", $total);
Последовательность %s в строке формата называется спецификацией преобразования. Приведённая спецификация означает "заменить строкой". В данном случае она будет заменена значением переменной $total, интерпретируемым в качестве строки. Преимущество использования функции printf() в том, что можно использовать более удобную спецификацию преобразования для указания того, что в действительности $total - число с плавающей точкой и оно должно содержать два знака после десятичной точки, как показано в следующем примере:
printf("Всего куплено дисков: %f.", $total);
Все эти функции несомненно помогут Вам в форматировании текста. А на сегодня я заканчиваю эту статью. Конечно же, мы продолжим в следующих статьях усовершенствовать нашу форму отправки сообщения. Удачи Вам.
Источник: web-brodilka.ru
Вернуться
Комментариев: 0
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.




