Datei wird zu "spät" includet ..

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Datei wird zu "spät" includet ..

    Hallo erstmal!
    (ich hoffe, dass es das Thema noch nicht gab ... hab aber auch nix gefunden)

    Ich bin noch absolut ungebildet in Sachen PHP (finde ich zumindest) ... ich habe mir jetzt ein Script zurechtgelegt in einer PHP-Datei (nennen wir sie "index.php") in der eben weitere Dateien inkludiert werden.
    Mein Problem ist nun, dass in diesen Datein [bla.php] (die inkludiert werden) so echo-Variablen sind.
    Beispiel:
    PHP-Code:
    <?php
    $titel 
    'bla';
    ?>
    ... "index.php" sieht nun aber so (in etwa) aus:
    PHP-Code:
    <?php
    echo "$titel";
    ?>

    ...

    <?php
    $page 
    $_GET['mitte']; 
    $pages = array (
    ''     => 'a/bla.php',
    'bla' => 'a/bla.php',
    );
    ...
    Nun ... bla.php wird erst nach dem "echo" geladen ... deswegen bleibt das echodig leer und kein "bla" kommt an der Stelle. Wenn ich den Echobefehl hinter den Include tue, funktioniert es.

    Ich kann die zwei aber nicht vertauschen, weil bla.php auch Text enthält ... und das sähe ja komisch aus, wenn der Text vor dem Titel kommt.



    hat da irgendwer eine Idee was ich da tun könnte
    ich wäre demjenigen wirklich sehr dankbar!!

    Danke schon mal,
    Flügel

  • #2
    Output buffering? Templates?
    Für alle die Fehler suchen, gibts gratis tolle Debuggingmöglichkeiten:
    var_dump(), print_r(), debug_backtrace und echo.
    Außerdem gibt es für unsere Neueinsteiger ein hervorragendes PHP Tutorial zu PHP 4 und PHP 5 (OOP)
    Es heißt $array['index'] und nicht $array[index]! Und nein, das ist nicht egal!
    Dieses Thema lesen, um Ärger im Forum und verzögerte Hilfen zu vermeiden.

    Kommentar


    • #3
      ah ... tut mir leid über dieses output buffering wusste ich nichts!
      Werde mich da jetzt mal informiereen.
      Danke dir!

      Kommentar


      • #4
        hm ... so hab das jetzt versucht ... nur er meckert rum ... und ich weiß nicht warum?!

        Warning: Cannot modify header information - headers already sent by (output started at I:\****\xampp\htdocs\down_new\down\java_inc.php:1) in I:\****\xampp\htdocs\down_new\down\daten\home\home.php on line 4

        ?

        also ich hab

        PHP-Code:
        <?php
        ob_start
        ();
        echo 
        "$titel";
        setcookie ("cookiename""cookiedata");
        ob_end_flush();
        ?>
        ... ich verwende kein header-wasauchimmer-ding. kann es daran liegen, dass ich vorher aber doch noch andere Dateien include?

        //Edit: Fehlermeldung weg - funktioniert aber immer noch nicht.
        Zuletzt geändert von Flügel; 25.10.2005, 21:00.

        Kommentar


        • #5
          Original geschrieben von Flügel
          ... ich verwende kein header-wasauchimmer-ding.
          Ein Cookie wird wie an den Client übermittelt?
          Genau, im Response Header.
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            hm ... ich verstehe um ehrlich zu sein kein Wort ... aber ich habs jetzt auch hinbekommen, etwas umständlich, aber doch ... .

            >> hat mir geholfen

            Kommentar


            • #7
              Original geschrieben von Flügel
              >> hat mir geholfen
              Wenn du meinst ...

              Anstatt unnötigerweise das Output Buffering zu nutzen, würde ich dir eher zu einer vernünftigen Struktur raten ...
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                @wahsaga wenn du erklärst


                (Ohne sein Projekt umbauen zu müßen ist OB wohl die beste Möglichkeit. Über ne gute Struktur geht natürlich nix.)
                Für alle die Fehler suchen, gibts gratis tolle Debuggingmöglichkeiten:
                var_dump(), print_r(), debug_backtrace und echo.
                Außerdem gibt es für unsere Neueinsteiger ein hervorragendes PHP Tutorial zu PHP 4 und PHP 5 (OOP)
                Es heißt $array['index'] und nicht $array[index]! Und nein, das ist nicht egal!
                Dieses Thema lesen, um Ärger im Forum und verzögerte Hilfen zu vermeiden.

                Kommentar

                Lädt...
                X