Ich habe meine Frage here geschrieben und bevor ich den Beitrag bearbeitet wurde es als keine echte Frage geschlossen wurde!Überprüfen Sie Benutzername und Passwort für die Datenbank (Skript enthalten)
Ich habe ein Login-Formular wie folgt aus:
<html>
<head>
<title>Password Checking Script</title>
</head>
<body>
<form action="check_user-pass.php" method="POST">
<h3>Please Login</h3>
User Name: <input type="text" name="user_name"><br>
Password: <input type="password" name="password">
<input type="submit" name="submit" value="Login!">
</form>
</body>
</html>
Wie Sie sehen, ist diese Form der Benutzer durch check_user-pass.php
authentifiziert.
Es sucht nach diesen Anmeldeinformationen in meiner Datenbank; Wenn sie vorhanden sind, gibt sie OK
zurück, sonst gibt sie den Wert NO
zurück.
Also meine Frage ist: genau welchen Code sollte ich in check_user-pass.php
aufnehmen?
Ich habe versucht, mehr Code hinzuzufügen, konnte das aber auch nicht! Meine aktuellen Code ist:
<?php
ob_start();
$host=""; // Host name
$username=""; // Mysql username
$password=""; // Mysql password
$db_name=""; // Database name
$tbl_name=""; // Table name
// Connect to server and select databse.
mysql_connect("$host", "$username", "$password") or die(mysql_error());
echo "Connected to MySQL<br />";
mysql_select_db("$db_name") or die(mysql_error());
echo "Connected to Database<br />";
// Check $username and $password
/*
if(empty($_POST['username']))
{
echo "UserName/Password is empty!";
return false;
}
if(empty($_POST['password']))
{
echo "Password is empty!";
return false;
}
*/
// Define $username and $password
$username=$_POST['username'];
$password=md5($_POST['pass']);
// To protect MySQL injection (more detail about MySQL injection)
$username = stripslashes($username);
$password = stripslashes($password);
$username = mysql_real_escape_string($username);
$password = mysql_real_escape_string($password);
$sql="SELECT * FROM $tbl_name WHERE username='$username' and password='$password'";
$result=mysql_query($sql);
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $username and $password, table row must be 1 row
if ($count==1) {
echo "Success! $count";
} else {
echo "Unsuccessful! $count";
}
ob_end_flush();
?>
Dieser Code muss funktionieren. Was ist das Problem, vor dem Sie stehen? –
@PdsIr ** Willkommen bei StackOverflow! ** Stellen Sie sicher, [lesen Sie die FAQ] (http://StackOverflow.com/faq). –