Avatar billede alexandre Nybegynder
16. april 2007 - 19:06 Der er 8 kommentarer og
1 løsning

Kontakt formularen - Flere lande - flere email adresser

Hej,

Jeg har et kontakt formular på min website, og i dette kontakt formular kan besøgende vælge fra et "dropdown menu" fra hvilket de kommer fra.

Mit ønske er, at hvis for eksemple et besøgende er fra spanien, og han eller hende vælger "Spain" fra dropdown menu'en, så skal hendes eller hans besked sendes til spain@mit-webhotel.tld

Det kan godt lyde mærkligt at jeg vil det :) men det er jo rigtig, det skal bruges som del af et projekt.
Så jeg håber nogen kan hjælp mig med på vejen.

Jeg ved ikke hvor meget kode du har brug for at se, at det jeg allerede har, så spørg løs.

På forhånd tak.
Avatar billede jakobdo Ekspert
16. april 2007 - 19:18 #1
Din dropdownmenu, den har vel et navn?
Ala: <select name="country" eller <select name="land"

I den side du så behandler data på efterfølgende, du har den stående i <form action="DIN_SIDE.php"

Laver du:

$email_modtager = $_POST['NAVNET_FRA_SELECT'] '@mit-webhotel.tld';
mail($email_modtager,$subject,$message);
Avatar billede phliplip Nybegynder
16. april 2007 - 19:25 #2
<option value="spain">Spain</option> ikke at forglemme ;)
Avatar billede nixir Nybegynder
16. april 2007 - 19:51 #3
og hvis du vil gemme alle lande i en database kunne det hele se sådan ud:

1. form.php :

<form action="send_mail.php" method="post" enctype="multipart/form-data">
  <select name="country">
<?php
$query = mysql_query("SELECT name, mail FROM countries"); // name=Danmark mail=denmark
while ($row = mysql_fetch_array($query)) {
  echo "    <option value="".$row['mail']."">".$row['name']."</option>\n"
}
?>
  </select>
  <input type="submit" value="SUBMIT" />
</form>

2. send_mail.php :

<?php
$to = $_POST['country']."@mit-webhotel.tld";
$subject = "";
$message = "";
mail($to,$subject,$message);

echo "Der er nu sendt en mail til: ".$to;
?>

Bare et eksempel ... så kan du redigerer dine lande via en anden side jo ... dynamik længe leve!

NB! 99% baseret på jakobdo og phliplip's indlæg.
Avatar billede alexandre Nybegynder
16. april 2007 - 20:14 #4
hej,
har lige prøvet Jakobs forslag:

Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING in /var/www/web9/web/formmail.php on line 57


i linje 57 står der:

56 >
57 > $recipient = $_POST['country'] '@test-domain.tld';
58 > mail_it(stripslashes($content), stripslashes($subject), $email, $recipient);
59 >

hvad er det galt ?
Avatar billede jakobdo Ekspert
16. april 2007 - 20:24 #5
$recipient = $_POST['country'] . '@test-domain.tld';
Der mangler et punktum mellem country og @
Avatar billede alexandre Nybegynder
16. april 2007 - 20:46 #6
Det virker jakob.
lægger du et svar.

De andre, i skal have tak for deltagelse. især nixir, det var en god ide med det hele
i mysql db, men det bliver bare ednu mere kompliceret(for mig).

Tak.
Avatar billede jakobdo Ekspert
16. april 2007 - 20:49 #7
Svar!
Avatar billede nixir Nybegynder
16. april 2007 - 23:53 #8
Ja det var jo ikke meningen det sku blive mere indviklet ;)

Men nu samlede jeg jo stort set også bare det de andre havde skrevet - og rettede punktum-fejlen som jeg faktisk så ;)

Mvh.
Avatar billede jakobdo Ekspert
17. april 2007 - 07:36 #9
Jeg takker for point.
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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