Willkommen in der Webstatt
User-1 am 12.06.06 11:36

hi.
ich habe probleme bei meinen login. Dieses erfolgt übereine datenbank.
jeder sollte an eine bestimmte seite weiter geleitet werden, der inhalt änder sich durch benutzername und passwort
die datei sieht so aus:
form:
[COLOR=orange]<h2>Anmeldung</h2>

<form action="index_login.php" method="get">
<p>
<label>xyz-19utzername<br/></label>
<input class="input"name="name" />
</p>
<p>
<label>Passwort<br/></label>
<input name="pass" type="password" class="input" id="pw" />
</p>
<p>
<input name="gesendet" type="submit" class="button" id="gesendet" value="Anmelden" />
<input class="button" type="reset" value="Reset" />
</p>
</form>[/COLOR]

die PHP datei:
[COLOR=orange]<?php

$db = mysql_connect("localhost");
$sqlab = "SELECT * from passwort";
$sqlab .= " where name = '$name' and nummer = '$pass' ";

$res = mysql_db_query("sql130", $sqlab);
$num = mysql_num_rows($res);
if ($num==0)
{
echo "User und/oder Passwort falsch!";
}
else
{

header("Location: kundenseite.php?nummer=$pass")

}

mysql_close($db);
?>

<a href='kundenseite.php?nummer=$pass'>zu ihrer Kundenseite</a>[/COLOR]

ich bitte um hilfe!
lg xyz-131

netcup.de Warum gibt es hier Werbung?
User-2 am 12.06.06 12:02

Du speicherst Passwörter im Klartext..? Böse, böse..

<?php
// mysql verbindung
mysql_connect('localhost', 'root', '') or die(mysql_error());
mysql_select_db('sql130') or die(mysql_error());
// mit SHA1 _gehashtes_ passwort aus db holen
$res = mysql_query('select nummer from passwort where name = \''.addslashes($_GET['name']).'\'') or die(mysql_error());
$res = mysql_fetch_assoc($res);
// gegebenes pw hashen und vergleichen
if (sha1($_GET['pass']) == $res['nummer']) {
// login erfolgreich
} else {
// zugangsdaten falsch
}
?>

User-1 am 12.06.06 12:14

ja speichere ich,
es sollte ja dann ein link zum anklicken sein der den kunden dan auf seine seite weiterleitet.

kundenseite.php?nummer=$pass

mit deinem kommt immer die meldung falsch name bzw pass.
wie funktioniert dieses am leichtersten?

User-2 am 12.06.06 12:36

Quote
Original von xyz-131
mit deinem kommt immer die meldung falsch name bzw pass.

Ganz recht, weil mein Schnipsel für gehashte Passwörter ausgelegt ist.

Passwörter im Klartext zu speichern ist eine sicherheitstechnische Katastrophe,
die ich nicht unterstützen kann.

User-3 am 12.06.06 12:57

Jep. Du kannst zur Sicherheit einfach das PW mit md5() verschluesseln und auch die späteren Eingaben verschlüsseln und anschließend vergleichen.

User-4 am 12.06.06 12:59

passwort als MD5 speichern, weiterleitung als neue Spalte unterm Namen weiterleitung oder so speichern, wo liegt dan das Problem, nimm einfach für Passwort und Weiterleitung zwei andere Spalten!

User-1 am 12.06.06 13:44

ich verstehe nit wirklich wie es gehen soll. bitte erklär mir das ganz einfach oder schreib mir die anleitung hier hinein.
lg xyz-131

User-4 am 12.06.06 14:11

Erstmal das: [wiki]md5[/wiki]
xyz-48 das: [dok]md5[/dok]

xyz-48 weiß man:

md5(Hallo);

User-5 am 12.06.06 17:56

also du hast eine Tabelle:

| id | name | passwort | link

und dann überprüfst du ob das passwort und der name richtig sind und dann gibst du den Link aus.

User-4 am 12.06.06 19:49

ob_start();
if ($name == $_POST['name'] && $passwort == md5($_POST['passwort']) {
header("Location: $link");
exit();
}
else {
Fehler
}


Variable $name/passwort/link an den MySQL Zugang anpassen!

Creative Commons Lizenzvertrag
Alle Inhalte des Webstatt-Archivs stehen unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

Impressum & Kontakt