根据下面的教程,我正在尝试进行注册:
https://www.youtube.com/watch?v=T9MvEFcJyQw
我是 PHP 新手,我需要一些帮助。
现在显示这些错误:
注意:未定义索引:C:\wamp64\www 中的 Nachname egister.php 第 6 行
注意:未定义索引:电子邮件位于 C:\wamp64\www egister.php 第 7 行
注意:未定义索引:Geburtstag 在 C:\wamp64\www egister.php 第 8 行
注意:未定义索引:Name der Schule in C:\wamp64\www egister.php 第 9 行
警告:mysql_num_rows() 期望参数 1 为资源,布尔值在 C:\wamp64\www 中给出 egister.php 第 18 行
警告:array_push() 期望参数 1 为数组,在 C:\wamp64\www 中给出 null egister.php 第 36 行
这是我的php代码:
<?php
require "init.php";
$name = $_POST ["name"];
$name = $_POST ["surename"];
$email = $_POST ["Email"];
$birthdate = $_POST ["Geburtstag"];
$name = $_POST ["Name der Schule"];
$user_name = $_POST ["user_name"];
$password = $_POST ["password"];
$sql = "select * from user_info where email like '".$email."';";
$result = mysqli_query($con,$sql);
$respons = array();
if (mysql_num_rows ($result)>0)
{
$code = "req_faild";
$message = "User already exist";
array_push($response,array("code"=>$code, "message"=>$message));
echo json_encode($response);
}
else
{
$sql = "insert into user_info values('".$name."','".$name."','".$email."','".$birthdate."','".$name."','".$user_name."','".$password."');";
$result = mysqli_query($con,$sql);
$code = "req_success";
$message = "Thank your for register with us. NOw you can login.";
array_push($response,array("code"=>$code, "message"=>$message));
echo json_encode($response);
}
mysqli_close($con);
?>
这是我的html代码:
<html>
<body>
<form action="register.php" method="post">
<table>
<tr>
<td>Name: </td><td><input type="text" name="name"/></td>
</tr>
<tr>
<td>Surename: </td><td><input type="text" name="name"/></td>
</tr>
<tr>
<td>Email: </td><td><input type="text" name="email"/></td>
</tr>
<tr>
<td>Birthday: </td><td><input type="text" name="birthday"/></td>
</tr>
<tr>
<td>Name of your School: </td><td><input type="text" name="name"/></td>
</tr>
<tr>
<td>User Name: </td><td><input type="text" name="user_name"/></td>
</tr>
<tr>
<td>Password: </td><td><input type="text" name="password"/></td>
</tr>
<tr>
<td><input type="submit" value="Register"/></td>
</tr>
</tanle>
</form>
</body>
</html>
有人可以帮助我吗?
<input type="text" name="name"/>
您在“name”属性中输入的名称就是要在 php 中访问的名称。
因此,如果您的 HTML 名称属性是“test_input”,则可以在 PHP 中使用“$_POST['test_input']”或“$_GET['test_input']”(如果您形成 GET)来访问
您也只能定义一个变量一次!如果您第二次设置 $name,您将覆盖您的第一次声明。
确保 html 中的变量名称
name="birthdate"
是您所有字段的 $_POST
( $_POST['birthdate']
) 中的键 $con
可以与 mysqli_query
一起工作
在您的 array_push
中,您有
$response
但您在上面声明了它
$respons
(缺少
e
)