_SimonSez_
Mitglied
Hallo zusammen,
habe ein Problem mit meinem Kontaktformular.
Mein Formular ist eine eigene PHP-Datei, die ich per "include" in eine DIV-Box Lade.
Bekomme jetzt immer folgenden Fehler:
"Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /hp/bo/ab/yh/www/neu/005.php:2) in /hp/bo/ab/yh/www/neu/formular.php on line 17"
Kann mir jemand helfen und sagen was der Fehler ist?
Habe leider noch nicht so viel Ahnung von PHP.
Gruß
Simon
habe ein Problem mit meinem Kontaktformular.
Mein Formular ist eine eigene PHP-Datei, die ich per "include" in eine DIV-Box Lade.
Bekomme jetzt immer folgenden Fehler:
"Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /hp/bo/ab/yh/www/neu/005.php:2) in /hp/bo/ab/yh/www/neu/formular.php on line 17"
PHP:
<?php
$ihre_emailadresse = '####';
$email_absender = 'From: Kontaktformular <system@domain.tld>';
$email_betreffzeile = 'Kontaktformular-Anfrage';
$errormessage[0] = 'Sie haben nicht alle Felder ausgefüllt:';
$errormessage[1] = '<br />- Ungültiger Name';
$errormessage[2] = '<br />- Ungültiger E-Mailadresse';
$errormessage[3] = '<br />- Ungültiger Betreff';
$errormessage[4] = '<br />- Ungültige Nachricht';
$errormessage[5] = '<br />- Ungültiger Sicherheitscode';
$errormessage[6] = '<br />- Ungültige Zeichen entdeckt';
$okay = 'Vielen Dank für Ihre Nachricht<br /><br />';
session_start();
if(isset($_POST['submit'])) {
$name = check($_POST['name']);
$email = check($_POST['email']);
$betreff = check($_POST['betreff']);
$nachricht = check($_POST['nachricht']);
$ip = $_SERVER['REMOTE_ADDR'];
$host = gethostbyaddr($ip);
$zeit = time();
$datum = date ("d.m.Y", $zeit);
$uhrzeit = date ("H:i:s", $zeit);
$message = '<span style="color:red">' . $errormessage[0];
if($name==''){$message .= $errormessage[1]; $fehler = 1;}
if(!ereg("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,6})$", $email)) {
$message .= $errormessage[2]; $fehler = 1;}
if($betreff==''){$message .= $errormessage[3]; $fehler = 1;}
if($nachricht==''){$message .= $errormessage[4]; $fehler = 1;}
if($_POST['code']=="" || strtolower($_POST['code'])!=$_SESSION['captcha_code']){
$message .= $errormessage[5]; $fehler = 1;}
if(ehi_check()!=0){$message .= $errormessage[6]; $fehler = 1;}
$message .= '</span><br /><br />';
if(!isset($fehler)){
$email_nachricht = "-- Kontakformularanfrage --\n\nBetreff: $betreff";
$email_nachricht .= "\nName: $name\nE-Mailadresse: $email\nHomepage: $homepage\n\n";
$email_nachricht .= "Nachricht:\n$nachricht\n\nIP: $ip\nHost: $host\n";
$email_nachricht .= "gesendet am $datum um $uhrzeit.";
@mail($ihre_emailadresse, $email_betreffzeile, $email_nachricht, $email_absender);
$name = '';
$betreff = '';
$email = '';
$nachricht = '';
$homepage = '';
$meldung=$okay;
} else {
$meldung=$message;
}
}
else{$meldung='';}
?>
<script type="text/javascript">function reload_captcha(){ var nd = new Date(); var src="captcha.php?"+nd; document.getElementById("captcha").src= src; }</script>
<form name="formular" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<table style="width:187px" border="0" cellpadding="0" cellspacing="0">
<tr>
<td colspan="2"><?php echo $meldung; ?></td>
</tr>
<tr>
<td colspan="2">Name:<br /><input style="height:22px; width:180px;" name="name" type="text" value="<?php echo $name; ?>" /></td>
</tr>
<tr>
<td colspan="2">E-Mail Adresse:<br /><input style="height:22px; width:180px;" name="email" type="text" id="email" value="<?php echo $email; ?>" /></td>
</tr>
<tr>
<td colspan="2">Betreff:<br /><input style="height:22px; width:180px;" name="betreff" type="text" value="<?php echo $betreff; ?>" /></td>
</tr>
<tr>
<td colspan="2">Nachricht:<br /><textarea style="height:100px; width:180px; white-space: nowrap;" name="nachricht" cols="20" rows="5"><?php echo $nachricht; ?></textarea></td>
</tr>
<tr>
<td colspan="2">Sicherheitsabfrage:</td>
</tr>
<tr>
<td width="70px"><img id="captcha" src="captcha.php" alt="captcha" border="0" /></td>
<td style="padding-left:10px;"><input style="height:22px; width:95px;" name="code" type="text" /></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Abschicken" name="submit" /></td>
</tr>
</table>
</form>
<?php
function check($var){ $varsafe=trim(strip_tags($var)); return $varsafe; }
function ehi_check(){
$achtung=0;
foreach($_POST as $val){
$pos = strpos(strtolower($val), 'content-type:'); if($pos !== false){$achtung++;}
$pos = strpos(strtolower($val), 'content-type'); if($pos !== false){$achtung++;}
$pos = strpos(strtolower($val), 'bcc:'); if($pos !== false){$achtung++;}
$pos = strpos(strtolower($val), 'bcc'); if($pos !== false){$achtung++;}
}
return $achtung;
}
?>
Kann mir jemand helfen und sagen was der Fehler ist?
Habe leider noch nicht so viel Ahnung von PHP.
Gruß
Simon