Gå til innhold

Avmerkningsbokser i mail-form


Anbefalte innlegg

Jeg har et mail-script bestående av et skjema, og en egen fil som sender mailen.

 

Det ser slik ut:

 

Skjemaet form.php:

<form action="simpel.php" method="post">

 Name: <input type="text" name="name" size="20" maxlength="20"><br />

 Subject: <input type="text" name="subject" size="30" maxlength="30"><br />

 Text:<textarea name="text" name="text" cols="50" rows="10"></textarea><br />
 

 <input type="submit" name="submit" value="Send">

</form>

 

Selve mail-scriptet simpel.php:

<?php

extract($_POST);


$sendto = "[email protected]";

$fromemail = "[email protected]";


mail($sendto,$subject,$text,"From: $name <$fromemail>");

echo "fullført";

?>

 

 

Jeg kunne tenkt meg å legge til en funksjon som gjorde at man kunne velge blant noen forskjellige mailadresser å sende mailen til med avmerkningsbokser, og som gjorde det mulig å sende til flere samtidig. Hvordan gjør jeg dette? Helst slik at man da får alle opp som mottaker i samme mail, sånn at alle som mottar mailen kan se hvem andre som har fått den også. Hvis det er vanskelig, så gjør det ikkenoe om det blir sendt en mail til hver istedenfor.

 

Her ligger scripet

 

Mvh: Lars Tronrud Dahl

Endret av larstdahl
Lenke til kommentar
Videoannonse
Annonse

Var kanskje litt uklart i min første post, men det jeg lurer på er hvordan jeg får til sånne avmerkningsbokser i skjemaet. Det med selve mail-delen skjønte jeg også, men vet bare ikke helt hvordan...

 

Håper noen kan hjelpe meg litt på vei her.

 

Ps: er ingen master i php akkuratt :blush:

Lenke til kommentar

Her er noen simple eksempler. vet ikke om jeg har forstått deg riktig, men du kan feks gjøre slik for å få til avmerkingsbokser:

 

<input type="radio" name="option1" value="mail_meg"> Mail meg<br>
<input type="radio" name="option2" value="mail_alle" checked> Mail Alle<br>

 

(her har jeg brukt radio for at kun en box skal være valgt, men du kan bytte ut med checkbox hvis du vil ha mulighet for å kunne hake av flere bokser samtidig).

 

Jeg ser av at du bruker form med post. da kan du gjøre slik for å hente ut informasjonen i simple1.php:

 

if ($_POST[mailaddy] == "mail_meg") $adresse = "min_adresse";
else $adresse = "alles_adresser"

 

her kan du også legge til flere if-setninger avhengig av hvor mange buttons du har...

Lenke til kommentar
gjør det noe om det blir to kommaer mellom mottakerne? slik:
mail("[email protected]",,"[email protected]","subject","teksten")
vet dte mangler noe i mail-funksjonen.

 

Eller om det står et komma før alle mottakerne?

 

en ting til, hvios jeg ikke skal ha noe på else-delen i en if-setning, kan jeg da ha else{}; ???

holder med et komma mellom mottagerne. hvis du ikke "trenger" å ha med else-setninger dropper du den og tar med bare en if-setning...

Lenke til kommentar

Tja... å begynne med mange if forutsettninger for å sende ut en mail blir litt mye jobb - bruk heller en array.

 

Legg til alle mottakere på denne måten i skjemaet:

<input type='checkbox' name='boks[]' value='[email protected]' />

<input type='checkbox' name='boks[]' value='[email protected]' />

<input type='checkbox' name='boks[]' value='[email protected]' />

<input type='checkbox' name='boks[]' value='[email protected]' />

 

I scriptet så bruker du bare foreach() for å sende ut mail:

foreach($_POST['boks'] = $to)

{

mail($to, "Hei", "Hei på deg, hvordan har du det i dag?");

}

 

Keep it short and simple!

Lenke til kommentar
Men jeg spør igjen, vil det funke å sette $sendto .= "[email protected]"; hvis variablen $sendto er tom?

Hva mener du med det?

Skal du da sende mail til [email protected]?

 

Hvis du virkelig vil at alle skal se adressene til de andre så gjør du slik i scriptet:

 

$to = implode(",",$_POST['boks']);

mail($to, $emne, $melding);

 

Mens du beholder skjemate jeg skrev over.

Endret av ????????
Lenke til kommentar
  • 3 uker senere...

ok jeg tar opp denne posten igjen jeg.

Jeg prøvde følgende

foreach($_POST['boks'] = $to)

greiene men det går ikke.

Her er skriptet:

<?php 

foreach($_POST['boks'] = $to)
{
mail($to, "ja ett eller annet", "Mail fra form");
}
 "Navn: $avsender\nemaile: $email\n 
 Email: $email\nmelding: $melding")==true) 
{ 
 echo "Takk for at du sendte mailen, $avsender. Tilbake til <a href="http://xxxxxx.no"> "; 
} 
else 
{ 
 echo "Fikk ikke sendt mailen. Beklager."; 
} 
?>

 

vil dere se formen også hehe:

<html>xxxxxx kontaksenter.</html>
<body>

<form action="sendmail.php" method="post"> 

<br>Navn <input type="text" name="avsender"> 


<br>Email <input type="text" name="email"><br>
<br> Hvor skal mailen sendes:<br>
<br>Salg:
<br><input type='checkbox' name='boks[]' value='salg@xxxxxxxx' /><br>
Webmaster:
<br><input type='checkbox' name='boks[]' value='audun@xxxxxxx' /><br>
Drift:
<br><input type='checkbox' name='boks[]' value='nils@xxxxxxxx' /><br>
Regnskap:
<br><input type='checkbox' name='boks[]' value='tilbud@xxxxxxx' /><br>

<br>Melding: 
<br><textarea name="melding" cols="20" rows="9"> 
</textarea> 
<br>
<br><input type="Submit" value="Send"> 
</form> 

 

Sikkert etteller annet jeg har gjort...

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...