CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken |
06.08.2002, 12:01:22
|
Anfänger
|
|
Registriert seit: Aug 2002
Ort: Mannheim
Alter: 61
Beiträge: 32
|
|
Einloggen mit Benutzernamen und Passwort
Hallo Zusammen!
Wie kann ich einen Benutzer mit Passwort (Datenbank=mysql) in PHP überprüfen und den Usernamen als Sitzungsvariable (Session) weitergeben??
Ich habe einen kleinen Flohmarkt (5do.de) in asp programmiert, mit Hilfe von Dreamweaver UD.
In asp hat alles geklappt - aber bei php stehe ich vor einem Rätsel....
Da ich auf einen anderen Server umziehen muss, darf ich jetzt alles in php umprogrammieren.
Bin für jede Hilfe dankbar...
__________________
phpBeginner
|
06.08.2002, 12:05:08
|
|
Zitat:
Wie kann ich einen Benutzer mit Passwort (Datenbank=mysql) in PHP überprüfen und den Usernamen als Sitzungsvariable (Session) weitergeben??
|
Code:
$abfrage0 = @mysql_query("SELECT username FROM user WHERE passwort = PASSWORD('$passwort') AND username = '$username'");
if(@mysql_num_rows($abfrage0) == 1) {
$abfrage1 = @mysql_result($abfrage0, 0, 0);
$username = $abfrage1;
session_register("username");
}
Du mußt die Datenbankabfrage natürlich auf Deine Tabellen umändern. Außerdem könnten da noch ein paar Bugs drin sein.
|
06.08.2002, 12:19:35
|
Anfänger
|
|
Registriert seit: Aug 2002
Ort: Mannheim
Alter: 61
Beiträge: 32
|
|
an ben 20
probier ich gleich mal aus!
danke vorerst mal für Deine Hilfe...
__________________
phpBeginner
|
06.08.2002, 12:48:10
|
Anfänger
|
|
Registriert seit: Aug 2002
Ort: Mannheim
Alter: 61
Beiträge: 32
|
|
Hallo ben20
Diese Fehlermeldung kommt jetzt:
Notice: Undefined variable: passwort in c:programmeapache groupapachehtdocslogin.php on line 11
In meiner Datenbank heissen die Felder tatsächlich "username"
und "passwort" die Tabelle heisst "registry"
- das sind die form-daten:
<form action="inserate1.php" method="post" name="login" target="_parent" id="login">
1. Textfeld:
<input name="username" type="text" id="username">
2. Textfeld
<input name="passwort" type="password" id="passwort">
Schalter:
<input type="submit" name="Submit" value="Abschicken">
hmmm
Ich finde den Fehler nicht...
Die php Daten sind jetzt über dem Formular, kann es daran liegen??
PS: Wenn der Username falsch ist, habe ich in asp einfach diesen Code eingegeben:
MM_redirectLoginFailed="keinuser.asp"
Wenn user ok dann:
MM_redirectLoginSuccess="artikeleingabe.asp"
weisst Du da zufällig auch bescheid?? ;)
__________________
phpBeginner
|
06.08.2002, 13:37:29
|
Anfänger
|
|
Registriert seit: Aug 2002
Ort: Mannheim
Alter: 61
Beiträge: 32
|
|
ich schnalls nicht!
So hab ich den Code jetzt eingesetzt:
<?php
mysql_select_db($database_fdo, $fdo);
$abfrage0 = mysql_query "SELECT * FROM registry WHERE passwort = passwort '$passwort' AND username = '$username' ";
if(mysql_num_rows($abfrage0) == 1);
{
$abfrage1 = mysql_result($abfrage0, 0, 0);
$username = $abfrage1;
session_register("username");
}
?>
Kommt diese Meldung:
Parse error: parse error, unexpected '"' in c:programmeapache groupapachehtdocslogin.php on line 12
Wenn ich Klammern setze, gleiche Meldung...
__________________
phpBeginner
|
06.08.2002, 14:27:40
|
Anfänger
|
|
Registriert seit: Aug 2002
Ort: Mannheim
Alter: 61
Beiträge: 32
|
|
Sorry Ben20
Hab jetzt original Deinen Code verwendet und nur die datenbank daten geändert:
ich weiss hätt ich ja gleich so machen sollen :(
$abfrage0 = @mysql_query("SELECT username FROM registry WHERE passwort = PASSWORD('$passwort') AND username = '$username'");
if(@mysql_num_rows($abfrage0) == 1);
{
$abfrage1 = @mysql_result($abfrage0, 0, 0);
$username = $abfrage1;
session_register("username");
}
jetzt kommt nur noch 1 Fehlermeldung:
Warning: open(C:PHPsessiondatasess_cc1854685f8956ebe9360c7c722ef7ab, O_RDWR) failed: No such file or directory (2) in c:programmeapache groupapachehtdocslogin.php on line 13
Mit der weiss ich nix anzufangen, Du??
Vielleicht hat ja noch jemand anderes eine Idee??...
__________________
phpBeginner
Geändert von phpBeginner (06.08.2002 um 15:02:09 Uhr)
|
06.08.2002, 15:06:33
|
|
Member
|
|
Registriert seit: Mar 2002
Ort: Port 80, localhost-city, 127/0/0/1
Beiträge: 878
|
|
nunja, das lässt darauf schließen, dass die session noch nicht erstellt wird.
lies dir dazu das hier durch, da erfährst du mehr darüber
http://www.php.net/manual/en/function.session-start.php
|
06.08.2002, 16:16:05
|
Anfänger
|
|
Registriert seit: Aug 2002
Ort: Mannheim
Alter: 61
Beiträge: 32
|
|
hab die seite besucht, danke für den Tipp.
Also - hätte nie gedacht, dass php so kompliziert sein kann!!
Hab jetzt das mit session_start vor session_register gemacht bekomm aber immer noch die gleiche Fehlermeldung.
Dachte immer ASP wäre kompliziert mit seinen ganzen Klammern und Anführungszeichen etc.
Aber das was ich jetzt erlebe mit php ist ja WAHNSINN!!
Eigentlich eine einfache Aufgabe:
Log in - prüfe eingegebene Formulardaten über Datenbank ob Benutzer mit Passwort vorhanden,
wenn ja, geh z. B. auf ok.php,
wenn nein dann geh z. B. auf fehler.php.
Wenn vorhanden nimm username als session und übergib an ok.php.
Gibt es da keine "kompakte Lösung"??
Ich bin hier nur noch am "rumpuzzeln"
Ich hänge jetzt schon seit 4 Tagen an meiner Log-in-Datei!!!
Habe seitenweise Beschreibungen im Internet durchgelesen und ausprobiert, was mal einfach war (ASP), ist jetzt unlösbar.
Leider geht auf meinem neuen Server nur php...
Wer kann hier mit einem ordentlichen Script helfen??
Wer hat denn Ahnung???
Bin mittlerweile so vielen Tipps nachgegangen und Häppchen die man mir gab, aber eine kompakte Lösung..................?
Grüsse
__________________
phpBeginner
Geändert von phpBeginner (06.08.2002 um 16:43:08 Uhr)
|
06.08.2002, 17:33:53
|
|
Junior Member
|
|
Registriert seit: Apr 2002
Alter: 42
Beiträge: 282
|
|
Re: Sorry Ben20
Zitat:
Original geschrieben von phpBeginner
(C:PHPsessiondatasess_cc1854685f8956ebe9360c7c722ef7ab, O_RDWR) failed: No such file or directory (2) in c:programmeapache groupapachehtdocslogin.php on line 13
|
Die Fehlermeldung sagt doch alles! Du hast in der php.ini eine pfadangabe, wo deine sessions gespeichert werden sollen. Die Fehlermeldung gibt dir doch aus :
... failed: No such file or directory (2) .....
Also schau mal nach, ob das Verzeichnis C:PHPsessiondata existiert oder nicht. Achte darauf, dass php wie alle Serveranwendungen gross und kleinschreibung unterscheiden, windows hingegen das alles nix ausmacht.
__________________
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Im Leben ist nichts umsonst!
Selbst der Tod kostet das Leben!
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
|
06.08.2002, 19:38:32
|
Anfänger
|
|
Registriert seit: Aug 2002
Ort: Mannheim
Alter: 61
Beiträge: 32
|
|
Keine Fehlermeldung mehr!
Hallo Cyberage!
Das hat gestimmt - kurz und knapp und richtig - vielen Dank!!
Hast Du eine Ahnung wie ich jetzt die Formulardaten überprüfe,
was der Benutzer da eingegeben hat?
Selbst wenn ich die Textfelder "username" und "passwort"
im Formular leer lasse, dann auf "log in" klicke, geht er ohne Fehlermeldung zur nächsten Seite.
Richtig wäre aber, je nach Prüfergebnis, dass entweder z. B.
"userok.php" oder "userfail.php" aufgerufen wird.
Gruss
__________________
phpBeginner
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 13:24:14 Uhr.
|