Avatar billede Kim_m Nybegynder
25. juli 2011 - 06:34 Der er 6 kommentarer og
1 løsning

Form Mail

Hej.

Jeg har lavet en enkelt php form mail og vil gerne have brugeren sendt videre til en ny side når formen er valideret og sendt.

Jeg har denne kode:

if(empty($errorMessage))
  {
           
  $email_from = 'min email adr';
  $email_subject = "Ny Form meddelelse";
  $email_body = "Du har modtaget en besked fra hjemmesiden, fra $varNavnLH.\n\n".
                          "Her er beskeden:\n\n $varBeskedLH \n\n".
                          "$varMailLH \n\n\n\n".
           
           
           
  $to = "min email adr";
  $headers = "From: $email_from \r\n";
  $headers .= "Reply-To: $varMailLH \r\n";
               
               
  mail($to,$email_subject,$email_body,$headers);
           
           
  header('Location: sendt.php');
               
               
}


Men brugeren kommer ikke videre til den nye side, jeg får derimod den klasiske fejl header alredy sendt, men  header('Location: sendt.php');    har da ikke noget med variablen $headers at gøre eller hvad?????

Hvad gør jeg forkert???



Desuden har jeg måtte ligge brugerens e-mail adr. ind i:

"Her er beskeden:\n\n $varBeskedLH \n\n".
                          "$varMailLH \n\n\n\n".

Ellers er det kun min egen e-mail adr. jeg får i mailen. (Er det en forkert måde jeg har gjort det på??)

Hilsen
Kim
Avatar billede claes57 Ekspert
25. juli 2011 - 09:50 #1
fjern alle blanke linjer
Avatar billede webweaver Praktikant
25. juli 2011 - 13:45 #2
Hvad har du udenom dit script? Hvorhenne er formen og så videre?
Du må ikke have outputtet HTML og så videre før din header location - ryk dit script øverst op i din fil.
Avatar billede Kim_m Nybegynder
26. juli 2011 - 19:52 #3
Tak for svar.

Det virker som om jeg skal ha scritet øverst i filen før min DOCTYPE så det vil jeg prøve.

Det kan være det er derfor jeg ikke får brugerens e-mail adr. med.

Men hvilken måde er så den rigtige:

$headers .= "Reply-To: $varMailLH \r\n";
mail($to,$email_subject,$email_body,$headers);
header('Location: sendt.php');

ELLER:

$headers .= "Reply-To: $varMailLH \r\n";
header('Location: sendt.php');
mail($to,$email_subject,$email_body,$headers);

Hilsen
Kim
Avatar billede claes57 Ekspert
26. juli 2011 - 20:32 #4
du skal sende mail før du skifter adresse
Avatar billede pstidsen Novice
27. juli 2011 - 00:38 #5
Avatar billede Kim_m Nybegynder
27. juli 2011 - 09:37 #6
Hej igen, mange tak for svar.

Jeg kender godt form guiden og bruger også den.

Nu kører det.

Jeg skulle ha scriptet op først i filen og så havde jeg lavet en echo inde i if() der viste mig at jeg var kommet igennem valideringen, den var med til at ødelægge det.

Vil I alle ligge et svar.

Tak for hjælp :-)

Kim
Avatar billede webweaver Praktikant
27. juli 2011 - 09:46 #7
Svar :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester