Antworten auf deine Fragen:
Neues Thema erstellen

PHP kontaktformular + Upload

J

Jorsan

Guest

AW: PHP kontaktformular + Upload

Hallo, bei mir hab ich das Problem, dass ich die E-Mail bekomme aber keine Nachricht in der E-Mail sowie den Link zur datei nicht???
habe windows VServer!!
Über ne kurtze Antwort wäre ich sehr dankbar!!!
hier die Domain:
 

J

Jorsan

Guest

AW: PHP kontaktformular + Upload

hier ist der Quelltext:

der Support von Host Europe hat mir das geschrieben !!!
das Skript funktioniert bis zum Upload. Die Dateien werden temporär unter C:\Windows\Temp abgelegt. Ich vermute das der PHP-Prozess hängt da die Datei nicht im Skript geschlossen wird (fclose).
Weitere Informationen finden Sie hier:


X-Account-Key: account2
X-UIDL: F428E664814F43A9B67BFD7DE02BE1E5
X-Mozilla-Status: 0001
X-Mozilla-Status2: 00000000
X-Mozilla-Keys:
Received: from VPS27501 ([127.0.0.1]) by home with MailEnable ESMTP; Tue, 19 May 2009 22:59:54 +0200
Date: Tue, 19 May 2009 22:59:54 +0200
Subject: Kontakt: Hilfe
To: mail@jorsan.de
From: info@jorsan.de
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary=2bf13d8eec8f5d44faeba636c77f5fe5
This is a multi-part message in MIME format
--2bf13d8eec8f5d44faeba636c77f5fe5
Content-Type: text/plain
Content-Transfer-Encoding: 8bit
Sie haben folgende Nachricht erhalten:
Name: Michael Schmitt
Email: info@jorsan.de
Betreff: Hilfe
Nachricht: Das ist eine Test Nachricht!!!
Gruß Michael
Datum/Zeit: 19.05.2009 22:59:54
--2bf13d8eec8f5d44faeba636c77f5fe5
Content-Type: image/gif; name=avatar3805_1.gif
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename=avatar3805_1.gif
R0lGODlhPAA8APf8APz8/P///wAAAAgICP39/f7+/gQEBAEBAQUFBQcHBwICAgYGBqSkpAMDA+rq
6vv7+/r6+q+vr/j4+N3d3Y6OjhYWFuvr60ZGRtzc3Pn5+fX19RgYGOzs7MXFxfPz8xQUFBAQEBcX
F9fX1xUVFREREff397GxsfLy8ikpKe3t7R8fHxMTE+Hh4SEhIRISEp2dneDg4Ofn57KysrCwsC0t
LQsLC9nZ2TQ0NBsbG1RUVPDw8AkJCejo6AoKCgwMDB0dHd/f38fHxxkZGWNjY5WVla6urlVVVVtb
W6qqqmJiYqamptjY2OPj45iYmBoaGg0NDcTExOLi4qysrLq6uqmpqYaGhkBAQMbGxjMzM/Hx8dLS
0unp6Xx8fCMjI3t7ex4eHo2NjcvLy4KCgkVFRXJycpaWlqKion9/fw4ODlFRUTw8PEJCQkNDQ4mJ
iXZ2dr29vbe3tyIiIu7u7mpqaiUlJTY2Nr6+vouLi6GhoYiIiNPT05+fnz09Pfb29kdHR0pKSlJS
Unp6eigoKPT09A8PDzExMRwcHNXV1bm5uXBwcE1NTWhoaOTk5KCgoNDQ0EhISC4uLmZmZmBgYG9v
b6WlpXR0dHNzczc3N8rKysPDw4yMjH5+foGBgUtLS7u7uzo6OoqKil5eXtHR0SYmJmRkZGFhYc3N
zTg4OFNTU9bW1qOjo3d3d1hYWExMTCAgIERERG5uboSEhGdnZ2xsbGVlZdra2jk5Oe/v7ywsLDU1
NZ6enkFBQSsrKycnJ87OzpeXl05OTs/Pz1ZWVqenp21tbZqamrW1tZSUlLS0tC8vLz4+Ptvb23V1
dcLCwoeHh2traz8/P5GRkeXl5UlJSYODg1dXV11dXaurq3h4eK2trba2tsDAwJubm5KSkmlpaVpa
WoCAgMnJyZmZmbi4uNTU1MzMzCQkJFBQULy8vKioqDs7O8jIyDAwMJCQkF9fX5OTk8HBwb+/v97e
3oWFhVlZWebm5n19fVxcXHl5eZycnI+PjyoqKv///wAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEA
AAAh+QQFBQD8ACwAAAAAPAA8AAAI/wABCBRIQI4MExFEESAQwFQRhAx0MIqAsBYBAAxLRDhTzY2q
LQEWQrATIcIbjAFiPDTBQM/FgTAHBsDwwYCASQECXKuAwCYZCUoEDBBAIQCAAGZuDFAgQACCUXcC
FMjw6oAASA8CiMhlIIEAaEAKxBwbYMIImzhnHGigQEG3nAwEeC0aoFFTBQdohGgqoEkACGOa0kip
QsACAd/6GB0bs2wFm4HeuGiw4EO2kAHiDi3KQYUCBD9mPLDhRwAhIyUeXLBaB0MduQtW5WRM1iwC
BChAKBjQAMnizEKJBoBzwCseqQEcUGESMsOYAwictAheSirt2o95I1jAm40HscA3B/+4E9y3wJwh
C0BYPQAB5QQIcPhafF3mhOwJFNRAMNSZ0fDCFXPAUEUYRYAEYUiQ03oDLrUDdwJYEVJ99o3AnwCo
iCCIAga4YApcwRWFwX4CJILeCwKgMEsfDzw3wAEtaEFKcNHQV59jBihghQYBUBLcJxAAWBQBF8iV
gBd2EOGCTXRooNoBBqygRQAw1GRADSLYSNtMJDRFhnVrCGBTJUiJKYAmOaUiBF9WNbUBJgFkEKYA
gxUQQBVmYiGBWPUVEEUvI5CAzX9BCBHCCDg4IgMJG5BAxH8szJFbAmiM0MoVIUFghAskqPFAAQV4
YMsHGzxBQQEvXUdACg44cIJMcjj/YEEMHEjQqgODyBSABhOEs4QDswl0QqspyKSBrA4wQqGuwZ6H
HnI58clsTqkehR5Mz2q57Lbcduvtt+A2hl614ZbbZwAsBAFHKs1SmO2E5tJGwAN3bGDVAEakoG1M
DA0yAyjUpAOEdfGS1Y4ADSSQwGF87KlqZqPwJYAPZ7RbcAEO4NDAABxzLMA7+54nQ***D2ATKRmQ
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
ZAEagyFdyKFAAQEAOw==
--2bf13d8eec8f5d44faeba636c77f5fe5--
Return-Path: <mail@jorsan.de>
 
Zuletzt bearbeitet von einem Moderator:

CIX88

Aktives Mitglied

AW: PHP kontaktformular + Upload

Der Support von Host Europe schreibt etwas von „C:\Windows\Temp” ???
Was haben die für Server?

Ich will mich jetzt nicht weiter einmischen, würde aber phpMailer benutzen.
 
Zuletzt bearbeitet:
J

Jorsan

Guest

AW: PHP kontaktformular + Upload

egal habe das Problem jetzt mit einer Joomla Komponete Breezingforms gelöst!!
Danke nochmal an alle!!!
Gruß Mich
 

Squeendot

Aktives Mitglied

Hallo,
auch ich habe leider ein Problem mit dem PHP-Skript.

Ich habe den Code sehr ähnlich dem auf der 1. Seite geschrieben:

PHP:
<html>
<head>
<title>Kontaktformular</title>
</head>
<body>
<?php

$Empfaenger = "...";

if($_REQUEST['Send'])
{
    if(empty($_REQUEST['Name']) || empty($_REQUEST['Email']) || empty($_REQUEST['Nachricht']))
    {
      
    }
    else
    {
        $Mailbetreff = "Kontakt: ";
        $Mailbetreff .= $_REQUEST['Betreff'];

        $Trenner = md5(uniqid(time()));

        $Header = "From: ".$_REQUEST['Email'];
        $Header .= "n";
        $Header .= "MIME-Version: 1.0";
        $Header .= "n";
        $Header .= "Content-Type: multipart/mixed; boundary=$Trenner";
        $Header .= "nn";
        $Header .= "This is a multi-part message in MIME format";
        $Header .= "n";
        $Header .= "--$Trenner";
        $Header .= "n";
        $Header .= "Content-Type: text/plain";
        $Header .= "n";
        $Header .= "Content-Transfer-Encoding: 8bit";
        $Header .= "nn";
        $Header .= "Sie haben folgende Nachricht erhalten: nn";

        while(list($Formularfeld, $Wert) = each($_REQUEST))
        {
            if($Formularfeld != "Send" && $Formularfeld != "Anhang")
            {
                $Header .= $Formularfeld.": ".$Wert."n";
            }
        }

        $Header .= "nDatum/Zeit: ";
        $Header .= date("d.m.Y H:i:s");
        $Header .= "n";
        $Header .= "--$Trenner";
        $Header .= "n";
        $Header .= "Content-Type: ";
        $Header .= $_FILES['Anhang']['type'];
        $Header .= "; name=";
        $Header .= $_FILES['Anhang']['name'];
        $Header .= "n";
        $Header .= "Content-Transfer-Encoding: base64";
        $Header .= "n";
        $Header .= "Content-Disposition: attachment; filename=";
        $Header .= $_FILES['Anhang']['name'];
        $Header .= "nn";
        $Dateiinhalt = fread(fopen($_FILES['Anhang']['tmp_name'], "r"), $_FILES['Anhang']['size']);
        $Header .= chunk_split(base64_encode($Dateiinhalt));
        $Header .= "n";
        $Header .= "--$Trenner--";

        mail($Empfaenger, $Mailbetreff, "", $Header);
        echo"Vielen Dank für Ihre eMail!";
   }
}
else
{
?>
<table border="0" cellpadding="1" cellspacing="2">
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" enctype="multipart/form-data" method="post">
<tr>
  <td>Name:</td>
  <td><input name="Name" size="20" type="text"></td>
</tr>
<tr>
  <td>eMail:</td>
  <td><input name="Email" size="20" type="text"></td>
</tr>
<tr>
  <td>Betreff:</td>
  <td><select name="Betreff" size="1"><option>Hilfe</option><option>Kritik</option><option>Werbung</option></select></td>
</tr>
<tr>
  <td>Nachricht:</td>
  <td><textarea cols="25" name="Nachricht" rows="5"></textarea></td>
</tr>
<tr>
  <td>Anhang:</td>
  <td><input name="Anhang" size="20" type="file"></td>
</tr>
<tr>
  <td align="center" colspan="2"><input name="Send" type="submit" value="Abschicken">    <input name="Reset" type="reset" value="Löschen"></td>
</tr>
</form>
</table>
<?php
}

?>
</body>
</html>

Also ganz oben steht natürlich eine E-Mail Adresse drin :p

So. Wenn ich das Formular jetzt öffne, kommt nur eine Nachricht mit folgendem Inhalt:

HAIFACNFR1lQVC1VTlJFU1QtUkVMSUdJT04tUFJPVEVTVC1OQUtCQRwCCgABNRwCDAAoSVBUQzox
MTAxMDAwMDpQT0w6cGFydGllcyBhbmQgbW92ZW1lbnRzOhwCDwADUE9MHAIUABVwYXJ0aWVzIGFu
ZCBtb3ZlbWVudHMcAhkACkhPUklaT05UQUwcAjcACDIwMTEwNTEzHAI8AAsxMjAxMDArMDAwMBwC
UAAOS0hBTEVEIERFU09VS0kcAloABUNhaXJvHAJfAAEtHAJkAANFR1kcAmUABUVHWVBUHAJnAAZL
TEQxNTIcAm4AA0FGUBwCcwADQUZQHAJ4AVZFZ3lwdGlhbiBkZW1vbnN0cmF0b3JzIGhvbGQgdGhl
IGZsYWdzIG9mIEFyYWIgbmF0aW9ucyBhdCBDYWlybydzIFRhaHJpciBTcXVhcmUgb24gTWF5IDEz
LCAyMDExIGR1cmluZyBhIHByb3Rlc3QgY2FsbGluZyBmb3IgbmF0aW9uYWwgdW5pdHkgYWZ0ZXIg
[... und so weiter... ich konnte leider nicht mehr als 50.000 Zeichen einfügen]
n--5d94217c3ad1d5b82dd7e83bb7af595a--

Was ist da schief gelaufen?

Vielen Dank schonmal im Voraus und liebe Grüße,

Squeendot
 

Squeendot

Aktives Mitglied

Also für alle die es interessiert:

Ich habe mich noch mal drüber gehockt und habs jetzt endlich geschafft.
Ich habe es hier für eine Schreinerei gemacht, deshalb die Einträge...

PHP:
if ($_SERVER['REQUEST_METHOD']=="POST"){

  $to="email@email.de";
  $subject="Ihre Anfrage";
  $from = stripslashes($_POST['name'])."<".stripslashes($_POST['firma']).">";
  if(empty($_POST['name'])  || empty($_POST['email']) || empty($_POST['message']))
  {
    $errors .= "\n Error: all fields are required";
  }
  $firma = $_POST['firma'];
  $name = $_POST['name'];
  $strasse = $_POST['strasse'];
  $ort = $_POST['ort'];
  $postleitzahl = $_POST['postleitzahl'];
  $telefon = $_POST['telefon'];
  $email = $_POST['email'];
  $auswahl = $_POST['auswahl'];
  $zuschneiden = $_POST['zuschneiden'];
  $bohren = $_POST['bohren'];
  $fraesen = $_POST['fraesen'];
  $lackieren = $_POST['lackieren'];
  $bekanten = $_POST['bekanten'];
  $auftragsnummer = $_POST['auftragsnummer'];
  $lieferadresse = $_POST['lieferadresse'];
  $liefertermin = $_POST['liefertermin'];
  $message = $_POST['message'];

  if (!eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email_address))
  {
    $errors .= "\n Error: Invalid email address";
  }

  $mime_boundary="==Multipart_Boundary_x".md5(mt_rand())."x";

  $tmp_name = $_FILES['filename']['tmp_name'];
  $type = $_FILES['filename']['type'];
  $file_name = $_FILES['filename']['name'];
  $size = $_FILES['filename']['size'];

  $message = "Sie haben eine neue Anfrage von $name erhalten.
  1. Persoenliche Daten
  -----------------------------
  Firma: $firma
  Name: $name
  Strasse & Hausnummer: $strasse
  Ort: $ort
  Postleitzahl: $postleitzahl
  Telefon: $telefon
  E-Mail: $email

  2. Konfiguration
  -----------------------------
  Auswahl: $auswahl
  Leistung(en): $zuschneiden, $bohren, $fraesen, $lackieren, $bekanten
  Auftragsnummer: $auftragsnummer
  liefertermin: $liefertermin
  Liederadresse: $lieferadresse
  Bemerkung, Sonderwuensche, etc.: $message";

  if (file_exists($tmp_name)){

  if(is_uploaded_file($tmp_name)){

  $file = fopen($tmp_name,'rb');

  $data = fread($file,filesize($tmp_name));

  fclose($file);

  $data = chunk_split(base64_encode($data));
  }

  $headers = "From: $from\r\n" .
  "MIME-Version: 1.0\r\n" .
  "Content-Type: multipart/mixed;\r\n" .
  " boundary=\"{$mime_boundary}\"";

  $message = "This is a multi-part message in MIME format.\n\n" .
  "--{$mime_boundary}\n" .
  "Content-Type: text/plain; charset=\"iso-8859-1\"\n" .
  "Content-Transfer-Encoding: 7bit\n\n" .
  $message . "\n\n";

  $message .= "--{$mime_boundary}\n" .
  "Content-Type: {$type};\n" .
  " name=\"{$file_name}\"\n" .
  //"Content-Disposition: attachment;\n" .
  //" filename=\"{$fileatt_name}\"\n" .
  "Content-Transfer-Encoding: base64\n\n" .
  $data . "\n\n" .
  "--{$mime_boundary}--\n";

  if (@mail($to, $subject, $message, $headers))
    {
  ?>
  <div><center><h1>Mail Sent successfully !!</h1></center></div>
  <?php
    }else
    {
  ?>
  <div><center>
  <h1>Error !! Unable to send Mail..</h1></center></div>
  <?php
    }
  }
}
?>

Ich denke das Formular an sich braucht ihr nicht, das kann man sich ja selber denken...
Die E-Mail wird korrekt versendet und der Anhang ist dabei. So wie es sein soll :)


Lieber Gruß,

Julian
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.614
Beiträge
1.538.351
Mitglieder
67.525
Neuestes Mitglied
mgtaucher
Oben