Matthias: ganz neue Seite erzeugen

hi,

wen ich mit php z.B. was mit "print" ausgebe, bleibt die ausgabe ja im vorhandenen Quelltext..
Wie kann ich nun in der gleichen Seite sozusagen eine neue datei erzeugen (also eine neue html.struktur(<html><head>...)

Danke im Voraus

  1. Hi Johannes,

    kannst Du Deine Frage bitte etwas klarer stellen, am besten mit einem Codeschnipsel?

    Dieter

    1. Ich heiße zwar Matthias, aber egal :-)

      Also, ein Beispiel:
      <html>
      <body>

      <?

      print "<p>Hallo</p>";

      ?>

      </body>
      </html>

      Ich möchte jetzt aber eine ganz neue struktur erzeugen..
      Beispiel:

      <html>
      <body>
      <?

      print" <html><head><title>Neue Seite</title>(...)";

      Aber dann ist das ja falsches html..
      Ich möchte den inhalt der seite also GANZ neu schreiben, verstehst du?

      Danke Matthias

      1. Hallo Matthias,

        Ich heiße zwar Matthias, aber egal :-)

        da sage ich nur {$name} ->http://cforum.teamone.de/doku/config/users/ckruse.conf.htm#a1 :-)

        Also, ein Beispiel:
        <html>
        <body>

        warum lässt du diese 2 Zeilen nicht einfach weg?
        du kannst doch auch gleich mit:
        <?php
        echo "<!DOCTYPE ...>\n<html>\n..."; //natürlich kannst du statt echo auch print nehmen aber ich verwende halt echo
        anfangen - oder habe ich da was falsch verstanden?

        Grüße aus Nürnberg
        Tobias

        1. Hi,

          es ist so: es geht um mein Gästebuch, was dann folgende Ausgabe (asl Beispiel) macht:

          Name [textfeld]

          email[textfeld]

          Beitrag [textarea]

          <!-- Jetzt kommts //-->

          Geben sie ihren Namen ein
          Geben sie ihre email.Adresse ein

          Dies erscheint dann beides auf der Formular Seite,
          ich hätte aber gern, dass die fehlermeldungen auf einer einzelnen seite erscheinen, auf der man einen hitory.back()-Link auf das forumlar machen kan...

          1. ich hätte aber gern, dass die fehlermeldungen auf einer einzelnen seite erscheinen, auf der man einen hitory.back()-Link auf das forumlar machen kan...

            Dann erzeug doch gleich das Formular mitsamst den Eingaben neu
            Stichwort -> "Affenformular".
            Gib die Inhalte nur aus, wenn alles passt.
            Rezept steht schon weiter oben.

    2. <?
      ...
      if (seite==1) {
      ?>
      <html>
       <head>
       </head>
       <body>
        <h1>So? oder...</h1>
       </body>
      </html>
      <? } else { ?>
       <head>
       </head>
       <body>
        <h1>... so.</h1>
       </body>
      </html>

      1. <?
        ...
        if (seite==1) {
        ?>
        <html>
         <head>
         </head>
         <body>
          <h1>So? oder...</h1>
         </body>
        </html>
        <? } else { ?>
         <head>
         </head>
         <body>
          <h1>... so.</h1>
         </body>
        </html>
        <? } ?>

        Preisfrage: Was hat gefehlt?

        1. hi

          der einleitende html-tag beim 2ten source

          gruss
          Carl

          1. der einleitende html-tag beim 2ten source

            Was bin ich heute wieder zerstreut...

            :)

            fastix

          2. Hi Matthias,

            die Loesung hast Du ja schon, bleibt nur noch ein Sorry fuer den Johannes

            Dieter

        2. <?
          ...
          if (seite==1) {
          ?>
          <html>
           <head>
           </head>
           <body>
            <h1>So? oder...</h1>
           </body>
          </html>
          <? } else { ?>
           <head>
           </head>
           <body>
            <h1>... so.</h1>
           </body>
          </html>
          <? } ?>

          Preisfrage: Was hat gefehlt?

          das iss alles falsch!
          schau das ding ist das - der serfert liest zwar die php codes schnipsel aber die sachen die nicht im pgp tag stehen werden ja trotzdem ausgegeben d.h. bei dir seht eigebtlich das

          <?
           ...
           if (seite==1) {
           } else {
           }
          ?>
          <html>
           <head>
            </head>
            <body>
             <h1>So? oder...</h1>
            </body>
           </html>
           <head>
            </head>
            <body>
            <h1>... so.</h1>
            </body>
           </html>

          wenn dann müsstest du es so ausgeben ->

          <?
          ...
          if ($seite==1) {
          echo "<html>
          <head>
          <title>
          dod
          </title>
          </head>
          <body>
          <h1>So? oder...</h1>
          </body>
          </html>";
          } else {
          echo "<head>
          </head>
          <body>
          <h1>... so.</h1>
          </body>
          </html>";
           } ?>
          ich hoffe ich konnte dir helfen! 31ke www.31ke.de

          1. <?
            if ($seite==1) {
            ?>
             <html>
              <head>
              </head>
              <body>
              <h1>So? oder... (seite=1)</h1>
              <p><a href="php3.php?seite=2">php3.php?seite=2</a></p>
             </body>
            </html>
            <? } else { ?>
            <html>
             <head>
             </head>
             <body>
             <h1>... so. (seite!=1)</h1>
             <p><a href="php3.php?seite=1">php3.php?seite=1</a></p>
             </body>
             </html>
            <? } ?>

            Hier stehts: http://localhost/tests/php3.php?seite=1

            ich hoffe ich konnte dir helfen! 31ke www.31ke.de

            Ich helfe auch gern :)
            (Du brauchst dazu einen Server.)

          2. Hallo 31ke,

            <?
            [...]
            <? } ?>
            Preisfrage: Was hat gefehlt?
            das iss alles falsch!

            nein, das funktioniert so. (ok, es muss nicht 'seite' sondern '$seite' heißen aber dann ist das if halt immer false ('seite' ist nun einmal nicht gleich '1')

            [...] pgp tag [...]

            Pretty Good Privacy? *scnr* (ich weiß, das 'g' liegt direkt neben dem 'h'...)

            wenn dann müsstest du es so ausgeben ->
            <?
            [...]
             } ?>

            Parse error: parse error in [...]/test.php on line 20 //kein weiterer Kommentar...

            ich hoffe ich konnte dir helfen! 31ke www.31ke.de

            mhh...

            Grüße aus Nürnberg
            Tobias