基本php/sql注册不起作用。。。(输入数据后空白页,不进入数据库)

基本php/sql注册不起作用。。。(输入数据后空白页,不进入数据库),php,mysql,registration,Php,Mysql,Registration,我试图在WAMP上制作一个基本的注册表格,我尝试了一些教程和一本书 我似乎有一个问题后,我提交了网页上的数据 我已经创建了数据库和表,可以在这里看到。。。 以下是我在html页面上的代码: <table width="300" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#536977"> <tr> <form method="post" action="regist

我试图在WAMP上制作一个基本的注册表格,我尝试了一些教程和一本书

我似乎有一个问题后,我提交了网页上的数据

我已经创建了数据库和表,可以在这里看到。。。

以下是我在html页面上的代码:

    <table width="300" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#536977">
<tr>
<form method="post" action="register.php">
<td>
<table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#536977">
<tr>
<td colspan="3"><strong>Register: </strong></td>
</tr>
<tr>
<td width="78">Username</td>
<td width="6">:</td>
<td width="294"><input type="text" id="username"></td>
</tr>

<tr>
<td width="78">First Name</td>
<td width="6">:</td>
<td width="294"><input type="text" id="firstname"></td>
</tr>
<tr>
<td width="78">Last Name</td>
<td width="6">:</td>
<td width="294"><input type="text" id="lastname"></td>
</tr>

<tr>
<td width="78">Age</td>
<td width="6">:</td>
<td width="294"><input type="text" id="age"></td>
</tr>

<tr>
<td>Email</td>
<td>:</td>
<td><input type="text" id="email"></td>
</tr>

<tr>
<td>Password</td>
<td>:</td>
<td><input type="text" id="password"></td>
</tr>


<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td><input type="submit" value="Login"></td>
</tr>
</table>
</td
</form>
</tr>
</table>
我链接到的php是

<?php
$con = mysqli_connect("localhost","root","","membersapp");
if (!$con)
  {
  die('Could not connect: ' . mysqli_error($con));
  }

$sql="INSERT INTO memberstable (username, firstname, lastname, age, email, password)
VALUES
('$_POST[username]','$_POST[firstname]','$_POST[lastname]','$_POST[age]','$_POST[email]','$_POST[password]' )";

if (!mysqli_query($con,$sql))
  {
  die('Error: ' . mysqli_error($con));
  }
echo "$_POST[firstname] $_POST[lastname] has been added";

mysqli_close($con);
?> 
我运行了一个小的php脚本,看看php是否连接到数据库,以及它是否连接

你知道怎么了吗

确定代码已编辑

    <?php
error_reporting(E_ALL);
ini_set('display_errors', 1);

$con = mysqli_connect("localhost","root","","membersapp");
if (!$con)
  {
  die('Could not connect: ' . mysqli_error($con));
  }

$sql="INSERT INTO memberstable (username, firstname, lastname, age, email, password)
VALUES
('$_POST[username]','$_POST[firstname]','$_POST[lastname]','$_POST[age]','$_POST[email]','$_POST[password]' )";

if (!mysqli_query($con,$sql))
  {
  die('Error: ' . mysqli_error($con));
  }
echo "$_POST[firstname] $_POST[lastname] has been added";

mysqli_close($con);
?> 


你的代码有一些地方出错,所以请把它读到我的答案的末尾

所有输入都没有名称属性。不能仅依赖id属性

改变

<input type="text" id="username">
其他人也遵循同样的惯例。 编辑: 另外,你的专栏名是“年龄”,而不是“年龄”,但我怀疑这会有什么不同。尝试将其更改为与字母大小写匹配

然而,这样做会让你有更多的选择。使用,或与

添加到文件的顶部,这将有助于查找错误

<?php 
error_reporting(E_ALL);
ini_set('display_errors', 1);

// rest of your code
否则,输入密码时,密码将以可读格式显示

还有别的东西不见了


您还缺少一个>以确保所有列都存在,并且它们的类型正确,并且长度足够大以容纳其中的数据。另外,请选择正确的表和数据库。此外,您的列名为Age,而不是Age。您还有其他3列的NULL设置为NO。这可能也是一个问题。好的,对不起,Fred,我是新来的,所以请尝试在该网站上工作。我现在做对了吗。。只需编辑原始帖子并添加任何编辑过的代码?我还固定了年龄,并将Null改为YES以签入case,仍然相同。我建议您只从需要的列重新开始。我怀疑你桌上的东西有点奇怪。你可以试着修复它,但那可能无法修复它。删除当前表,重新创建一个只包含所需列的新表,并且不对它们执行任何特殊操作。您好,谢谢,我已对TD问题进行了排序,并进行了编辑。。输入名称。我还添加了错误报告,但仍然没有错误,只有一个空白页。编辑的代码在OP中。
<input type="text" id="username" name="username">
                                 ^^^^^^^^^^^^^^^
<?php 
error_reporting(E_ALL);
ini_set('display_errors', 1);

// rest of your code
<input type="password" id="password" name="password">