neils: Verweise

Folgendes Problem:

Ich habe hier eine IF-Abfrage und ich will, falls die Bedingung wahr ist, eine andere Seite aufrufen lassen! Ich weiß aber nicht was ich jetzt schreiben muss. Ich weiß zwar wo es hinkommt, aber nicht was ich schreiben muss.
Kann mir jemand helfen?

Neils

if($blabla == "admin") {
    if (!file_exists("user/$user.php")) {

//hier muss jetzt irgendwas hin, aber was????

exit;
    }

  1. Folgendes Problem:

    header("Location:deinziel");
    solle dir helfen

    --
    DIE ROMY AUS L. AN DER P. SAGT DANKE UND AUF WIEDERSEHEN
    ->Alles ist gut wenn es aus Schokolade ist
    1. Nun steht das da! Was wird falsch sein!

      Warning: Cannot add header information - headers already sent by (output started at /homepages/28/d27099664/htdocs/login/login.php:8) in /homepages/28/d27099664/htdocs/login/login.php on line 80

      Hier ist der Quelltext:

      if($blabla == "admin") {
          if (!file_exists("user/$user.php")) {
          header("Location:/login/fehler_name.php");
          exit;
          }

      Vielen Dank

      Neils

      1. Hallo Neils,

        einmal senden reicht.

        Warning: Cannot add header information - headers already sent by (output started at /homepages/28/d27099664/htdocs/login/login.php:8) in /homepages/28/d27099664/htdocs/login/login.php on line 80

        in der Datei login.php wird in der Zeile 8 irgendein html (oder auch einfach ein Leerzeichen) ausgegeben.

        Grüße aus Nürnberg
        Tobias

        1. Kann man das nicht irgendwie anders machen, weil ich es einfach nicht hin kriege1

          Ich habe irgendwas davon gelesen, dass man soweit unten keine Header-INformationen mehr einfügen kann!

          Bitte helft mir!

          Neils

          1. hi Neils,

            Kann man das nicht irgendwie anders machen, weil ich es einfach nicht hin kriege1

            gebe einfach einen Link aus :) - oder, wenn du noch im <head>-Bereich bist, kannst du [1] verwenden

            Ich habe irgendwas davon gelesen, dass man soweit unten keine Header-INformationen mehr einfügen kann!

            im Prinzip schon, es darf halt vorher wie gesagt kein html ausgegeben werden. Wie sieht denn dein Script aus?

            Grüße aus Nürnberg
            Tobias

            [1] http://selfhtml.teamone.de/html/kopfdaten/meta.htm#weiterleitung

            1. Es hat endlich geklappt!

              Danke für deine Mühen!

              Neils

    2. Nun steht das da! Was wird falsch sein!

      Warning: Cannot add header information - headers already sent by (output started at /homepages/28/d27099664/htdocs/login/login.php:8) in /homepages/28/d27099664/htdocs/login/login.php on line 80

      Hier ist der Quelltext:

      if($blabla == "admin") {
          if (!file_exists("user/$user.php")) {
          header("Location:/login/fehler_name.php");
          exit;
          }

      Vielen Dank

      Neils

  2. Hallo Neils,

    Ich habe hier eine IF-Abfrage und ich will, falls die Bedingung wahr ist, eine andere Seite aufrufen lassen! Ich weiß aber nicht was ich jetzt schreiben muss. Ich weiß zwar wo es hinkommt, aber nicht was ich schreiben muss.

    soll die Seite beim laden weitergeleitet werden? Wenn ja, brauchst du vermutlich
    header("Location: user/".$user.".php"); (http://www.php.net/manual/de/function.header.php). Du musst aber darauf achten, das vor dem header kein code ausgegeben wird (also kein echo oder print aber auch keinen "nichtphp-Bereich".

    Grüße aus Nürnberg
    Tobias

    1. Kann man das nicht irgendwie anders machen, weil ich es einfach nicht hin kriege1

      Ich habe irgendwas davon gelesen, dass man soweit unten keine Header-INformationen mehr einfügen kann!

      Bitte helft mir!

      Neils

    2. Na da wurde wohl sich nur auf header() konzentriert..

      wenn als ausgabe eine *.php Datei vorhanden ist geht auch

      include("pfad/datei.php");

      wenn es nur ne HTML seite ist, ohne ausfürbaren Code, dann
      reicht auch folgendes:

      readfile("pfad/datei.html");

      gruß Micha

      1. Hallo

        include("pfad/datei.php");

        mhh... kann es sein, dass du die Aufgabenstellung nicht ganz verstanden hast? Neils wollte weiterleiten, nicht Inhalte einbinden. Wobei sich das ganze sowieso inzwischen erledigt hat (->[pref:t=30102&m=162649]) :)

        Grüße aus Nürnberg
        Tobias

        1. @Tobias

          Doch ich habe es verstanden, aber
          nach der Vorgabe sah es aus als ob
          eine Kundgebung eines Fehlers (falscher user o.ä.)
          ausgegeben werden sollte, so eine Ausgabe hätte man
          nun ja halt dann auch anders realisieren können und
          wenn in der Seite mit der Fehlerausgabe zusätzlich
          Code verarbeitet werden soll, kommt include() wie
          gerufen, wenn nur Text oder Html reicht auch readfile().

          ABER, wenn es unbedingt NÖTIG ist umzuleiten, kann mann das
          natürlich per META oder JavaScript regeln welcher ausgegeben
          wird in der if-Anweisung.

          Du hast natürlich recht, das es jetzt keine richtige Antwort
          auf diese Frage war, aber ich habe mal versucht weiter zu denken
          was er Beabsichtigt um vieleicht eine andere lösung als eine
          Umleitung zu finden, denn gerade PHP-Neulinge kennen oft die
          einfachsten sachen dieser Sprache nicht (wie readfile();) die
          benutzen oft die umständlichsten Wege. Aber das weißt du sicher
          selbst, wie ich sehe bist du mehr als konfirm in diesen Bereichen,
          also mach weiter so, viele werden Dankbar sein (ich bestimmt auch) ;-)

          grüße Micha

          Hallo

          include("pfad/datei.php");
          mhh... kann es sein, dass du die Aufgabenstellung nicht ganz verstanden hast? Neils wollte weiterleiten, nicht Inhalte einbinden. Wobei sich das ganze sowieso inzwischen erledigt hat (->[pref:t=30102&m=162649]) :)

          Grüße aus Nürnberg
          Tobias