好的,我的大学讲师已经要求我使用PHP创建一个登录系统 . 现在我读到关于PHP的看法,因为我不熟悉它 . 我使用这段代码并自己编写了一些代码 .
<?php
session_start();
$username = $_POST ['username'];
$password = $_POST ['password'];
if ($username&&$password) {
$connect = mysql_connect("localhost","root","") or die("Couldn't Connect");
mysql_select_db("phplogin") or die ("Couldn't find Database");
$query = mysql_query("SELECT * FROM users WHERE username='$username'")'
$numrows = mysql_num_rows ($query);
if ($numrows!=0) {
while ($row = mysql_fetch_assoc()) {
$dbusername = $row['username'];
$dbpassword = $row['password'];
}
if ( ($username==$dbusername) && ($password==$dbpassword) ) {
echo "you are in,<a href ='member.php'> Click here</a> to enter member page";
$_SESSION['username']=$dbusername;
} else {
echo "Incorrect password";
} else {
die ("That user does not exist");
}
echo $numrows;
} else {
die("Please enter a username and password")
}
?>
这是我正在使用的Index.php . 我的登录页面很简单,有2个字段:用户名和密码,带有登录和注册按钮 . 一旦我在我从数据库中获取的字段中输入详细信息,它就会在页面的顶部显示 .
点击此处进入会员页面“; $ _SESSION ['username'] = $ dbusername;}否则回显”密码不正确“;}否则死掉(”该用户不存在“); echo $ numrows;} else die(”请输入用户名和密码“)?>
我的注册页面也有问题,你必须填写4个字段:用户名,电子邮件,密码和确认密码,以及注册按钮以“注册”为用户 .
<?php //注册流程$ submit = $ _POST ['submit'];
//表单数据$ name = strip_tags($ _POST ['name']); $ username = strip_tags($ _POST ['username']); $ password = md5(strip_tags($ _POST ['password'])); $ confirmpassword = strip_tags($ _POST ['confirmpassword']); $ date = date(“Y-m-d”); if($ submit){if($ username && $ password && $ confirmpassword){//加密密码$ password = md5($ password); $ confirmpassword = md5($ confirmpassword); if($ password == $ confirmpassword){//检查字符长度if(strlen($ username)> 25 || strlen($ name)> 25){echo“用户名或名称的长度太长”; } else {//检查密码长度if(strlen($ password)> 20 || strlen($ password)<5){echo“密码必须在5到20个字符之间”; } else {//注册用户}}}否则回显“你的密码不匹配!”; } else echo“请填写<b>所有</ b> feidls!”; }?>
您的全名:选择用户名:选择密码:确认您的密码:
但是,即使在将详细信息输入到字段之前,这些大量代码也会在页面顶部显示 .
25 || strlen($ name)> 25){echo“用户名或名称的长度太长”; } else {//检查密码长度if(strlen($ password)> 20 || strlen($ password)<5){echo“密码必须在5到20个字符之间”; } else {//注册用户}}}否则回显“你的密码不匹配!”; } else echo“请填写所有的feidls!”; }?>
有人可以告诉我这里做错了什么吗?我使用Xampp来创建我的数据库 .
2 回答
您需要在单独的行上提供内联注释和可执行代码 .
你有这个:
它正在评论
if
声明 . 它必须是这样的:你这样做了几次:
//Register process $submit = $_POST['submit'];
- $ submit永远不会被定义,因为它在评论中 .干得好 . 我心情很好 . 我甚至添加了关闭
</td>
和<body>
标签,因为它们也丢失了:实际上看起来你要求它重定向到form.html但已经向浏览器输出了一些信息 . 这将导致错误 . 在输出任何内容之前,您需要尝试重定向 . 因此,在输出之前,您确实应该调用有效 .