Frage zu Logins

Hallo,
sorry ich bin neu hier und wenn das schon mal gefragt worden ist oder ich etwas übersehen habe, dann einfach an das Thema verweisen :wink:

Also es geht um folgendes:
Ich wollte ein zweites Login in einem anderen Ordner hochladen.
Leider wird man nicht weitergeleitet sondern an das echo verwiesen, obwohl die Daten richtig eingegeben wurden.

Da das Login aber 100% richtig ist und auch woanders funktioniert hat wüsste ich gerne, ob man hier nur 1 Login hochladen kann. Sind beides Logins ohne Datenbank.

lg Isa :wink2:

benutz du zufälligregister_golbals? das ist hier off
sprich du müsstest sowas schreiben $_GET[’$user’]; oder $_POST[’$user’];

das ist mein PHP Code :

<?php $username = $_POST['$username']; $passwort = $_POST['$password']; if( ($username=='User' AND $passwort=='Passwort')) { header('Location: intern.htm'); } else { echo 'Login gescheitert :('; } ?>

Und das ist das Loginformular :

Name:
Passwort:

[quote=“Isa”]$username = $_POST['$username']; $passwort = $_POST['$password'];[/quote]
Was comjag gesagt hat, ist auch nicht ganz richtig. Richtig wäre:

$username = $_POST['username']; $passwort = $_POST['password'];

oh sorry hab ich auch gerade gesehn :red: :unamused:

funktioniert leider trotzdem nicht…
es erscheint immer das echo…

Ich weiss nicht, ob es daran liegt, aber ein versuch ist es Wert.

Du benutzt hier zwei Klammern, versuche es mal mit einer:

[quote]Notice: Undefined index: password in /users/scram/www/testy/login.php on line 3
Login gescheitert :([/quote]
Ich würde dir empfehlen, mit Notices zu arbeiten. Das ist ungemein hilfreich bei solchen Tippfehlern. :smiley:

Mann oh Mann, 3 mal gelesen, und ist mir nicht aufgefallen !haue

funktioniert trotzdem nicht…
aber es kommt ne fehlermeldung :

Warning: Cannot modify header information - headers already sent by (output started at /users/gsvivaldi/www/filemanager/login.php:5) in /users/gsvivaldi/www/filemanager/login.php on line 36

header(‘Location: intern.htm’);
} LINE 36
else

Dann poste bitte deinen gesamnten Quelltext, oder, noch besser, lade die datei mal als .phps hoch.

ich setze mal den code ein ok. Weiß nicht wie ich die sonst hochladen muss… bin neuling auf dem Gebiet…

<html>
<style type="text/css"> 
body { 
scrollbar-arrow-color: #000000; 
scrollbar-base-color: #000000; 
scrollbar-track-color: #ffffff; 
scrollbar-face-color: #ffffff; 
scrollbar-highlight-color: #000000; 
scrollbar-3dlight-color: #ffffff; 
scrollbar-darkshadow-color: #ffffff; 
scrollbar-shadow-color: #ffffff; 
} 
A:link { color: #000000; text-decoration: none; underline }
A:visited { color: #000000; text-decoration: none; underline }
A:hover { color: #000000; text-decoration: none; underline; position: relative; top: 1; left: 1;}
A:active { color: #000000; text-decoration: underline}
} 
input {color: #000000; background-color: transparent;
font-family: verdana; font-size: 8pt; text-align:left;
text-decoration: none; border-color: #000000; border-style: solid;
border-width: 1px;}
</style> 
<body>

<?php
$username = $_POST['username'];
$passwort = $_POST['passwort'];
 
if( ($username=='User' AND $passwort=='Passwort'))
   {
header('Location: intern.htm');
   }
else
{
echo 'Login gescheitert :(';
}
?>
</body>
</html>

Der Formularcode :

<html>
<style type="text/css"> 
body { 
scrollbar-arrow-color: #E8CA72; 
scrollbar-base-color: #000000; 
scrollbar-track-color: #000000; 
scrollbar-face-color: #000000; 
scrollbar-highlight-color: #E8CA72; 
scrollbar-3dlight-color: #000000; 
scrollbar-darkshadow-color: #000000; 
scrollbar-shadow-color: #000000; 
} 
A:link { color: #E8CA72; text-decoration: none; underline }
A:visited { color: #E8CA72; text-decoration: none; underline }
A:hover { color: #E8CA72; text-decoration:  none;  underline; border-bottom:1 dashed; border-color:#E8CA72;}
A:active { color: #E8CA72; text-decoration: none; underline}
}
#textfeld {
background: transparent;
width: 200px;
height: 200px;
}
textarea {color: #E4C770; background-color: transparent;
font-family: verdana; font-size: 8pt; text-align:center;
text-decoration: none; border-color: #E4C770; border-style: dashed;
border-width: 1px;
}
input {color: #E4C770; background-color: transparent;
font-family: verdana; font-size: 8pt; text-align:center;
text-decoration: none; border-color: #E4C770; border-style: dashed;
border-width: 1px;
}
select {color: #000000; background-color: #E0C36E;
font-family: verdana; font-size: 8pt; text-align:center;
text-decoration: none; border-color: #E4C770; border-style: dashed;
border-width: 1px;
}
</style> 

<body topmargin="0" leftmargin="0">

<div align="left">
  <table border="0" cellspacing="4" width="100%" height="1">
    <tr>
      <td height="1" width="979"><img src="ueberschrift.gif"></td>
    </tr>
    <tr>
      <td align="left" width="841" height="1">

<p align="center">
<font face="Verdana" size="2"><br>
</font>
<form method="POST" action="login.php">
<div align="left">
<font face="Verdana">
<font color="#E8CA72">
<font size="2">Name:</font>
<font size="2" face="Tahoma"><input type="text" name="username" size="20"></font><br><br>
<font size="2" face="Verdana">Passwort: </font>

<font size="2" face="Tahoma"> <input type="password" name="passwort" size="20"> </font>

<br>
<br>

<input type="submit" value="Einloggen" name="B1"></font>
</form>


      
</font>


      
        </td>
    </tr>
    <tr>
      <td align="left" width="841" height="1">
        
        </td>
    </tr>
    <tr>
      <td align="left" width="841" height="1">
        
        </td>
    </tr>
  </table>
</div>

</body>

</html>

Du kannst keine Header senden, nachdem etwas ausgegeben wurde.

jap das sagt mir ja die fehlermeldung auch…
nur ich weiß, dass der funktionieren müsste… hab dem beim alten anbieter genutzt und da hat er funktioniert.

Problem gelöst.
PHP Code musste vor den HTML Teil :slight_smile:

Der hatte output_buffering wohl an. (Das heißt, dass alle Ausgaben gespeichert werden und erst als Ganzes gesendet werden, wenn das Script fertig ist.)

Du müsstest dein Script also umschreiben, so dass, wenn das Passwort stimmt, nur umgeleitet wird und andernfalls der ganze HTML-Kram gesendet wird.