Ich bin am erstellen einer Website mit meinem ersten PHP Skript, das die Formulardaten an meine E-Mail Adresse schicken soll und eine geuploadete Datei in einem Ordner auf dem Webserver speichern soll. Da ich keine Erfahrung mit PHP habe, sondern an meiner ersten Programmiersprache ActionScript am lernen bin, frage ich, warum die Formulardaten mir zugeschickt werden, jedoch die Datei nicht in den Unterordner upload gespeichert wird.
Hier ist mein Code:
Hat jemand den Fehler gefunden?
Hier ist mein Code:
Code:
<?php
### Konfiguration ###
# Bitte passen Sie die folgenden Werte an, bevor Sie das Script benutzen!
# An welche Adresse sollen die Mails gesendet werden?
$strEmpfaenger = 'name@provider.com';
# Welche Adresse soll als Absender angegeben werden?
# (Manche Hoster lassen diese Angabe vor dem Versenden der Mail ueberschreiben)
$strFrom = '"Formmailer" <name@provider.com>';
# Welchen Betreff sollen die Mails erhalten?
$strSubject = 'Artikel Upload';
# Zu welcher Seite soll als "Danke-Seite" weitergeleitet werden?
# Wichtig: Sie muessen hier eine gueltige HTTP-Adresse angeben!
$strReturnhtml = 'http://www.web237o.dynamic-kunden.ch/formmailer/erfolgreich.htm';
# Welche(s) Zeichen soll(en) zwischen dem Feldnamen und dem angegebenen Wert stehen?
$strDelimiter = ":";
### Ende Konfiguration ###
$path = "/upload";
$tempname = $_FILES['file']['tmp_name'];
$name = $_FILES['file']['name'];
$type = $_FILES['file']['type'];
$size = $_FILES['file']['size'];
if($size > "5000000") {
$err[] = "Die Datei welche du hochladen willst, ist zu gross!<br>Maximale Dateigrosse beträgt 5 MB!";
}
if(empty($err)) {
copy("$tempname", "$name");
$strReturnhtml = 'http://www.web237o.dynamic-kunden.ch/formmailer/erfolgreich.htm';
}
else {
foreach($err as $error)
echo "$error<br>";
}
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;
}
?>
Hat jemand den Fehler gefunden?