Harry: Variablen vergleichen ?

Beitrag lesen

Holladiewaldfee,

Wenn ich mir beide Variablen anzeigen lasse haben sie den gleichen Inhalt!!

Haben sie nicht ;-)

if(isset($username) and (isset($password)))
{
$zeile = @file("Mitglieder/$username.txt");

$username2   = $zeile[0];
$password2   = $zeile[1];

Man nehme das PHP-Manual und schlage file() nach ...
Da steht dann irgendwo, daß die Zeilenenden (\n) auch noch in den Variablen mit drin sind ...

Also:
$username2 = trim($zeile[0]);
$password2 = trim($zeile[1]);

echo $username;
echo $username2;

Schau Dir lieber die Ausgabe im Quelltext an und nicht im Browser.

if($username == $username2)
{
...hier geht das Script nicht rein...

Klar, denn wie gesagt: $username = $username2."\n";

Gleich noch eine Frage:
Auch wenn die Eingabe leer ist sind hier die Variablen gleich. Das kommt dadurch das die Textdatei nicht gefunden wird.
Wie kann man das noch verhindern?

&& $username!=""

Ist übrigens ne gewagte Sache! Du solltest kontrollieren, daß keiner so Sachen wie ../../../etc/passwd oder so als Usernamen eingibt (besonders, wenn nachher noch irgendwelche mit der geöffneten Datei in Zusammenhang stehende Ausgaben erfolgen)!

Ciao,

Harry

--
  (There are only 10 types of people in this world: Those who understand binary and those who don't)