gpt4 book ai didi

php - 在login.php中输入成功的用户名和密码之前不断出现错误消息

转载 作者:行者123 更新时间:2023-11-29 20:53:02 26 4
gpt4 key购买 nike

这些是我正在开发的网站的代码:

1) 登录.php

<?php
session_start();
include("connection.php");

// username and password sent from form
$myusername = (isset($_POST['myusername']) ? $_POST['myusername'] : null);
$mypassword = (isset($_POST['mypassword']) ? $_POST['mypassword'] : null);


// To protect MySQL injection
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);

$qry = "SELECT * FROM user WHERE user_name ='$myusername' AND user_password = '$mypassword'";
$result = mysql_query($qry);
$count = mysql_num_rows($result);

$output = mysql_fetch_assoc($result);

// If result matched $myusername and $mypassword, table row must be 1 row
if($count == 1) {
$_SESSION['login_user'] = $myusername;
$_SESSION['mypassword'] = $mypassword;
header("location: foodline.php");
exit();
}
else {
echo "Invalid Username or Password";
}
?>


<html>

<head>
<title>Login Page</title>

<style type = "text/css">
body {
font-family:Arial, Helvetica, sans-serif;
font-size:14px;
}

label {
font-weight:bold;
width:100px;
font-size:14px;
}

.box {
border:#666666 solid 1px;
}
</style>

</head>

<body bgcolor = "#FFFFFF">

<div align = "center">
<div style = "width:300px; border: solid 1px #333333; " align = "left">
<div style = "background-color:#333333; color:#FFFFFF; padding:3px;"><b>Login</b></div>

<div style = "margin:30px">

<form action = "" method = "post">
<label>UserName :</label><input type = "text" name = "username" class = "box"/><br /><br />
<label>Password :</label><input type = "password" name = "password" class = "box" /><br/><br />
<input type = "submit" value = " Submit "/><br />
</form>
</div>

</div>

</div>

</body>
</html>

2) 连接.php

<?php
$mysql_hostname ="localhost";
$mysql_user = "root";
$mysql_password ="";
$mysql_database = "foodline";

mysql_connect("$mysql_hostname", "$mysql_user", "$mysql_password") or die("Could not connect database");
mysql_select_db("$mysql_database") or die("Could not connect the database".mysql_error());
?>

3) session.php

<?php
include('connection.php');
session_start();

$user_check = $_SESSION['login_user'];

$ses_sql = mysql_query($user_check);

$row = mysql_fetch_array($ses_sql);

$login_session = $row['username'];

if(!isset($_SESSION['login_user']))
{
header("location:foodline.php");
}
?>

4)这是我得到的输出屏幕: Output Screen

错误消息“无效的用户名或密码”不会从上述代码中删除。我遗漏了什么或者在代码上做了什么额外的事情吗?

请帮助我!

最佳答案

如果您的表单已提交,您只希望执行 PHP 部分。利用 isset

用这个更新你的 php。

<?php
session_start();
include("connection.php");

if(isset($_POST['submit']))
{
// username and password sent from form
$myusername = (isset($_POST['myusername']) ? $_POST['myusername'] : null);
$mypassword = (isset($_POST['mypassword']) ? $_POST['mypassword'] : null);


// To protect MySQL injection
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);

$qry = "SELECT * FROM user WHERE user_name ='$myusername' AND user_password = '$mypassword'";
$result = mysql_query($qry);
$count = mysql_num_rows($result);

$output = mysql_fetch_assoc($result);

// If result matched $myusername and $mypassword, table row must be 1 row
if($count == 1) {
$_SESSION['login_user'] = $myusername;
$_SESSION['mypassword'] = $mypassword;
header("location: foodline.php");
exit();
}
else {
echo "Invalid Username or Password";
}
}
?>

现在,只有表单提交后,您的 php 才会执行。

更新

"SELECT * FROM user WHERE user_name ='" . $myusername . "' AND user_password = '" . $mypassword . "'";

关于php - 在login.php中输入成功的用户名和密码之前不断出现错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37865441/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com