Datei anhängen

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

  • Datei anhängen

    Hallo Zusammen!

    Da ich kein Crack auf dem Gebiet PHP bin, komme ich leider ohne Hilfe nicht weiter! Trotz mehrfaches durchforschten von Google kam ich auf keine gemeinsamen Nenner.

    Mein Problem ist das ich ein Kontaktformular auf meiner Webseite, welches Fehlerfrei funktioniert, mit einigen Eingabefeldern habe, welches ich nun mit einem oder mehreren Anhängen, so wie hier das Feld "Datei anhängen", schmücken möchte. So das man Daten oder evt. Bilder mitschicken kann. Nur weiß ich nicht wirklich wie ich da vorgehen muss und wie so ein Script diesbezüglich aussieht. Soweit das es die Daten vom Rechner ausliest bin ich ja schon, nur ich weiß nicht wie sie hochgeladen werden und mitverschickt werden können.

    Es würde mich freuen wenn mir da Jemand von Euch weiterhelfen könnte und es mir evt. anhand eines einfachen und leicht verständichem Beispielscripts erläutern könnte.

    Vielen Dank,

    Jens!

  • #2
    Tipp: Suchwort upload benutzen

    Ansonsten schau dir das mal an: http://www.php.net/manual/de/features.file-upload.php
    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
      Hi Shurakai,

      vielen Dank für Deine schnelle Hilfe!
      So ich habe mir mal so einige Uploads-Threads durchgelesen. Habe es zwar Inhaltlich verstanden, nur weiß ich nicht es anzuwenden. Nehmen wir mal das Beispiel zu deinem Link. Das Formular das dort angegeben ist gleicht meinem bis auf ein paar Kleinigkeiten. So nun soll die URL auf eine PHP-Seite verweisen. Jetzt habe ich aber in meinem Kontakt-Formular gleichzeit das PHP-Script zum versenden der Informationen die im Formular eingeben werden. Dort habe ich statt der URL meine Email angegeben. Spielt das eine große Rolle in dem Fall hier?
      Und zum zweiten weiß ich echt nicht wie ich mit diesen Angaben

      $_FILES['userfile']['name']

      Der ursprüngliche Dateiname auf der Client Maschine.
      $_FILES['userfile']['type']

      Der Mime-Type der Datei, falls der Browser diese Information zur Verfügung gestellt hat. Ein Beispiel wäre "image/gif".
      $_FILES['userfile']['size']

      Die Größe der hochgeladenen Datei in Bytes.
      $_FILES['userfile']['tmp_name']

      Der temporäre Dateiname, unter dem die hochgeladene Datei auf dem Server gespeichert wurde.
      $_FILES['userfile']['error']

      umgehen soll und sie in den Quelltext des Kontakt-Formulars einbetten soll. Werde da nicht so richtig schlau raus...

      So sieht mein PHP-Script aus:

      <?php

      $strEmpfaenger = 'email@email.de';

      $strFrom = '"Neue_Anmeldung" <IhrAndererName@provider.xy>';

      $strSubject = 'Kontakt';

      $strReturnhtml = 'http://xyz.de/dank.html';

      $strDelimiter = ":\t";

      ### Ende Konfiguration ###

      if($_POST)
      {
      $strMailtext = "";

      while(list($strName,$value) = each($_POST))
      {
      if(is_array($value))
      {
      foreach($value as $value_array)
      {
      $strMailtext .= $strName.$strDelimiter.$value_array."\n";
      }
      }
      else
      {
      $strMailtext .= $strName.$strDelimiter.$value."\n";
      }
      }

      if(get_magic_quotes_gpc())
      {
      $strMailtext = stripslashes($strMailtext);
      }

      mail($strEmpfaenger, $strSubject, $strMailtext, "From: ".$strFrom)
      or die("Die Mail konnte nicht versendet werden.");
      header("Location: $strReturnhtml");
      exit;
      }

      ?>

      Ich hoffe das macht jetzt keine Problem das ich soviel poste, aber komme einfach nicht zurecht.


      Vielen Dank

      Kommentar

      Lädt...
      X