Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Login mit Hilfe von PHP und mySQL [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Login mit Hilfe von PHP und mySQL


 
Konvenienz
16-06-2008, 12:05 
 
hi,

zu dem besagtem tutorial habe ich eine kleine frage. sobald der login erfolgreich war, möchte ich auf einen automatischen verweis auf eine neue php-seite integrieren.

in welcher datei und wie müsste ich das skript anpassen, damit der eingeloggte benutzer auf eine andere php seite weitergeleitet wird? ich bin für jeden hinweis dankbar.

ciao
konv

 
Blackgreetz
16-06-2008, 14:03 
 
Link mal bitte das von dir angesprochene Login-Skript..

mfg

 
Konvenienz
16-06-2008, 14:11 
 
Sorry:

http://www.php-resource.de/tutorials/read/38/1/

 
TobiaZ
16-06-2008, 14:18 
 
Kommt drauf an, wie du es umgesetzt hast. Ein Tutorial ist ja eigentlich nicht dafür gedacht, den Code stupide zu kopieren, sondern die Entstehung zu verstehen und selbst umzusetzen.

Nachdem Login wirst du ja irgendwo in einen Gesicherten Bereich weiterleiten. Dort schreibst du dann deinen Link hin.

Solltest natürlich darauf achten, dass die verlinkte seite auch durch die logged_in() funktion geschützt ist. Ansonsten war das ganze überflüssig.

Wenn du den Link in die navigation einbauen willst, dann würde ich sowas einsetzen:

Link1
Link 2
if(logged_id())
echo Link 3;
Link 4
...

HTH, ansonsten einfach mal ne konkrete Frage stellen. ;)

 
Konvenienz
16-06-2008, 14:33 
 
Ich habe den Code schon entsprechend angepasst und nicht nur stupide abgeschrieben. Ich verstehe den Code auch soweit. Ist ja super beschrieben.

Auch dachte ich, dass die Frage soweit verständlich war. Nach der Überprüfung der Daten möchte ich auf eine php Seite umlenken also im Prinzip auf den geschützten Bereich. Dies ist in dem Skript so nicht hinterlegt. Ich wollte hier mit header (location...) arbeiten aber da habe ich wohl den Ansatz nicht verstanden. Ich bekomme hierbei immer eine Fehlermeldung: Warning: Cannot modify header information - headers already sent by ....

Ich will das Tutorial als Grundlage nutzen und entsprechend erweitern und für meine Bedürfnisse anpassen.

Danke!

 
onemorenerd
16-06-2008, 14:39 
 
http://php-resource.de/forum/showthread.php?s=&threadid=62965

 
TobiaZ
16-06-2008, 14:41 
 
Nach der Überprüfung der Daten möchte ich auf eine php Seite umlenken also im Prinzip auf den geschützten Bereich. Dies ist in dem Skript so nicht hinterlegt. Ich wollte hier mit header (location...) arbeiten aber da habe ich wohl den Ansatz nicht verstanden. Das ist soweit richtig.Ich bekomme hierbei immer eine Fehlermeldung: Warning: Cannot modify header information - headers already sent by ....Und du bist bei deiner Suche nicht auf diesen Thread (http://www.php-resource.de/forum/showthread.php?s=&threadid=62965) gestoßen? Übrigens als "Wichtig" markiert.

 
skappler
14-07-2008, 00:48 
 
Hallo
Ich habe auch ein Problem mit dem Login. Wenn ich alles auf den Server mache und dann die Daten in das Formular eingebe und abschicke kommt eine Fehlermeldung:

Access denied for user 'skappler'@'192.168.%' to database 'users'

Kann mir einer sagen woran das liegt?

EDIT: Mir ist gerade aufgefallen das ich den Codeteil:

<?
session_start();
include 'sessionhelpers.inc.php';
echo 'Sie sind ';
if (!logged_in())
echo 'nicht ';
echo 'eingeloggt.<p />';
echo '<a href="login.php">Start</a>';
?>

In keiner Datei enthalten habe und wollte jetzt fragen wo ich das einfügen muss

 
TobiaZ
14-07-2008, 12:14 
 
Access denied for user 'skappler'@'192.168.%' to database 'users' Steht das da genau so, oder hast du da was editiert, weil du angst hast, man könnte was mit deiner lokalen(!) IP Anfangen? :rolleyes:

Naja, wenn access denied, dann access denied. -> Zugangdaten und Benutzerrechte kontrollieren!

und wollte jetzt fragen wo ich das einfügen mussDen kannst du da einfügen, wo du ihn brauchst. Wenn du nicht nur Copy&Paste betreibst, sondern mal versuchst nachzuvollziehen, was der Code da macht, dann sollte das auch von alleine klar werden...

 
skappler
14-07-2008, 12:22 
 
Nein Nein das stand genauso da.
Also die Benutzerdaten hab ich alle überprüft. Die Benutzerrechte, wie kann ich die überprüfen?

In der einen Datei sessionhelper.inc.php muss man ja den Servernamen angeben. Was muss ich da hinschreiben? Ich hab jetzt localhost reingeschrieben weil ich das irgendwo hier auf der Seite so gesehn hab.

 
TobiaZ
14-07-2008, 12:29 
 
Nein Nein das stand genauso da. Dann zeig mal bitte die "connect()"-Funktion, wie sie programmiert ist.

Also die Benutzerdaten hab ich alle überprüft. Die Benutzerrechte, wie kann ich die überprüfen? der MySQL-Server läuft auf deinem normalen Rechner? Also hast du entsprechende Rechte für den MySQL Server oder ist das nen Webhosting Packet?

In der einen Datei sessionhelper.inc.php muss man ja den Servernamen angeben. Was muss ich da hinschreiben? Ich hab jetzt localhost reingeschrieben weil ich das irgendwo hier auf der Seite so gesehn hab. Wenns ein Localhost ist, dann ist das korrekt. Und die Datenbank hat auch sicher den Namen users?

 
skappler
14-07-2008, 12:31 
 
Ich hba das ganze bei Funpic gehostet. Hier die connect() Funktion

function connect()
{
$con= mysql_connect('localhost','skappler','passwort') or die(mysql_error());
mysql_select_db('users',$con) or die(mysql_error());
}

 
TobiaZ
14-07-2008, 12:32 
 
Nochmals: Und du bist dir Sicher, dass die Datenbank users heißt?

 
skappler
14-07-2008, 12:35 
 
:goth: Ich idiot hab den Datenbank namen mit dem Tabellen namen verwechselt. VIelen Dank^^

 
TobiaZ
14-07-2008, 12:37 
 
;)

 
xCapricorn
06-08-2008, 13:25 
 
Hallo,

da es im Endeffekt um die selbe Thematik geht (LogIn-Skript) hänge ich mich mal hier dran.

Es geht im genauen um das Tutorial von Andreas Zimare - unter folgendem Link zu finden: Wie erstelle ich ein Login-Skript? (http://www.php-resource.de/tutorials/read/33/1/)

Vorerst habe ich das Skript eins zu eins übernommen, handgetippselt in mein Phase5 reingetackert, Datei für Datei, um auch was von dem Code mitzubekommen. Lediglich die Infos zur Datenbank in der config.inc.php habe ich auf meine Bedürftnisse abgeändert.

Skript hochgeladen, Loginbildschirm wird angezeigt, Username eingegeben, Passwort reingetackert und abgeschickt.

Nun zum eigentlichen Problem. Ich bekomme trotz richtigem Passwort die Fehlermeldung: "Sorry, aber dieses Passwort ist falsch!"

Da ich mir echt sicher war, welches Passwort ich eingerichtet hatte, habe ich erstmal den md5-wert aus der Datenbank mit einem Onlinegenerator verglichen. Stimmte überein.

Danach dachte ich mir, ok, verschlüssel dass passwort einfach mal nicht. In der Tabelle den Wert MD5 abgeschalten und das Passwort im Reintext eingefügt, ebenso im Code die Methode MD5 weggelassen.

Leider hat das auch nichts gebracht!

Als nächstes dachte ich mir, vielleicht hat der Author einen kleinen Fehler bei seinen elseif-Verzweigungen gemacht und eventuell ausversehen bei ungleichem Passwort (also nach Datenbankvergleich) den Login erlaubt und bei richtigem Passwort die Fehlermeldung drangesetzt. (Kann ja mal passieren bei den ganzen elseifs xD ). Dem war natürlich nicht so!

Naja, zumindest steh ich jetzt ein wenig doof da. Vielleicht könnt Ihr mir helfen? Ich habe bewußt den Quelltext nicht hier reingestellt, da er ja unter dem link einsehbar ist.

Nach dieser Fehlermeldung habe ich auch den Quelltext nochma l komplett per copy&paste übernommen, einfach um Abschreib-Fehler auszuschließen.

Könnt Ihr mir weiterhelfen (Brainstorming, woran könnts denn nur liegen?)

 
UzumakiNaruto
06-08-2008, 13:40 
 
$password = md5($password);
[...]
if($password != $result['pass']){
[...]

es wird nirgendwo $password = $_POST['password']; gemacht ;)
entweder das vor $password = md5($password); einmal machen oder $password = md5($_POST['password']);

 
jahlives
06-08-2008, 14:44 
 
Du bist echt nicht der erste mit genau diesem Problem mit diesem Tut. Ich selber habe in mehreren Threads darauf hingewiesen, dass dieses Tut NUR mit register_globals ON funzt und daher angepasst werden sollte.
Ein entsprechend gesetztes Error Reporting hätte dich aber auf die undefinierte Variable password aufmerksam gemacht.

 
xCapricorn
06-08-2008, 15:33 
 
Ist mir inzwischen auch bewußt, das dieses Tut umgeschrieben werden müsste. Ist mir durch die nette Fehlermeldung nach dem hilfreichen Tip Deines Vorredners bekannt geworden.

Aber bedenke:

google Suche "Loginbereich mit PHP"

Ah, ein fertiges script, das schau ich mir mal an!

(!Ich habe von PHP genausoviel Ahnung, wie Ihr alle zusammen vermutlich vom bakteriellen zusammenhalt halbtoter g-chromosomen dunkler Ratten).

Neben mir liegt PHP und MySQL für Kids und die ungekürzte Studienausgabe PHP5 / MySQL4 (Matthias Kannengiesser).

Habe die letzten 30 Minuten hier mal ein wenig gestöbert. Mir fällt auf, das Ihr immer erwartet, das PHP/SQL-Neulinge sofort schnallen, was mit dem und dem Beitrag gemeint ist. Vielleicht existiert dieses Thema tatsächlich bereits. Nur wenn man gerade versucht etwas zu lernen über ein bestimmtes Thema, kann man nicht sofort zurordnen, ist dies der richtige Beitrag für mich.

In meinem Fall:

Auftrag meines Chefs:

"Ermögliche die Ausgabe für alle Sichtbar von bestimmten Statistikwerten auf einer Homepage.
Ermögliche das ändern dieser Werte über einen Loginbereich mit hinterlegter Datenbank dieser Statistikwerte."

Soll bis Heute Abend realisiert werden. Nun sag mir mal bitte, wie ich als "interessierter" Neuling über Eure SuFu innerhalb kürzester Zeit ohne jegliches Hintergrundwissen herausfinden soll, dass es bereits zu einem Tut, bei dem man davon ausgeht, das es, wenn es vorhanden ist auch entsprechend aktuell ist, entsprechende Anfragen über Fehler gibt, ohne dabei nur blind zu kopieren? hmmmmmm?

Ein entsprechend gesetztes Error Reporting hätte dich aber auf die undefinierte Variable password aufmerksam gemacht.

ähm....ja genau ! ??? :) ;)

Wie auch immer:
Um keine Diskussion in einer themensinnlosen Richtung zu starten: "Du hast recht" und ich such mir einfach nur "Hilfe" auf einer anderen Seite, auf der noch ein gewisses "Einfühlungsvermögen" für Neulinge existiert.


@UzumakiNaruto: Danke für die schnell und unkomplizierte Hilfe.

@MOD (in dem Fall sogar Du selbst jahlives):
Thread can be closed, solution has been given!

 
UzumakiNaruto
06-08-2008, 15:47 
 
Ein entsprechend gesetztes Error Reporting hätte dich aber auf die undefinierte Variable password aufmerksam gemacht.

http://php-resource.de/forum/showthread.php?s=&threadid=50454
ist im bereich PHP script resource > Entwicklung > PHP Developer Forum verlinkt ;)

ich denke mal das unser mod angenommen hat das du diesen thread mutwillig übergangen hast :D

gutes tut zum thema login
http://tut.php-q.net/login.html

die ganze seite ist eigentlich zu empfehlen .. als neuling :D

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 02:49 Uhr.