登录会话php

sur*_*ava 2 php mysql session login

我创建登录会话,它已显示错误:未识别myusernamemypassword在这些行中.我不知道为什么.

$myusername=$_POST['myusername']; 
$mypassword=$_POST['mypassword'];
Run Code Online (Sandbox Code Playgroud)

这是我的checklogin.php

mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");

$myusername=$_POST['myusername']; 
$mypassword=$_POST['mypassword']; 

$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";
$result=mysql_query($sql);

$count=mysql_num_rows($result);

if($count==1){

session_register("myusername");
session_register("mypassword"); 
header("location:login_success.php");
}
else {
echo "Wrong Username or Password";
}
?>
Run Code Online (Sandbox Code Playgroud)

这是我的登录表格:

<form action='checklogin.php' method="post" >
Username
<input name='myusername' type="text">
Password
<input name='mypassword' type="password">

<input type="submit" name="Submit" value="Login">

</form>
Run Code Online (Sandbox Code Playgroud)

Nul*_*teя 5

检查$_POST['myusername']$_POST['mypassword']在使用前设置

if(isset($_POST['myusername']) && isset($_POST['mypassword']) && !empty(trim($_POST['myusername'])) && !empty(trim($_POST['mypassword']))) {

 }
Run Code Online (Sandbox Code Playgroud)

它看起来login_true.php也应该是形式动作checklogin.php

<form action='checklogin.php' method="post" >
Run Code Online (Sandbox Code Playgroud)

因为你发送数据login_true.php不是check_login.php因为你得到错误:unidentified bla bla

警告:您的代码完全打开sql禁令

好读:

  1. 防止SQL注入的最佳方法?
  2. MySQL开发人员的PDO教程
  3. Pdo适合初学者(为什么?以及如何?)