Weiterleitung nach Absenden

Alt 25.03.2011, 09:54   # 21
Gian1307
Threadstarter
 
Registriert seit: 06.10.2010
Beiträge: 97
bei mir funktioniert hier garnichts
  Mit Zitat antworten
Alt 25.03.2011, 09:58   # 22
.:Philipp:.
 
Benutzerbild von .:Philipp:.
 
Registriert seit: 05.11.2008
Beiträge: 1.826
Zitat:
Zitat von Gian1307 Beitrag anzeigen
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
  Mit Zitat antworten
Alt 25.03.2011, 10:09   # 23
Gian1307
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
  Mit Zitat antworten
Alt 25.03.2011, 10:14   # 24
.:Philipp:.
 
Benutzerbild von .:Philipp:.
 
Registriert seit: 05.11.2008
Beiträge: 1.826
Poste doch mal bitte dein Code von der Datei.
  Mit Zitat antworten
Alt 25.03.2011, 10:18   # 25
Gian1307
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>";
   }
?>
  Mit Zitat antworten
Alt 25.03.2011, 10:23   # 26
.:Philipp:.
 
Benutzerbild von .:Philipp:.
 
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
  Mit Zitat antworten
Alt 25.03.2011, 10:28   # 27
Gian1307
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
  Mit Zitat antworten
Alt 25.03.2011, 10:34   # 28
.:Philipp:.
 
Benutzerbild von .:Philipp:.
 
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.
  Mit Zitat antworten
Alt 25.03.2011, 10:50   # 29
Gian1307
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
  Mit Zitat antworten
Alt 25.03.2011, 11:48   # 30
.:Philipp:.
 
Benutzerbild von .:Philipp:.
 
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
  Mit Zitat antworten
Alt 25.03.2011, 12:32   # 31
Gian1307
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
  Mit Zitat antworten
Alt 25.03.2011, 12:35   # 32
.:Philipp:.
 
Benutzerbild von .:Philipp:.
 
Registriert seit: 05.11.2008
Beiträge: 1.826
Starte mal den Browser neu - da muss ich nochmal nachschauen
  Mit Zitat antworten
Alt 25.03.2011, 12:51   # 33
Gian1307
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 "
$usernamedein 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
  Mit Zitat antworten
Alt 25.03.2011, 13:34   # 34
.:Philipp:.
 
Benutzerbild von .:Philipp:.
 
Registriert seit: 05.11.2008
Beiträge: 1.826
Jetzt such den Fehler doch mal selbst.
Syntax Error in Zeile 31.
  Mit Zitat antworten
Alt 25.03.2011, 15:25   # 35
grunzer
Hausmeister im Virtuellen
 
Benutzerbild von grunzer
 
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 

  Mit Zitat antworten
Alt 25.03.2011, 15:37   # 36
.:Philipp:.
 
Benutzerbild von .:Philipp:.
 
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
  Mit Zitat antworten
Alt 26.03.2011, 10:15   # 37
Gian1307
Threadstarter
 
Registriert seit: 06.10.2010
Beiträge: 97
ok danke ich gucke was sich noch machen lässt
  Mit Zitat antworten
Alt 29.03.2011, 15:20   # 38
Gian1307
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
  Mit Zitat antworten

Antwort
Themen-Optionen



Alle Zeitangaben in WEZ +2. Es ist jetzt 21:17 Uhr.