Avatar billede tvbrandt Nybegynder
10. december 2003 - 09:55 Der er 2 kommentarer og
1 løsning

Formular skal afsendes til forskellige emailadresser

Jeg har lavet en formular, hvor man skal kunne vælge en arrangementstype via en dropdown. Valget af den dropdown skal afgøre hvilken mailmodtager der skal modtage bestillingen.

Jeg har defineret en variabel "arran".

Jeg har forsøgt med brug af isset. Altså således:
if (isset($arran == "Restaurant" || "Fest")) {
$receiver = "x@yyy.dk";
}

Men det virkede desværre ikke.

Så har jeg forsøgt uden isset. Altå således:
if ($arran == "Restaurant" || "Fest") {
$receiver = "x@yyy.dk";
}

Jeg har tre mailadresser der skal indblandes i dette som modtagere af bestillingen. Derfor har jeg forsøgt dette:
// Modtager
if ($arran == "Restaurant" || "Fest") {
$receiver = "x@yyy.dk";
}

if ($arran == "Konference med overnatning" || "Konference uden overnatning") {
$receiver = "y@yyy.dk";
}

if ($arran == "Overnatning" || "Weekendophold" || "Andet" || "Golfophold") {
$receiver = "z@yyy.dk";
}

Desværre uden held.
Så jeg måtte prøve noget mere. Det blev til:
// Modtager
if ($arran == "Restaurant" || "Fest") {
$receiver = "x@yyy.dk";
}

elseif ($arran == "Konference med overnatning" || "Konference uden overnatning") {
$receiver = "y@yyy.dk";
}

elseif ($arran == "Overnatning" || "Weekendophold" || "Andet" || "Golfophold") {
$receiver = "z@yyy.dk";
}

Også uden held. Så tænkte jeg: Hvis nu noget går galt, så skal den som default sende til én af mailadresserne (den sidste) så man er sikker på der bliver gjort noget ved bestillingen. Det gjorde jeg således:
// Modtager
if ($arran == "Restaurant" || "Fest") {
$receiver = "x@yyy.dk";
}

if ($arran == "Konference med overnatning" || "Konference uden overnatning") {
$receiver = "y@yyy.dk";
}

else {
$receiver = "z@yyy.dk";
}

Men nok ikke nogen overraskelse. Didn't work!

Er der én der har løsningen eller lidt hjælp?
Avatar billede Slettet bruger
10. december 2003 - 11:41 #1
Hvis du er helt sikker på, at $arran indeholder det korrekte, kan det gøres således:

switch($arran){

  case "Restaurant":
  case "Fest":
    $receiver="x@yyy.dk";
    break;

  case "Konference med overnatning":
  case "Konference uden overnatning":
    $receiver="y@yyy.dk";
    break;

  case "Overnatning":
  case "Weekendophold":
  case "Andet":
  case "Golfophold":
  default:
    $receiver="z@yyy.dk";
}

Og problemet i din egen kode er sådan set bare, at du skal skrive  en hel sammenligning på begge sider af eller-tegnet:
if ($arran == "Restaurant" || $arran=="Fest") {
$receiver = "x@yyy.dk";
}

Men brug switch-blokken i stedet for. Den er lettere at overskue og lettere at udvide med flere personer.
Avatar billede tvbrandt Nybegynder
10. december 2003 - 11:49 #2
Kanon. 1000 tak for hjælpen. Det virker med switch, så den er brugt. Lukker
Avatar billede Slettet bruger
10. december 2003 - 12:01 #3
Selv tak
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