登录表单不能使用密码

时间:2013-10-01 19:15:24

标签: php

登录表单有问题。 我成功连接到db。如果我只使用用户名,则检查db,如果存在用户名,则重定向到另一个页面。如果我使用密码,它将无法登录。 以下是代码:

<?php

// check _POST data
$myusername=( isset($_POST['myusername']) ) ? $_POST['myusername'] : false;
$mypassword=( isset($_POST['mypassword']) ) ? $_POST['mypassword'] : false;

if( $myusername === false || $mypassword === false ) die('Access forbidden! Go away!');

// hash password
$encrypted_pass=md5($mypassword);


$host="localhost"; // Host name
$username="root"; // username
$password="le30mu09"; // password
$db_name="infobiz_db2"; // Database name
$tbl_name="jos_users"; // Table name

// Replace database connect functions depending on database you are using.
$link=mysql_connect("$host", "$username", "$password");
if (!$link) {
    die('Could not connect: ' . mysql_error());
}

mysql_select_db("$db_name");

$sql="SELECT * FROM $tbl_name WHERE Username='$myusername' and Password='$encrypted_pass'";
$result=mysql_query($sql);
mysql_close($link);
if(!$result) {
    die('No database' .mysql_error());
}

// Replace counting function based on database you are using.
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row

if($count==1){
  // Register $myusername, $mypassword and redirect to file "login_success.php"
  session_register("myusername");
  session_register("mypassword");
  header("location:login_success.php");
} 
else {
  echo "Wrong Username or Password";
}

?>

我真的很困惑,无法找到解决方案

1 个答案:

答案 0 :(得分:-2)

您需要使用适当的引号重写以下查询:

"SELECT * FROM $tbl_name WHERE Username='". $myusername . "' and Password='" . $encrypted_pass . "'"
相关问题