Контактная форма в базе данных не работает?
Привет,
Я пытаюсь вставить текст в базу данных через контактную форму. По одной причине он не работает, и он также не дает никаких ошибок. Я не могу показаться, чтобы найти что не так. Кто-нибудь может мне помочь?
Вот мой код:
<div class="row"> <div class="col-md-6"> <div class="form-group"> <label for="voornaam">Voornaam *</label> <input id="voornaam" type="text" name="voornaam" class="form-control" placeholder="Please enter your firstname *" required="required" data-error="Firstname is required."> <div class="help-block with-errors"></div> </div> </div> <div class="col-md-6"> <div class="form-group"> <label for="achternaam">Achternaam *</label> <input id="achternaam" type="text" name="achternaam" class="form-control" placeholder="Please enter your lastname *" required="required" data-error="Lastname is required."> <div class="help-block with-errors"></div> </div> </div> </div> <div class="row"> <div class="col-md-6"> <div class="form-group"> <label for="email">Email *</label> <input id="email" type="email" name="email" class="form-control" placeholder="Please enter your email *" required="required" data-error="Valid email is required."> <div class="help-block with-errors"></div> </div> </div> <div class="col-md-6"> <div class="form-group"> <label for="nummer">Telefoonnummer</label> <input id="nummer" type="tel" name="nummer" class="form-control" placeholder="Please enter your phone"> <div class="help-block with-errors"></div> </div> </div> </div> <div class="row"> <div class="col-md-12"> <div class="form-group"> <label for="bericht">Bericht *</label> <textarea id="bericht" name="bericht" class="form-control" placeholder="Message for me *" rows="4" required="required" data-error="Please,leave us a message."></textarea> <div class="help-block with-errors"></div> </div> </div> <div class="col-md-12"> <input type="submit" name="sumbit" class="btn btn-success btn-send" value="Send message"> </div> </div> <div class="row"> <div class="col-md-12"> <p class="text-muted"></p> </div> </div> </div> </form> </div> </div> </div>
<?php $db_server = "localhost"; $db_username = "root"; $db_password = ""; $db_database = "meubelfabriek"; $conn = new PDO("mysql:host=$db_server;dbname=$db_database", $db_username, $db_password); $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); if (isset($_POST['submit'])) { $voornaam = $_POST['voornaam']; $achternaam = $_POST['achternaam']; $nummer = $_POST['nummer']; $email = $_POST['email']; $bericht = $_POST['bericht']; $stmt = $conn->prepare("INSERT INTO `inbox` (voornaam, achternaam, nummer, email, bericht) VALUES (:voornaam, :achternaam, :nummer, :email, :bericht)"); $stmt->execute(array(":voornaam"=>$voornaam, ":achternaam"=>$achternaam, ":nummer"=>$nummer, ":email"=>$email, ":bericht"=>$bericht)); } ?>
Что я уже пробовал:
Ничего, поскольку я не вижу ничего плохого.
Richard MacCutchan
Вам нужно добавить некоторый отладочный код, чтобы узнать, что происходит.
CHill60
Попробуйте ввести эту команду в IDE для базы данных (или использовать Скрипка SQL[^]) чтобы убедиться, что сама команда не является проблемой.
Затем убедитесь, что ни одно из используемых значений не является нулевым в точке, в которую вы пытаетесь вставить значения, где столбец в базе данных не может быть обнулен.
Смотрите, если вы все еще получаете проблемы при использовании BindParam/BindValue (PHP: PDOStatement::execute - Manual[^])
Dotnet_Dotnet
сэр
Сначала проверьте соединение
второй общий запрос, хранящийся в для сокращения кода и попробуйте выполнить запрос в браузере, попробуйте найти ошибку
ZurdoDev
Самый важный навык, который вы можете развить, - это умение отлаживать. Сделайте это, и вы найдете проблему очень быстро.
ThilinaMD
Проверьте способ отправки формы (GET или POST).
W∴ Balboos, GHB
Больше нет необходимости: используйте массив $_REQUEST[] для обоих. Попробуйте, вам понравится !
ThilinaMD
ха-ха, тогда вы не знаете, как получить и отправить ручки. 'Переменные в $_REQUEST предоставляются скрипту через механизмы ввода GET, POST и COOKIE и поэтому могут быть изменены удаленным пользователем и нельзя доверять. Наличие и порядок переменных, перечисленных в этом массиве, определяются в соответствии с директивой конфигурации PHP variables_order.' см. руководство php по адресу $_ЗАПРОС[]