首页 > 解决方案 > 我的 HTML 表单没有发布到我的数据库,我的 php 有问题吗?

问题描述

我试图让我的 HTML 表单发布到我的数据库,但我什么也没得到。目前我并不担心事情的安全性,我只是希望它能够正常工作。我已经在整个网络上寻找解决方案,并且大多数类似的问题都在这里。我可能只是错过了一些愚蠢的东西。

HTML

  <form action="booking.php"  id="booking" name="booking" method="post">
       Let us know what you would like and when and we will get back to you 
       to confirm<br>
         <label for="name">Name:</label>
         <input type="text" id="name" name="name"><br>
         <label for="email">Email:</label>
         <input type="email" name="email" id="email" required>`

PHP

<?php

define('db_database', 'database');
define('db_user_name', 'username');
define('db_password', 'password');
define('db_server_name', 'server');

$dbconnect = mysqli_connect(db_server_name, db_user_name, db_password, 
db_database);

if (!$dbconnect) {
die('Could not connect: ' . mysqli_error());
}

echo 'Connected!';

$db_selected = mysqli_select_db($dbconnect, db_database);


     $name = $_POST['name'];

     $mysqli = "INSERT INTO booking (name) VALUES ($name)"; 

?>

MySQL 返回一个空的结果集(即零行)。(查询耗时 0.0004 秒。)

标签: phpdatabasemysqli

解决方案


  1. 确保您的姓名中输入标签中的名称属性被定义为名称,如:<input type="text" name="name">没有这个,您将无法访问。检查您是否获得了提交表单的值,例如:echo $_POST["name"]

我建议在 SQL-Query 中获取 $name 变量,如下所示:INSERT INTO booking (name) VALUES ('$name')

如果它根本不起作用,请尝试执行如下查询:

$result = mysqli_query($dbconnect, $mysqli);

(而不是你的$db_selected一部分)

我希望我能帮上忙。


推荐阅读