PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Loginscript


richard77
23.05.2006, 14:35:33
Hallo,

bräuchte dringend Hilfe - benötige wird ein PHP-Script für verschiedene geschützte Bereiche, auf die ein bestimmter Personenkreis nur mit Passwort zugreifen kann - leider hat mich derjenige mit PHP-Kenntnissen in Stich gelassen, wäre super wenn sich jemand melden würde - DANKE

Richard

Sarah19
23.05.2006, 16:30:32
Ich glaube, das dies funktionieren müsste.

// Seite mit login

<form action="weiter.php" method="post">
<table>
<tr><td>Mail:</td><td> <input type="text" name="mail"><br></td></tr>
<tr><td>Password:</td><td> <input type="password" name="password"></td></tr>
<tr><td>&nbsp;</td><td><input type="submit" value="Zum Login"><input type="reset" value="Abbrechen">
</form></td></tr>

Dann am Anfang jeder seite die geschützt ist folgendes:
session_start();
$password = $_SESSION["passwort"];
$mail = $_SESSION["mail"];
//md5 verschlüsselt das Passwort
$password1 = md5($password);
include('config.php');
$resultID = @mysql_query("SELECT
COUNT(id) FROM
login
WHERE
mail = '$mail' &&
password = '$password1'

");
$total = @mysql_result($resultID,0);
if ($total=="0")
echo "Falsche E-Mail oder Passwort!<br>
Bitte logge dich ein.
<form action='weiter.php' method='post'>
<table>
<tr><td>Mail:</td><td> <input type='text' name='mail'><br></td></tr>
<tr><td>Password:</td><td> <input type='password' name='password'></td></tr>
<tr><td>&nbsp;</td><td><input type='submit' value='Zum Login'><input type='reset' value='Abbrechen'>
</form></td></tr>";
else
{//Hier kommt das rein, was angezeigt werden soll, wenn der Login positiv verlaufen ist
};

Also wenn ich das so richtig sehe, sollte das so gehen.

Wäre auf alle Fälle ein Anfang.

Grüzi

richard77
26.05.2006, 08:53:38
Danke - komme erst jetzt wieder an einen PC - werde es gleich testen und melde mcih dann - servus

n3ox
25.06.2006, 12:10:19
Man könnte da Script ein bisschen verfeinern und eine Struktur reinbringen.... wäre nur ein guter Tipp. Ansonsten eine gute das Prob zu lösen.

columbo1979
29.09.2006, 13:04:47
Habe eben mal zwei Dateien erstellt :

aufruf.php

<?
include "../conf/config.php";
echo "<form action=\"weiter.php\" method=\"post\">";
echo "<table>";
echo "<tr><td>Password:</td><td> <input type=\"password\" name=\"password\"></td></tr>";
echo "<tr><td>&nbsp;</td><td><input type=\"submit\" value=\"Zum Login\"><input type=\"reset\" value=\"Abbrechen\">";
echo "</form></td></tr>";
?>

und weiter.php

<?
session_start();
$password = $_SESSION["password"];
$password1 = md5($password);
include('../conf/config.php');

$abfrage = "SELECT back,font,link,alink,vlink,zeile1,zeile2,color,language,title,password FROM config";
$result = mysql_query($abfrage);

$back = mysql_result($result,0);
$font = mysql_result($result,0,1);
$link = mysql_result($result,0,2);
$alink = mysql_result($result,0,3);
$vlink = mysql_result($result,0,4);
$zeile1 = mysql_result($result,0,5);
$zeile2 = mysql_result($result,0,6);
$color = mysql_result($result,0,7);
$language = mysql_result($result,0,8);
$title = mysql_result($result,0,9);
$password = mysql_result($result,0,10);

echo "$password";

$result = @mysql_query("SELECT
COUNT(password) FROM
config
WHERE

password = '$password1'

");
$total = @mysql_result($result,0,10);
if ($total=="0")
echo "Falsches Passwort!<br>";
echo " Bitte logge dich ein.";
echo "<form action='weiter.php' method='post'>";
echo "<table>";
echo "<tr><td>Password:</td><td> <input type='password' name='password'></td></tr>";
echo "<tr><td>&nbsp;</td><td><input type='submit' value='Zum Login'><input type='reset' value='Abbrechen'>";
echo "</form></td></tr>";
?>

Nur leider wird mir immer gesagt, falsche Passwort.

In der config.php ist nur die einfache Datenbankanbindung.
Und das passwort steht in der Tabelle config in der 11 / 10 Spalte.

Wo kann der Fehler liegen ? Danke !

alexwess
02.10.2006, 12:30:23
password = '$password1'

-> password = $password1

MatMel
02.10.2006, 14:56:23
password = '$password1'

-> password = $password1
Das Passowrt wird sicher nicht in einer Spalte des Typs int abgespeichert. Und nur bei ints darf man die Hochkommata weglassen..

Wo bitte wird denn das Passwort in die Session geschrieben? Ich hab nirgedwo die Stelle gefunden!
Liefert echo $password1 das richtige Passwort?