我在登錄功能時遇到了一些麻煩。我一直在尋找幾個小時,我無法找到任何問題。我希望你們能幫助我。 我想獲取用戶的登錄名並檢查它是否存在於我的數據庫中。問題是它不斷返回我:「密碼可能不正確!」。 我試過一個「echo($ count)」,它不會返回任何東西。 「echo($ result)」是同樣的東西。PHP登錄和MySql查詢
我幾乎失去了正確的,我不明白爲什麼這不工作...
PS:我是法國人,所以你可能會看到一些法語單詞。
這裏是我的登錄表單:
<?php
session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Applications</title>
<!--Chargement des feuilles de style-->
<link rel="stylesheet" type="text/css" href="./css/style.css" />
<link rel="stylesheet" type="text/css" href="./css/styleLogin.css" />
<script src="./js/login/modernizr.custom.63321.js"></script>
</head>
<body>
<div class="container">
<header></header>
<section class="main">
<form class="form-2" id="loginForm" action="./controller/checkLogin.php" method="post">
<h1><span class="log-in">Se connecter</span></h1>
<p class="float">
<label for="loginLabel"><i class="icon-user"></i>Nom d'utilisateur</label>
<input type="text" name="login" id="login">
</p>
<p class="float">
<label for="passwordLabel"><i class="icon-lock"></i>Mot de passe</label>
<input type="password" name="password" class="showpassword" id="password">
</p>
<p class="clearfix">
<input type="submit" name="submit" value="Se connecter">
<input type="button" name="submitVisit" value="Accès utilisateur">
</p>
</form>
</section>
</div>
</body>
這是我的checkLogin.php:
<?php
session_start();
try {
$bdd = new PDO('mysql:host=localhost;dbname=stage','root','');
}
catch (Exception $e){ //en cas d'erreur de connexion, afficher le message
die('Erreur : '.$e->getMessage());
}
if(isset($_POST['submit'])){
// username and password sent from form
$login = $_POST['login'];
$pass = $_POST['password'];
$qry = "SELECT login FROM users WHERE login = 'admin'";
$result = mysql_query($qry);
// Mysql_num_row is counting table row
$count = mysql_num_rows($result);
if($count == 0){
die("Password was probably incorrect!");
}
// If result matched $myusername and $mypassword, table row must be 1 row
elseif($count == 1){
// Register $myusername, $mypassword and redirect to file "login_success.php"
$_SESSION['login'] = $login;
header("location: ./login_success.php");
}
else {
echo "Wrong Username or Password";
}
}
mysql_close($bdd);
?>
我想這對夫妻登錄:行政/管理。
預先感謝您。
你爲什麼使用PDO然後mysql _ *? – Class 2013-04-11 07:35:08
混淆:S其中是mysql_select_db,爲什麼混合使用PDO和mysql,而且mysql_query已被棄用! – Vimalnath 2013-04-11 07:37:22
OMG你的代碼是一種混亂..你正在使用mysql_ *與pdo和登錄沒有使用id和密碼和登錄每個用戶提交,甚至沒有驗證輸入.. – 2013-04-11 07:41:59