Weiterleiten ohne header

Wambo

Mitglied
Hallo
Ich wollte mal Fragen ob es in PHP eine Weiterleitung gibt.
header() habe ich schon ausprobiert nur ich kann die Vorraussetzungen (keine Ausgaben davor)
in meinem Script nich realisieren warum auch immer...
gibt es eine andere Möglichkeit (ausser Java Script...das hab ich schon ausprobiert. wenn man das im Browser ausstellt kann man das umgehen und ist ohne überprüfung im Innenbereich)?

Also ich möchte die Weiterleitung nutzen um bei meinem loginsystem nach der überprüfung der daten (mit if) wieder zum Formular oder in den Innenbereich zu kommen
danke x-mal
 
Zuletzt bearbeitet:
birnkammer hat gesagt.:
Mit HTML kannst du mit
HTML:
<meta http-equiv="refresh" content="5; URL=...">
Hab ich gerade mal getestet. Man wird jetzt weitergeleitet egal ob das passwort und der username richtig oder falsch ist. Im Innen bereich kann man auch seine daten nachgucken aber das klappt jetzt mit meta auch nicht mehr
 
Zuletzt bearbeitet:
hi, falls du zugriff auf deine php.ini hasst, kannst du das auch so einstellen das das mit dem header funktioniert. die option dafür heißt "output_buffering".

Auszug aus der php.ini:
Output buffering allows you to send header lines (including cookies) even
after you send body content, at the price of slowing PHP's output layer a
bit.
wobei so wie du das vorhast ist das sowieso nicht sonderlich sicher, da wenn man einmal eingeloggt war, kann man ja jedes mal direkt über den link wieder in den gesicherten bereich. ich würde hier mit sessions oder cookies arbeiten und dann eine art gerüst bauen. es wird überprüft ob die login-daten korrekt sind, wenn ja dann soll er die datei (z.B:innen.php) includieren, ansonsten die datei in der das login-formular ist (z.B.: login.php).

hoffe ich konnte weiterhelfen

mfg
Daniel
 
Zuletzt bearbeitet:
Dafür braucht man aber gar nicht Zugriff auf die php.ini, nur die Funktionen zur Ausgabesteuerung:
  • ob_start()
  • ob_end_flush()
z.B.:
PHP:
<?php
     ob_start();
     //HTML-Code oder andere Ausgabe
     header("..."); //Weiterleitung oder andere Header
     ob_end_flush(); //Daten an den Browser senden
?>
 
Djunix hat gesagt.:
eine art gerüst bauen. es wird überprüft ob die login-daten korrekt sind, wenn ja dann soll er die datei (z.B:innen.php) includieren, ansonsten die datei in der das login-formular ist (z.B.: login.php).
Was meinst du mit einer Art Gerüst. Kannst du eventuell ein Beispiel schicken
 
  1. 1. Logindaten abgleichen
  2. 2. Wenn erfolgreich Daten in Session speichern z.B. Name und Id
  3. 3. Bei internen Seiten Abfragen if (isset($_SESSION['id'])) //code else echo 'hau ab';
 
Danke schön
Das hab ich schon aus probiert und ausgedruckt das hab ich aber nicht verstanden. Das Tutorial von dieser Site war immer noch das beste bis jetzt
 
Ich weiß, dass dieses Thema nicht aktuell ist, aber du könntest es so machen.

if "$name"=="$selectedname" {
if "$passwort"=="$selectedpasswort" {
echo "<meta http-equiv="refresh" content="5; URL=...">"
// oder auch mit JS
echo "<script>document.href = url;</script>
}
}
 
Zurück