向MySQL提供空白条目的PHP/HTML表单

向MySQL提供空白条目的PHP/HTML表单,php,html,mysql,sql,database,Php,Html,Mysql,Sql,Database,我在这里是一个PHP/MySQL美钞,我遇到了一个问题,我试图通过PHP将一个简单的表单输入到MySQL数据库,该表单不断输入空白条目 表单是实时的,连接并馈送到DB,但是每当我提交条目时,我的确认回音就会返回,它连接成功插入DB_name.events(eventname,eventprice,eventabout)值(“”,“”,“”)起作用即使值是在HTML表单中填充的。然后,当我登录并通过PHPmyadmin检查MySQL数据库时,我可以看到它确实在表中创建了一个新行,但它是空的 我花了

我在这里是一个PHP/MySQL美钞,我遇到了一个问题,我试图通过PHP将一个简单的表单输入到MySQL数据库,该表单不断输入空白条目

表单是实时的,连接并馈送到DB,但是每当我提交条目时,我的确认回音就会返回,它
连接成功插入DB_name.events(eventname,eventprice,eventabout)值(“”,“”,“”)起作用即使值是在HTML表单中填充的。然后,当我登录并通过PHPmyadmin检查MySQL数据库时,我可以看到它确实在表中创建了一个新行,但它是空的

我花了数小时逐行梳理语法,似乎找不到任何不合适的地方,现在我添加了一系列故障排除步骤来尝试解决它

非常感谢您的帮助

HTML格式如下所示:

<form method="post" action="eventtestconnect.php"><table style="border: 0; margin-left: auto; margin-right:auto;text-align: left">
      <tr>
        <td>Event Name:</td>
        <td><input name="name"></td>
      </tr> 
      <tr>
        <td>Event Price:</td>
        <td><input name="price"></td>
      </tr>
      <tr>
        <td>Event Description:</td>
        <td><textarea name="description" cols="40" rows="5">
        </textarea></td>
      </tr>
   </table>
    <br><br>
    <input type="submit" value="Submit">
  </form>

事件名称:
活动价格:
事件描述:


连接到此表单的PHP文件是:

<?php

// connect to database
$dbhost = '111.111.11.111';
$dbuser = 'db_name';
$dbpass = 'pwpwpw';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
 die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';

//select database
mysql_select_db("db_name", $conn);
if ($_POST)
{

// scrub inputs
$name = mysql_real_escape_string($conn, $_POST['name']); 
$price = mysql_real_escape_string($conn, $_POST['price']);
$description = mysql_real_escape_string($conn, $_POST['description']);

// prepare query
$sql = "INSERT INTO db_name.events (eventname, eventprice, eventabout)
 VALUES ('$name', '$price', '$description')"; 

// execute query
mysql_query($sql);

// close connection
mysql_close($conn);
echo $sql;
}
?>

您将参数以错误的顺序传递给了
mysql\u real\u escape\u string
。应该是:

$name = mysql_real_escape_string($_POST['name'], $conn);

“INSERT INTO db_name.events(eventname,eventprice,eventabout)值(“”,“”,“”)从何而来?”这是因为
echo$sql我在php末尾包含的行,这样当我在表单上单击submit时,它会提供查询的详细信息。它用于测试是否从表单中提取数据@MarkM@MikeW当我在执行之前回显查询时,得到的结果与关闭与服务器的连接后回显的结果相同。重复错误不会带来错误。真漂亮!就是这样。非常感谢,我真的很感谢你的帮助!!