PHP-表单数据没有';不显示在数据库表中

PHP-表单数据没有';不显示在数据库表中,php,forms,Php,Forms,我正在做一个练习,从表单中提取数据,然后将数据输入数据库中的表中 表单上总共有6个字段,但表中只注册了前3个字段 表中的数据类型 first_name varchar(30) last_name varchar(30) pd varchar(10) b_month varchar(2) b_day varchar(2) b_year varchar(4) 表单的HTML代码 <form action="handle_reg2.

我正在做一个练习,从表单中提取数据,然后将数据输入数据库中的表中

表单上总共有6个字段,但表中只注册了前3个字段

表中的数据类型

first_name  varchar(30)
last_name   varchar(30)
pd          varchar(10)
b_month     varchar(2)
b_day       varchar(2)
b_year      varchar(4)
表单的HTML代码

    <form action="handle_reg2.php" method="post">
    <p>first name: <input type="text" name="first_name" size="20" /></p>
    <p>last name: <input type="text" name="last_name" size="20" /></p>
    <p>Password: <input type="password" name="pwd" size="10" /></p>
    <p>confirm password: <input type="password" name="confirm" size="10" /></p>
     <select name="month">
    <option value="">Month</option>
    <option value="1">January</option>
     </select> 
     <select name="day">
    <option value="">Day</option>
    <option value="1">1</option>
  </select>
  <input type="text" name="year" value="yyyy" size="4"/>
  </p>

请查看我的代码片段,并告诉我问题的原因和解决方法。

您更改了变量的名称。。。 乙二醇

编辑:

您已经更改了Q并删除了显示如何命名传入变量$byear的代码,然后尝试将其引用为$b_year

坚持命名约定,你就会少犯这些愚蠢的错误。例如,从您的表格到您的数据库:

<input type =text name="b_year" />
然后


当然,除非你已经列出了每个人都说过的话,并且使用了事先准备好的声明,或者找到了另一种方法来保护你的数据库。

。它们不再得到维护。看到了吗?相反,学习,并使用or-将帮助您决定哪一个。如果你选择PDO,你会得到什么错误?你做了什么疑难解答?你还应该认真研究如何转义你的变量。仅供参考,你对Hello Cups也持开放态度:谢谢你指出我做错了什么。我在insert语句中更改了变量的名称,表单数据被正确插入。
$byear = $_POST['year'];
$b_year
<input type =text name="b_year" />
$b_year = (int)$_POST['b_year'];
"insert into mytable (b_year) values ($b_year )";