Variable in Header mitsenden UND sichern
vbmichi
- php
Hi,
ich sende zurzeit über den Header mit folgendem Code einen Username mit:
header('Location: http://'.$hostname.($path == '/' ? '' : $path).'/MainSite.php?userid='.$username);
Das klappt auch super.
Wie kann ich aber verhindern das ein Benutzer die MainSite.php per URL mit einer anderen userid aufruft?
Ich denke Lösungen gibts hier im Forum massig, leider weiß ich nicht den korrekten Suchbegriff. Wie heißt das wenn man einen Befehl vor manuellen Eingaben schützen möchte?
Es geht um diesen Artikel: [url]http://aktuell.de.selfhtml.org/artikel/php/loginsystem/index.htm#[/url]
Ich möchte am Ende irgendwie im index.php an den Loginname kommen.
Kann mir jemand helfen?
Viele Grüße,
Michi
Hi,
Wie kann ich aber verhindern das ein Benutzer die MainSite.php per URL mit einer anderen userid aufruft?
gar nicht. Jeder Mensch und jede Maschine kann zu jedem Zeitpunkt jede URL mit beliebigen Rahmendaten in jedem Kontext beliebig oft aufrufen. Wenn Du nicht willst, dass die User-ID gefälscht wird, darf sie nicht Teil der URL oder anderer Rahmendaten (z.B. Cookies) sein.
Ich denke Lösungen gibts hier im Forum massig, leider weiß ich nicht den korrekten Suchbegriff.
Session.
Wie heißt das wenn man einen Befehl vor manuellen Eingaben schützen möchte?
Welcher Befehl?
Cheatah
gar nicht. Jeder Mensch und jede Maschine kann zu jedem Zeitpunkt jede URL mit beliebigen Rahmendaten in jedem Kontext beliebig oft aufrufen. Wenn Du nicht willst, dass die User-ID gefälscht wird, darf sie nicht Teil der URL oder anderer Rahmendaten (z.B. Cookies) sein.
Hm, okay! Und wie könnte ich dann sonst den Inhalt der Variable $username bis zu index.php durchreichen? Muss ja irgendwo mitgesendet werden.
Session.
Okay, damit werd ich nochmal die Suchmaschinen durchglühen!
Welcher Befehl?
Gibts dann wohl gar nicht, somit egal ;-)
Viele Grüße,
Michi
Hi,
Hm, okay! Und wie könnte ich dann sonst den Inhalt der Variable $username bis zu index.php durchreichen? Muss ja irgendwo mitgesendet werden.
Variablen können per HTTP nicht übertragen werden. Du hast versucht, Parameter zu übertragen, was Dir nicht hilft. Es ist auch absolut unnötig, einen Wert, den nur der Server benötigt, dem Client zur Verfügung zu stellen.
Cheatah
Variablen können per HTTP nicht übertragen werden. Du hast versucht, Parameter zu übertragen, was Dir nicht hilft. Es ist auch absolut unnötig, einen Wert, den nur der Server benötigt, dem Client zur Verfügung zu stellen.
Wie kann ich dann jemals einen Benutzer nach seinem Login eindeutig indentifizieren wenn nicht nach seinem Loginname?
Andere Möglichkeiten?
Wie kann ich dann jemals einen Benutzer nach seinem Login eindeutig indentifizieren wenn nicht nach seinem Loginname?
das musst du doch nicht (bzw. geschieht über die Session-Variablen) - wenn du den user z.B. mit seinem Namen begrüßen willst, sowas wie "Hallo Tom, du bist jetzt eingeloggt!", dann schreibst du in deine index.php an dieser Stelle
echo "Hallo ".$username.", du bist jetzt eingeloggt!";
usw. Eine weitere Übergabe ist nicht erforderlich und auch nicht sinnvoll.
bye trunx
das musst du doch nicht (bzw. geschieht über die Session-Variablen) - wenn du den user z.B. mit seinem Namen begrüßen willst, sowas wie "Hallo Tom, du bist jetzt eingeloggt!", dann schreibst du in deine index.php an dieser Stelle
echo "Hallo ".$username.", du bist jetzt eingeloggt!";
Hallo trunx,
Leider klappt das auch nicht so.
Wenn ich im Beispielcode von Benjamin Wilfing im index.php direkt
<?php include('auth.php');
echo "$username"; ?>
schreibe, gibts da gar nichts aus.
Woran liegt das?
Hi,
Woran liegt das?
hast Du denn Sessions komplett in Deine Logiken integriert?
Cheatah