15. april 2009 - 12:58
Der er
8 kommentarer og 1 løsning
formmail - kopi til anden mail
Hej eksperter Jeg er total newbie - så hav venligst tålmodighed med evt. dumme spørgsmål. Problem: Jeg vil gerne have tilsendt en mail når en bruger opretter sig på min webside via en form. Jeg har bla. følgende: <script type="text/javascript"> function maildata { <?php mail("modtagermail","overskrift","tekst","from:afsendermail"); ?> } </script> <input type=submit value=" send " onclick="maildata" class=adminButton> </form> problemet er at mail sendes når siden loades - og ikke ved onclick. Jeg har også prøvet at indsætte i: <form action="index.php" style="margin-left:10px;margin-right:10px;margin-top:0px;margin-bottom:0px" method=post onsubmit="return (ValidateSignupForm(this) && maildata )"> men der afsendes ingen mail. hvordan får jeg et af formfelterne, feks. et firmanavn ind i mailen? hvad skal der til?
Annonceindlæg fra Cepheo
15. april 2009 - 13:11
#1
det er fordi at du blander php og javascript, php koden køre igennem selvom den står i en javscript funktion. <html kode> <form action="" method="POST"> <input name="send" type=submit value=" send " onclick="maildata" class=adminButton> </form> </html kode> <php kode> <? if ($_POST['send']) { mail("modtagermail","overskrift","tekst","from:afsendermail"); } ?>
15. april 2009 - 13:45
#2
Nu har jeg så: <form action="" method="POST" onsubmit="return ValidateSignupForm(this)"> ... <input name="send" type=submit value="send" class=adminButton> (uden onclick) </form> <? if ($_POST['send']) { mail("modtagermail","overskrift","tekst","from:afsendermail"); } ?> nu sendes mail slet ikke - eller jeg modtager den ihverfald ikke.
15. april 2009 - 13:51
#3
mail("modtagermail","overskrift","tekst","from:afsendermail"); går ud fra du har ændret modtagermail til en mail?
15. april 2009 - 13:54
#4
og er du sikker på den ikke går istå i ValidateSignupForm(this)?
15. april 2009 - 14:03
#5
ja til det første :-) og ved ikke til det sidste. Men det er et valideringsscript, som kun burde "trigge" ved en fejl i indtastningen i formen. function ValidateSignupForm(x){ if(x.user_email.value==""){ alert("<?php echo $PLEASE_ENTER_YOUR_EMAIL;?>"); x.user_email.focus(); return false; } if(!CheckValidEmail(x.user_email.value) ) { alert(x.user_email.value+" <?php echo $IS_NOT_VALID;?>"); x.user_email.focus(); return false; } if(x.confirm_email.value==""){ alert("<?php echo $PLEASE_ENTER_YOUR_EMAIL;?>"); x.confirm_email.focus(); return false; } if(x.password.value==""){ alert("<?php echo $PASSWORD_EMPTY_FIELD_MESSAGE;?>"); x.password.focus(); return false; } if(x.user_email.value != x.confirm_email.value) { alert("<?php echo $EMAILS_MISMATCH;?>"); x.user_email.focus(); return false; } if(x.company.value==""){ alert("<?php echo $ENTER_COMPANY_NAME;?>"); x.company.focus(); return false; } return true; }
15. april 2009 - 14:31
#6
<? if ($_POST['send']) { mail("modtagermail","overskrift","tekst","from:afsendermail"); } ?> prøv lige <? if ($_POST['send']) { echo "test"; mail("modtagermail","overskrift","tekst","from:afsendermail"); } ?> bare for at se om den overhoved ikke kommer ind i if sætningen?
15. april 2009 - 14:39
#7
tak, jeg prøver i aften. Skal hente ungerne... :-)
16. april 2009 - 09:27
#8
echo "test" kom ikke, men den skifter siden til en meddelse om at der er sendt en mail med et aktiveringslink, så jeg tænkte at der kunnne jeg jo bare sende endnu en mail til mig selv om at brugeren er oprettet - simpelt, men det virker :-) tak for din tid!
16. april 2009 - 09:53
#9
glad for at det virkede for dig og tak for points :)
Vi tilbyder markedets bedste kurser inden for webudvikling