- Fredric
- Medlem ●
- Stockholm
- 2010-02-06 16:07
Hej alla!
Har stött på lite patrull..
Det är som så att jag har kört samma kontaktformulär flera gånger utan några problem, men nu är det helt plötsligt knas och jag vet inte vad som är fel, är inte heller någon mästare i PHP så jag behöver lite proffs hjälp,, därav detta inlägg.
Formuläret hittas här:
Jensen Sjöqvist
Och förutom kontaktsidan så finns den en formmail.php och en success.html och en error.html beroende på om du fyllt i allt korrekt.
Saken är att själva mailat kommer fram men jag får ett konstigt felmeddelande istället för success sidan. Tanken är ju att när man skickat mailet så ska man hamna på en Tack för ditt mail sida (success.html), men detta funkar inte utan man får istället upp felmeddelandet nedan:
Warning: Cannot modify header information - headers already sent by (output started at /home/web177/domains/jensensjoqvist.se/public_html/formmail.php:1) in /home/web177/domains/jensensjoqvist.se/public_html/formmail.php on line 41
Och kollar jag vilken rad det är så är det denna:
header("Location: " . $succes);
Så det är här något skiter sig,, vad kan vara fel?? success.html och error.html ligger där och det funkade när jag flyttade sidan till mitt webbhotell,, är det något på deras server???
Hjäälp!
MVH
Fredrik
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Formmail.php koden ser ut som följande:
<?php
// Formmail
// ange mottagare av formmailen
// flera mottagare kan läggas till som
// $modtagere[1] = "[email protected]"
// $modtagere[2] = "[email protected]"
// osv.
$modtagere[1] = "[email protected]";
// success och felsidor
$succes = "success.html";
$fejl = "error.html";
// standard textbox är
// namn
// emailadress
// ämne
// besked
// dessa ska vara "name" på de olika textboxarna på html-sidan
// t.ex. <input type="text" name="navn"></input>
// gör en lista över mottagare
$mail_modtagere = implode(",", $modtagere);
// klargör parameter
$namn = sanitize($_POST['namn']);
$emailadress = "From: " . sanitize($_POST['emailadress']);
$rubrik = " " . $namn . ": " . sanitize($_POST['rubrik']);
$meddelande = $_POST['meddelande'];
// send mail
$mail_status = mail($mail_modtagere, $rubrik, $meddelande, $emailadress);
if ($mail_status) {
header("Location: " . $succes);
} else {
header("Location: " . $fejl);
}
function sanitize($data) {
$safe_data = $data;
if ($pos = strpos($safe_data, "\n")) {
$safe_data = substr($safe_data, 0, $pos-1);
}
if ($pos = strpos($safe_data, "\r")) {
$safe_data = substr($safe_data, 0, $pos-1);
}
return $safe_data;
}
?>