Здесь можно найти всё что Вам нужно! ⇒

Почта techsupport@web-rubik.ru

PHP скрипт формы обратной связи - как организовать форму обратной связи на языке PHP

Автор: © web-rubik

Форма обратной связи, гостевая книга, скрипт обратной связи с email уведомлением. Если у вас есть свой блог или сайт с каким-то материалом, где нужно организовать комментарии или гостевую книгу, то вы столкнулись с этим вопросом – а как это сделать? В этой статье я приведу наглядный пример, как организовать форму обратной связи у себя на сайте, заодно поработаем с дублированием на Email.

Для начала простой код:


<!-- =================================== Форма отправки === -->
<form action="index.php" method="post">
    <table>
        <tr>
            <td>Имя:</td>
            <td><input name="name" type="text"></td>
        </tr>
        <tr>
            <td>E-mail: </td>
            <td><input name="mail" type="text"></td>
        </tr>
    </table>
    <br>Сообщение<br>
    <textarea name="text" cols="30" rows="4"></textarea>
    <br><br>
    <input name="submit" type="submit" value="Отправить">
</form>


<!-- =================================== Подключение к базе данных === -->
<?php
$db = mysql_connect("localhost", "root", "1234"); // root – ваш логин, 1234 – пароль
mysql_select_db("database", $db); // database - имя базы данных
mysql_query("SET character_set_results = ′utf8′, //устанавливаем кодировку
        character_set_client = ′utf8′,
        character_set_connection = ′utf8′,
        character_set_database = ′utf8′,
        character_set_server = ′utf8′", $db);
?>


<!-- =================================== Скрипт обработчик === -->
<?php
$name = $_POST[′name′];
$mail = $_POST[′mail′];
$text = $_POST[′text′];
$submit = $_POST[′submit′];
$myMail = "Ваша почта, куда будет отправляться копия сообщения";
$h = "У вас новое сообщение";

if(isset($_POST[′submit′])){
    if($_POST[′name′] != ""){
        $query = mysql_query("INSERT INTO comments(name,text,mail) VALUES (′$name′,′$text′,′$mail′)");
        mail($myMail, $h, $text, "From: ".$mail." /r/n" ."X-Mailer: PHP/" . phpversion());
        echo "Сообщение отправлено";
    }
    else{
        echo "Вы не указали имя";
    }
}
?>


<!-- =================================== Вывод сообщений === -->
<?php
$query = mysql_query("SELECT * FROM comments");
$row = mysql_fetch_array($query);

do
{
    echo $row[′name′];
    echo "<br>";
    echo $row[′mail′];
    echo "<br>";
    echo nl2br($row[′text′]);
    echo "<br><br>";
}

while($row = mysql_fetch_array($query))
?>

Теперь по порядку:

Для подключения к базе данных MySQL создадим отдельно фиал с названием (к примеру - db.php). Его можно создать в стандартной программе Блокнот на ПК, или в любом HTML редакторе.
Теперь на странице index.php, где будет происходить отправка комментариев, в самом верху перед началом HTML кода, пропишем путь к файлу db.php:



Файл db.php должен лежать в той же папке где и index.php.
Подключение создано!

В форме отправки мы указали action="index.php" значит, файл обработчик должен находиться на той же странице где и сама форма - index.php.
В том месте, где будет выводиться сообщение об отправке или об ошибке, поместим скрипт обработчик.

Если нажата кнопка отправить (submit) и указанно Имя (name), тогда записи из форм - Имя (name), E-mail (mail), Сообщение(text) будут записаны в таблицу comments и выводится сообщение - Сообщение отправлено.
Если не указано Имя (name), тогда ничего не происходит и выводится сообщение - Вы не указали имя.

Для того чтобы вывести отправленные сообщения на этой же странице (index.php), в то место где будут выводиться сообщения, нужно вставить последний код из примера.

Вот и всё!
Теперь вы знаете, как организовать комментарии у себя на сайте. По такой же схеме работают Гостевые книги, Форма обратной связи и т.д.





Понравилось 100  

2 Комментарии КОТОРЫЕ

Данил

Как сделать с пагинацией тоже самое?

© web-rubik

Легко! Вместо кода вывода сообщения вставьте код пагинации. На этом ресурсе есть статья как установить код пвгинации..


Оставить комментарий

Оставленные комментарии проверяются технической частью интернет портала Web-rubik.ru



←−−−