03
Май
2017

Вывод данных с формы на страницу

Имеется форма записи html а также ее обработчик который заносит введенные данные в бд mysql и выводит на экран.

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

Форма записи

<form class="contact_form" action="message.php" method="post" name="contact_form">
        <br>
    <ul>
        <li>
             <h2>Введите данные для записи на прием</h2>
             <span class="required_notification">* Поля, обязательные для заполнения</span>
        </li>
        <li>
            <label for="name">Имя:</label>
            <input type="text" name="name" required placeholder="Ваше имя">
        </li>
         <li>
            <label for="surname">Фамилия:</label>
            <input type="text" name="surname" required placeholder="Ваша фамилия">
        </li>
        <li>
            <label for="middlename">Отчество:</label>
            <input type="text" name="middlename" required placeholder="Ваше отчество">
        </li>
        <li>
            <label for="policynumber">Номер полиса:</label>
            <input type="text" name="policynumber" required placeholder="Ваш номер полиса">
        </li>
        <li>
            <label for="doc">Выберите врача:</label>
            <select name="doctor">
        <option value="1" selected>Терапевт</option>
        <option value="2">Стоматолог</option>
            </select>
        </li>
        <li>
            <label for="dateofbirthr">Дата рождения:</label>
            <input type="date" name="dateofbirth" required placeholder="Дата рождения">
        </li>
        <li>
            <label for="dateofadmission">Выберите дату приема:</label>
            <input type="date" name="dateofadmission" required placeholder="Дата приема">
        </li>
        <li>
            <button class="submit" type="submit">Отправить</button>
        </li>
    </ul>
</form>

Обработчик формы (не стал его полностью копировать, пропустил момент с подключением к бд)

try {

        switch ($doctor) {
            case 1:
                $table = "therapist";
                break;
            case 2:
                $table = "dentist";
                break;
        }

        $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        $dbh->beginTransaction();
        $sth = $dbh->prepare("INSERT INTO `$table` (name, surname, middlename, dateofbirth, policynumber, dateofadmission) VALUES (:name, :surname, :middlename, :dateofbirth, :policynumber, :dateofadmission)");

        // Для вставки параметров в запрос PDO есть специальные методы
        $sth->bindParam(':name', $name, PDO::PARAM_STR); 
        $sth->bindParam(':surname', $surname, PDO::PARAM_STR);
        $sth->bindParam(':middlename', $middlename, PDO::PARAM_STR);
        $sth->bindParam(':dateofbirth', $dateofbirth, PDO::PARAM_STR);
        $sth->bindParam(':policynumber', $policynumber, PDO::PARAM_INT); 
        $sth->bindParam(':dateofadmission', $dateofadmission, PDO::PARAM_STR);

        $sth->execute();
    } catch (Exception $e) {
        $dbh->rollBack();
    }
    print (" Ваше имя: " . $_POST['name'] . ".<br>\n");
    print (" Ваша фамилия: " . $_POST['surname'] . ".<br>\n");
    print (" Ваше отчество: " . $_POST['middlename'] . ".<br>\n");
    print (" Дата рождения: " . $_POST['dateofbirth'] . ".<br>\n");
    print (" Номер полиса: " . $_POST['policynumber'] . ".<br>\n");
    print (" Дата приема: " . $_POST['dateofadmission'] . ".<br>\n");
    print (" Лечащий врач: " . $_POST['doctor'] . ".<br>\n");


    {
        $dbh->commit();
    }
}
?>

Вот что выводится на экран (обратите внимание на последнюю строку)введите сюда описание изображения

Источник: https://ru.stackoverflow.com/questions/661261/%D0%92%D1%8B%D0%B2%D0%BE%D0%B4-%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85-%D1%81-%D1%84%D0%BE%D1%80%D0%BC%D1%8B-%D0%BD%D0%B0-%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D1%83

Share

Тебе может это понравится...