25.03.2011, 09:54
#
21 Threadstarter
Registriert seit: 06.10.2010
Beiträge: 97
bei mir funktioniert hier garnichts
25.03.2011, 09:58
#
22
Registriert seit: 05.11.2008
Beiträge: 1.826
Zitat:
Zitat von
Gian1307 bei mir funktioniert hier garnichts
Wäre schön wenn du ein wenig ausführlicher wirst. Fehlermeldung, Quellcode wo es klempt, Datei usw.
Bei 5 Wörter kann man dir leider nicht helfen
25.03.2011, 10:09
#
23 Threadstarter
Registriert seit: 06.10.2010
Beiträge: 97
Parse error: syntax error, unexpected '<' in /users/gian1307/www/hftl/login.php on line 17
ich hoffe das sagt dir was
25.03.2011, 10:14
#
24
Registriert seit: 05.11.2008
Beiträge: 1.826
Poste doch mal bitte dein Code von der Datei.
25.03.2011, 10:18
#
25 Threadstarter
Registriert seit: 06.10.2010
Beiträge: 97
PHP-Code:
<?php
session_start ();
$username = $_POST [ "username" ];
$passwort = $_POST [ "password" ];
$passwort = md5 ( $passwort );
$log = 0 ;
$userdatei = fopen ( "user.txt" , "r" );
while (! feof ( $userdatei ))
{
$zeile = fgets ( $userdatei , 500 );
$userdata = explode ( "|" , $zeile );
if ( $userdata [ 0 ]== $username and $passwort == trim ( $userdata [ 1 ]))
{
$_SESSION [ 'username' ] = $username ;
echo < a href =\ "geheim.php\">Geschützer Bereich</a>;
$log = 1;
}
}
fclose( $userdatei );
if ( $log ==0)
{
echo " Zugriff verweigert < a href =\ "login.html\">Zurück</a>" ;
}
?>
25.03.2011, 10:23
#
26
Registriert seit: 05.11.2008
Beiträge: 1.826
Sind das lauter Codeschnipsel die du zusammenfügst oder hast du das alles selbst geschrieben? Den langsam bezweifel ich es das es von dir ist denn so ein Fehler sollte man eigentlich sehen.
Hier steht der Quellcode der richtig ist:
Weiterleitung nach Absenden
__________________
"Wer kämpft, kann verlieren. Wer nicht kämpft, hat schon verloren." - Bertolt Brecht
25.03.2011, 10:28
#
27 Threadstarter
Registriert seit: 06.10.2010
Beiträge: 97
naja jetzt kommt zwar erfolgreich eingeloggt aber dann kommt
bplaced.net Diese Seite ist leider nicht mehr verfügbar, Fehler 404. Sorry, this page is not available any more, error 404. Contact service provider
---------- Doppelpost zusammengeführt ---------- die seite ist aber verfügbar
---------- Doppelpost zusammengeführt ---------- also sie ist vorhanden läss sich aber irgendwie nicht aufrufen
---------- Doppelpost zusammengeführt ---------- PHP-Code:
<?php
session_start ();
if(!isset( $_SESSION [ 'username' ]))
{
echo '
<html>
<head>
<meta http-equiv="refresh" content="3; URL=/login.php" >
</head>
<body>
<p>Bitte erst <a href="login.html">einloggen</a></p>
</body>
</html>
' ;
exit;
}
?>
ich hab das was du mir gegeben hast eingefügt
25.03.2011, 10:34
#
28
Registriert seit: 05.11.2008
Beiträge: 1.826
Tut mir leid aber so kann ich dir nicht helfen, ich weiss jetzt nicht was du gemacht hast, wo du das eingefügt hast usw.
25.03.2011, 10:50
#
29 Threadstarter
Registriert seit: 06.10.2010
Beiträge: 97
na im geheim.php
oben über meiner seite
und die kann ketzt nicht mehr aufgerufen werden
25.03.2011, 11:48
#
30
Registriert seit: 05.11.2008
Beiträge: 1.826
Hier alle drei Dateien. Bei mir klappt das ohne Probleme. Kopiere sie komplett:
Spoiler :
login.html
HTML-Code:
<html>
<head>
<title> Login</title>
</head>
<body>
<h1 style="color:#556B2F; font-size:50px;" align="center" > Login</h1>
</br> </br> </br>
<center>
<form action="login.php" method="post" >
<table border="0" width="500" height="150" >
<tr>
<td> <b> Nutzername:</b> </td>
<td> <input type="text" name="username" /> </td>
</tr>
<tr>
<td> <b> Passwort:</b> </td>
<td> <input type="password" name="password" /> </td>
</tr>
</table>
</br> </br> </br>
<input type="submit" value="Absenden" >
</form>
</center>
</body>
</html> login.php
PHP-Code:
<?php session_start (); $username = $_POST [ "username" ]; $passwort = $_POST [ "password" ]; //$passwort = md5($passwort); $userdatei = fopen ( "user.txt" , "r" ); while (! feof ( $userdatei )) { $zeile = fgets ( $userdatei , 500 ); $userdata = explode ( "|" , $zeile ); if ( $userdata [ 0 ]== $username and $passwort == trim ( $userdata [ 1 ])) { // Username in der Session abspeichern $_SESSION [ 'username' ] = $username ; // Gibt HTML Code aus mit der weiterleitung zu geheim.php sofern er eingeloggt ist echo '<html><head><meta http-equiv="refresh" content="3; URL=/geheim.php" ></head><body><p>Erfolgreich eingeloggt</p></body></html>' ; } } fclose ( $userdatei ); if(!isset( $_SESSION [ 'username' ])) { // Falls er nicht eingeloggt ist weiterleitung an die login.html echo '<html><head><meta http-equiv="refresh" content="3; URL=login.html" ></head><body><p>Bitte erst <a href="login.html">einloggen</a></p></body></html>' ; } ?>
geheim.php
PHP-Code:
<?php session_start (); ?> <html> <head> <title>Passwortänderung</title> </head> <body> <h1 style="color:#556B2F; font-size:50px;" align="center">Passwortänderung</h1> </br></br></br> <center> <form method="post" action="gb2.php" > <table border="0" width="500" height="150"> <tr> <td><b>Nutzername:</b></td> <td><input type="text" name="username" value="<?php echo $_SESSION [ 'username' ] ?> " /></td> </tr> <tr> <td><b>altes Passwort:</b></td> <td><input type="password" name="oldpass" /></td> </tr> <tr> <td><b>neues Passwort:</b></td> <td><input type="password" name="password" /></td> </tr> <tr> <td><b>neues Passwort bestätigen:</b></td> <td><input type="password" name="passworth" /></td> </tr> </table> </br></br></br> <input type="submit" value="Absenden" > </form> </center> </body> </html>
Möchte aber nochmals hinweise das deine Variante ziemlich unsicher ist und es ziemlich einfach ist die "Sperre" zu umgehen.
__________________
"Wer kämpft, kann verlieren. Wer nicht kämpft, hat schon verloren." - Bertolt Brecht
25.03.2011, 12:32
#
31 Threadstarter
Registriert seit: 06.10.2010
Beiträge: 97
ich habe die scripts kopiert aber nach dem ich auf absenden geklickt habe kam nur ein weißer bilschirm
25.03.2011, 12:35
#
32
Registriert seit: 05.11.2008
Beiträge: 1.826
Starte mal den Browser neu - da muss ich nochmal nachschauen
25.03.2011, 12:51
#
33 Threadstarter
Registriert seit: 06.10.2010
Beiträge: 97
ich hab noch was bei login.php geändert jetzt gehts
aber die eigentliche passwortänderung geht nicht
gb2.php
PHP-Code:
<?php
session_start ();
$username = $_POST [ "username" ];
$passwort = $_POST [ "password" ];
$passwort1 = $_POST [ "password1" ];
$passwort2 = $_POST [ "password2" ];
$passwort = md5 ( $passwort );
$log = 0 ;
$userdatei = fopen ( "user.txt" , "r" );
while (! feof ( $userdatei ))
{
$zeile = fgets ( $userdatei , 500 );
$userdata = explode ( "|" , $zeile );
if ( $userdata [ 0 ]== $username and $passwort == trim ( $userdata [ 1 ]))
{
$_SESSION [ 'username' ] = $username ;
$log = 2 ;
}
}
fclose ( $userdatei );
if ( $log == 0 )
{
echo "Zugriff verweigert <a href=\"login.html\">Zurück</a>" ;
};
if ( $password1 == $password2 );
else
}
echo "Deine Passwörter waren nicht identisch,<a href=\"gb.php\">Zurück</a>
if ( $log = 2);
{
$userdatei = fopen (" user . txt "," a ");
fdelete( $userdatei , $passwort );
fdelete( $userdatei , $" \ n ");
fwrite( $userdatei , $passwort1 );
fwrite( $userdatei , " \ n ");
fclose( $userdatei );
echo " $username , dein Passwort wurde geändert ";
?>
nach dem auf ändern klicken kommt
Parse error: syntax error, unexpected '}' in /users/gian1307/www/hftl/gb2.php on line 31
25.03.2011, 13:34
#
34
Registriert seit: 05.11.2008
Beiträge: 1.826
Jetzt such den Fehler doch mal selbst.
Syntax Error in Zeile 31.
25.03.2011, 15:25
#
35 Hausmeister im Virtuellen
Registriert seit: 28.12.2006
Beiträge: 2.953
Coole Antwort, besonders weil man da
nicht mal Zeilennummern dafür braucht (oder den gesamten Code lesen muß), wenn man solche Konstrukte sieht:
PHP-Code:
if ( $password1 == $password2 );
else
}
25.03.2011, 15:37
#
36
Registriert seit: 05.11.2008
Beiträge: 1.826
Ab der IF Anweisung stimmt so ziemlich nichts mehr. Aber man muss ja selbst auch etwas tun
26.03.2011, 10:15
#
37 Threadstarter
Registriert seit: 06.10.2010
Beiträge: 97
ok danke ich gucke was sich noch machen lässt
29.03.2011, 15:20
#
38 Threadstarter
Registriert seit: 06.10.2010
Beiträge: 97
ich hab das jetzt n bisschen überarbeitet, aber ich weiß einfach nicht was für einen befehl ich zum passwortändern benutzen muss
PHP-Code:
<?php session_start (); $username = $_POST [ "username" ]; $passwort = $_POST [ "password" ]; $passwort1 = $_POST [ "password1" ]; $passwort2 = $_POST [ "password2" ]; $passwort = md5 ( $passwort ); $log = 1 ; $userdatei = fopen ( "user.txt" , "r" ); while (! feof ( $userdatei )) { $zeile = fgets ( $userdatei , 500 ); $userdata = explode ( "|" , $zeile ); if ( $userdata [ 0 ]== $username and $passwort == trim ( $userdata [ 1 ])) { $_SESSION [ 'username' ] = $username ; $log = 2 ; } } fclose ( $userdatei ); if ( $log == 0 ) { echo "Zugriff verweigert <a href=\"geheim.php\">Zurück</a>" ; } elseif( ( $password1 == $password2 ) && ( $log == 2 ) ) { ///hier soll der php code zum ändern des passwortes hin echo " $username , dein Passwort wurde geändert" ; } else { echo "Passwörter waren nicht identisch <a href=\"geheim.php\">Zurück</a>" ; } ?>
ich hoffe das das jetzt richtig ist, wenn nicht weiß mich auf fehler hin
28.05.2012, 21:17
# --
News Flash
Das könnte Dich auch noch interessieren:
Nicht fündig geworden? Dann ohne Anmeldung in unserem Gast-Forum nachfragen.
Alle Zeitangaben in WEZ +2. Es ist jetzt 21:17 Uhr.