PHP-сервер и форма mysql

Я не могу заставить это работать. Я попал в преграду. Пожалуйста, посмотрите на него и дайте мне знать, если вы заметите что-то, что мне не хватает. Подключение к mysql проверено на работу. Когда я отправляю форму, появляется сообщение «Запись успешно вставлена». Но фактической записи в базе данных не было. Я безуспешно пробовал разные подходы

<?php    
if ($_SERVER["REQUEST_METHOD"] == "POST"){

$usrID = $_POST["usrID"];
$Fname = $_POST["Fname"];
$Lname = $_POST["Lname"];
$short_title = $_POST["short_title"];
$email = $_POST["email"];
$phone = $_POST["phone"];

$link = mysqli_connect("localhost", "username", "topsecret", "DBname");

if ($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}

$sql = "INSERT INTO tableName (usrID, Fname, Lname, short_title, email, phone) VALUES (?, ?, ?, ?, ?, ?)";

if ($stmt = mysqli_prepare($link, $sql)){
    mysqli_stmt_bind_param($stmt, "sss", $usrID, $Fname, $Lname, $short_title, $email, $phone);

    mysqli_stmt_execute($stmt);

    echo "Record inserted successfully.";
} else{
    echo "ERROR: Could not prepare query: $sql. " . mysqli_error($link);
}
mysqli_stmt_close($stmt);
mysqli_close($link);
}
?>

<!doctype html>
<html>
<head>
<meta charset = "utf-8">
<title>Need Help!</title>
</head>

<body>

    <form action = "<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method = "post">
  <table align = "center" width = "650" border = "1" cellspacing = "0" cellpadding = "3">
    <tbody>
        <tr>
        <td colspan = "4" align = "center">
          <span>Input New User Information: </span></td>
        </tr>
      <tr>
        <td colspan = "4" align = "center">
          <label for = "usrID">User ID:</label>
          <input type = "text" name = "usrID" id = "usrID" required></td>
        </tr>
      <tr>
          <td colspan = "2"><label for = "Fname">First Name: </label><input type = "text" name = "Fname" id = "Fname" required></td>
        <td colspan = "2"><label for = "Lname">Last Name: </label><input type = "text" name = "Lname" id = "Lname" required></td>
        </tr>
      <tr>
          <td colspan = "2"><label for = "short_title">Abreviated Title(s): </label><input type = "text" name = "short_title" id = "short_title" placeholder = "Generally goes after Last Name and a comma"></td>
        <td colspan = "2"><label for = "email">Agent Email: </label><input type = "email" name = "email" id = "email"></td>        
      </tr>
      <tr>
          <td colspan = "4"><label for = "phone">Agent Phone: </label><input type = "tel" name = "phone" id = "phone" placeholder = "XXX.XXX.XXXX"></td>
      </tr>
      <tr>
        <td colspan = "2"><input type = "reset"></td>
        <td colspan = "2"><input type = "submit" name = "submit" value = "Submit"></td>
      </tr>
    </tbody>
  </table>
</form>
</body>
</html>

Количество переменных и длина строковых типов должны соответствовать параметрам в инструкции в вашем параметре привязки.

Progrock 21.05.2018 23:49
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
1
23
1

Ответы 1

Похоже, это заявление вернет истину:

if ($stmt = mysqli_prepare($link, $sql)){

Независимо от того, что возвращает выполненный оператор, если приведенный выше вывод верен, он печатает ваши строки:

mysqli_stmt_execute($stmt);

echo "Record inserted successfully.";

Что такое инструкция в $ stmt? Проверьте этот sql и убедитесь, что он правильный.

Другие вопросы по теме