Avatar billede komputerdk Mester
29. september 2004 - 19:28 Der er 8 kommentarer og
1 løsning

email med variabeltjeck i array fra form

hejsa

jeg har en html form med en masse felter/navngivne variabler.

jeg skal have dem over så den mailer de variabler der er blevet udfyldt til en bestemt emailadresse.


jeg kan få variablerne ud ved at lave en :

Foreach ($_GET $key => $arrayvar)

echo "$arrayvar<br">;

men jeg kan bare ikke få dem med i en mail() funktion med php..

what 2 do
Avatar billede komputerdk Mester
29. september 2004 - 19:28 #1
ups. laver testen ved

if($arrayvar)
{
echo "$arrayvar<br>";
}
Avatar billede bromer Nybegynder
29. september 2004 - 19:31 #2
Tja.. du kan vel bare sættes selve formen til at sende en mail. Ellers kan du vel sende dem med

mail(emailadresse,subject,var_export($_GET,true));
Avatar billede acid-head Nybegynder
29. september 2004 - 19:39 #3
Hvad med noget lignende dette:

foreach ($_GET $key => $arrayvar)
{
  $liste .= $arrayvar."\n";
}

mail(email,subject,$liste);
Avatar billede bromer Nybegynder
29. september 2004 - 20:26 #4
tjo.. men så mister man navnene på de felter der blev sendt over. Det gør man ikke, hvis man bruger var_export
Avatar billede komputerdk Mester
29. september 2004 - 20:31 #5
hmm, har prøvet den var_export, men jeg modtager ikke mailen med det samme.. så dunno om det virker (any ideas hvorfor hulen min host ikke sender dem med det samme?)


$sendt_fil="http://www.url.dk";
mail("minmail@minmail.DK","TEST",var_export($_GET,true), "from: $email\nX-Mailer: http://$HTTP_HOST$REQUEST_URI");
header("Refresh: 0; url=$sendt_fil");
Avatar billede acid-head Nybegynder
29. september 2004 - 20:31 #6
Det kan du selvfølgelig have ret i, bromer.. :)
Avatar billede komputerdk Mester
29. september 2004 - 21:07 #7
øv, havde bare glemt at restarte Apache .. pinligt..

anyway, fik en mail med $_GET,true ;)

men desværre så skriver den alle dem som ikke har en variabel (se eks.)

1550' => '888',
  'ac30' => '',
  'ATF453' => '',
  'lg1750' => '',
  'ac35' => '',
  'ATF603' => '',
Avatar billede komputerdk Mester
30. september 2004 - 08:59 #8
Fandt selv løsningen (tror jeg nok) , men Acid heads løsning ligner den meget (så kom med et svar ) :)

$body =" ";

foreach ($_POST as $key => $val)

if (strlen($val)>0 && $val!= Send) {

// tjekker om arrayvariablen val er større end 0, ergo er udfyldt, og så slettes send

$body .= $key." = ".$val."\n";

// lægger værdier til body der så sendes i mailen
}

mail("$mailto","$emne",$body, "from: $email\nX-Mailer: http://$HTTP_HOST$REQUEST_URI");
header("Refresh: 0; url=$sendt_fil");
Avatar billede acid-head Nybegynder
30. oktober 2004 - 11:58 #9
Ehm.. Too late? ;)
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