Hi,
habe ein Problem mit einem Kontaktscript. Unter PHP4 funktioniert es tadellos, doch unter PHP5 bekomme ich folgende Fehlermeldung:
Warning: fopen() [function.fopen]: Filename cannot be empty in /kontakt.php on line 184
Warning: fread(): supplied argument is not a valid stream resource in /kontakt.php on line 184
Warning: Cannot modify header information - headers already sent by (output started at /kontakt.php:184) in /kontakt.php on line 190
Sowie display errors:
Notice: Undefined index: Send in /kontakt.php on line 31
Anbei mal der Code:
Hat jemand vielleicht ein Tip für mich?! Danke.
habe ein Problem mit einem Kontaktscript. Unter PHP4 funktioniert es tadellos, doch unter PHP5 bekomme ich folgende Fehlermeldung:
Warning: fopen() [function.fopen]: Filename cannot be empty in /kontakt.php on line 184
Warning: fread(): supplied argument is not a valid stream resource in /kontakt.php on line 184
Warning: Cannot modify header information - headers already sent by (output started at /kontakt.php:184) in /kontakt.php on line 190
Sowie display errors:
Notice: Undefined index: Send in /kontakt.php on line 31
Anbei mal der Code:
PHP:
<?php
error_reporting(E_ALL);
ini_set('display_errors', true);
### Konfiguration ###
$Empfaenger = "xxx@domain.de";
$Mailbetreff = 'Anfrage';
$strReturnhtml = 'http://www.xxx.de/ok.php';
$strDelimiter = ":\t";
$allowedfiletype = array('pdf');
$maxfilesize = 8;
### Ende Konfiguration ###
if($_REQUEST['Send'])
{
if(empty($_REQUEST['Email']) || empty($_REQUEST['Firma']) || empty($_REQUEST['Name']) || filesize($_FILES['Anhang']['tmp_name'])/1024/1024 >= $maxfilesize)
{
?>
(Hier kommt die Fehlermeldung)
<?php
}
else
{
$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 .= "\n\n";
$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 .= "\n\n";
$Header .= "Sie haben folgende Nachricht erhalten: \n\n";
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 .= "\n\n";
$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);
header("Location: $strReturnhtml");
exit;
}
}
else
{
?>
<form action="<?php echo$_SERVER['PHP_SELF']; ?>" enctype="multipart/form-data" method="post" name="Formular" >
<input name="Anhang" size="50" type="file">
<input type="submit" name="Send" value="Daten senden" class="btn"> <input class="btn" type="reset">
</form>
<?php
}
?>
Hat jemand vielleicht ein Tip für mich?! Danke.