NitBo: Formular auslesen und auf einer anderen Seite wiedergeben!?

Hi Leute hab ein Formular erstellt, was man über E-Mail und per Post oder Fax versenden soll/kann.
Über E-Mail hab ich es hinbekommen mit einem PHP Script, aber ich bekomme es nicht hin das, ich die "Input-Tages" in ene andere HTML/PHP daei bekomme (mit den entsprechenden eingabe, versteht sich)!
Hab ihr ne Idee wie ich das machen kann?
Gruß NitBo

  1. Hallo,

    Über E-Mail hab ich es hinbekommen mit einem PHP Script, aber ich bekomme es nicht hin das, ich die "Input-Tages" in ene andere HTML/PHP daei bekomme (mit den entsprechenden eingabe, versteht sich)!

    Dein eMail-Script macht bereits genau das, was du auch für die anderen Aktionen möchtest, nämlich zuerst einmal die Werte des Formulars auslesen:

    -> http://www.php.net/manual/de/language.variables.external.php

    Hast Du beispielsweise in deinem Formular ein Feld "username", steht dein Wert in der Variablen $username.

    Gruß,
    _Dirk

    --
    http://www.placebo-film.de/teaser/ - Teaser released!
    1. Hallo,

      [...]

      -> http://www.php.net/manual/de/language.variables.external.php

      Hast Du beispielsweise in deinem Formular ein Feld "username", steht dein Wert in der Variablen $username.

      Darauf sollte man sich aber ab PHP 4.weisnichtmehrgenau nicht mehr verlassen. Zukunftssicher und sicher im Sinne von keine unerwünschte Inititalisierung von internen Variablen durch Übergabe per GET oder POST, ist die Vewendung der superglobalen assoziativen Arrays $_GET, $_POST, $_COOKIES bzw. $_REQUEST (hier steht alles drin, gibt es aber auch erst seit PHP 4.weisnichtauswendigkannmanaberbeiphpnetnachschlagen ;). In den jüngsten PHP Versionen funktioniert die Parameterübergabe wie oben nämlich nur noch mit 'register_globals = On' in der php.ini. Also lieber gleich so programmieren, als würden Parameter nicht automatisch global registriert. Die Verwendung von $HTTP_POST_VARS und Co. kann man sich dann auch schenken.

      Mehr und bessere Informationen hält in diesem Fall die englische Version der oben verlinkten Seite bereit: http://www.php.net/manual/en/language.variables.external.php. Dort steht dann auch, daß die Superglobalen mit PHP 4.1.0 eingeführt wurden, und seit PHP 4.2.0 register_globals per default Off ist.

      Gruß Alex

      1. Hi,

        also das Script hab ich von einem Freund, der von php nichts versteht, und ich versuche mich da langasam rein zu arbeiten! :\ Hier erstmal das Script:
        <?
            $i=0;
            if ( !is_array($HTTP_POST_VARS) ) {
              return;
            }
            reset($HTTP_POST_VARS);
            while(list($key, $val) = each($HTTP_POST_VARS)) {
                $GLOBALS[$key] = $val;
                $val = stripslashes($val);
                if ( $key == "leerzeile" ) {
                  $message = $message . "\n";
                }
                else {
                  $message = $message . "$key: $val\n";
                  #print "<b>$key</b> = $val<br>";
                }
            }
           # Empfänger festlegen  ###########################
            $mailto  = "???@!!!.de";
            $cc      = "";
            $bcc     = "";
           ##################################################

        $subject =  $Betreff;

        $from    =  $eMail;

        ##### HIER CODE BEGINN FÜR ATTACHMENT #####################################################################################

        /* Wenn eine Datei als Anhang ausgewaehlt wurde... */
          if( $datei && $datei != "none" ) {

        /* Lese die temporaere Datei, die der Benutzer hochgeladen hat aus */
           $datei_content = fread(fopen($datei,"r"),filesize($datei));

        /* Codiere Datei ins BASE64-Format */
           $datei_content = chunk_split(base64_encode($datei_content));

        /* Generiere einen Boundary */
           $boundary = strtoupper(md5(uniqid(time())));

        /* Beginne den Mail-Header mit MIME-Mail-Header */
           $mail_header  = "MIME-Version: 1.0";
           $mail_header .= "\nContent-Type: multipart/mixed; boundary=$boundary";
           $mail_header .= "\n\nThis is a multi-part message in MIME format  --  Dies ist eine mehrteilige Nachricht im MIME-Format";

        /* Hier faengt der normale Mail-Text an */
           $mail_header .= "\n--$boundary";
           $mail_header .= "\nContent-Type: text/plain";
           $mail_header .= "\nContent-Transfer-Encoding: 8bit";
           $mail_header .= "\n\n$message";

        /* Hier faengt der Datei-Anhang an */
           $mail_header .= "\n--$boundary";
           $mail_header .= "\nContent-Type: application/octetstream; name="$datei_name"";
           /* Codierung immer BASE64 */
           $mail_header .= "\nContent-Transfer-Encoding: base64";
           $mail_header .= "\nContent-Disposition: attachment; filename="$datei_name"";
           $mail_header .= "\n\n$datei_content";

        /* Gibt das Ende der eMail aus */
           $mail_header .= "\n--$boundary--";
          }
          /* Sende eMail und gebe Fehler bzw. Bestaetigung aus */
          # if(mail($an,$subject,"",$mail_header)) echo "Die eMail mit dem Betreff ".htmlentities($subject)." wurde an ".htmlentities($an)." gesendet.";
          # else echo "Es ist ein Fehler beim senden der eMail aufgetreten.";

        ##### HIER CODE ENDE FÜR ATTACHMENT #######################################################################################

        if( $datei && $datei != "none" ) {
              mail( "$mailto",  "$subject",  "",  "From:$from\nCC:$cc\nBCC:$bcc\n$mail_header\n" );
            }
            else {
              mail( "$mailto",  "$subject",  "$message",  "From:$from\nCC:$cc\nBCC:$bcc\n" );
            }

        # Autoresponder  #############################################################
               $filename = "data/answer.txt"; # Antworttext ###################################
               $fd = fopen( $filename, "r" );
               $contents = fread( $fd, filesize( $filename ) );
               fclose( $fd );
               $host = getHostByAddr ( $REMOTE_HOST );
               mail( "$eMail", "Danke für Ihre eMail", "$contents\n\n",
                     "From:???@!!!.de\n" );
            ###############################################################################
        ?>

        Gruß NitBo