SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



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



:: Buchempfehlung ::

TYPO3 Kochbuch

TYPO3 Kochbuch zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 06.08.2002, 13:01:22
phpBeginner phpBeginner ist offline
Anfänger
 
Registriert seit: Aug 2002
Ort: Mannheim
Alter: 60
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
Mit Zitat antworten
  #2  
Alt 06.08.2002, 13:05:08
Ben20
Guest
 
Beiträge: n/a
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.
Mit Zitat antworten
  #3  
Alt 06.08.2002, 13:19:35
phpBeginner phpBeginner ist offline
Anfänger
 
Registriert seit: Aug 2002
Ort: Mannheim
Alter: 60
Beiträge: 32
an ben 20

probier ich gleich mal aus!

danke vorerst mal für Deine Hilfe...
__________________
phpBeginner
Mit Zitat antworten
  #4  
Alt 06.08.2002, 13:48:10
phpBeginner phpBeginner ist offline
Anfänger
 
Registriert seit: Aug 2002
Ort: Mannheim
Alter: 60
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
Mit Zitat antworten
  #5  
Alt 06.08.2002, 14:37:29
phpBeginner phpBeginner ist offline
Anfänger
 
Registriert seit: Aug 2002
Ort: Mannheim
Alter: 60
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
Mit Zitat antworten
  #6  
Alt 06.08.2002, 15:27:40
phpBeginner phpBeginner ist offline
Anfänger
 
Registriert seit: Aug 2002
Ort: Mannheim
Alter: 60
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 16:02:09 Uhr)
Mit Zitat antworten
  #7  
Alt 06.08.2002, 16:06:33
Benutzerbild von Matt
Matt Matt ist offline
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
Mit Zitat antworten
  #8  
Alt 06.08.2002, 17:16:05
phpBeginner phpBeginner ist offline
Anfänger
 
Registriert seit: Aug 2002
Ort: Mannheim
Alter: 60
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 17:43:08 Uhr)
Mit Zitat antworten
  #9  
Alt 06.08.2002, 18:33:53
Benutzerbild von CyberAge
CyberAge CyberAge ist offline
Junior Member
 
Registriert seit: Apr 2002
Alter: 41
Beiträge: 285
CyberAge eine Nachricht über ICQ schicken CyberAge eine Nachricht über AIM schicken CyberAge eine Nachricht über Yahoo! schicken
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!
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Mit Zitat antworten
  #10  
Alt 06.08.2002, 20:38:32
phpBeginner phpBeginner ist offline
Anfänger
 
Registriert seit: Aug 2002
Ort: Mannheim
Alter: 60
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
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

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.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 10:29:36 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2023, Jelsoft Enterprises Ltd.


© 2001-2023 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt