16. april 2003 - 14:37
Der er
53 kommentarer og 1 løsning
Nemt spørgsmål: Mail i php
Hej. Jeg er i gang med at lave et nyhedsbrevs script, men er stødt ind i et problem. Hvordan for jeg sendt til alle e-mail adresserne??? Jeg har alle mail adresserne i en database (mysql) Bunden af send nyhedsbrev filen: <?php if(isset($_REQUEST['submit'])) { $conn = mysql_connect("sql01.starthotel.dk", "*", "*"); mysql_select_db("*"); $resultat = mysql_query('select * from nyhedsbrev'); while ($raekke = mysql_fetch_array($resultat)) { $adresser = $raekke['mail']; $tekst = $_REQUEST['tekst']; } } mail("$adresser","Nyhedsbrev fra Clint-Mathis","$tekst","From: Clint-Mathis <trylle-mathis@tdcadsl.dk.dk>\nContent-type: text/html"); ?>
Annonceindlæg fra HP
16. april 2003 - 14:40
#1
Du laver , imellem alle de email adresser altsaa $adresser = $raekke['mail'],;
16. april 2003 - 14:41
#2
Prøver ;-)
16. april 2003 - 14:41
#3
$resultat = mysql_query('select * from nyhedsbrev'); while ($raekke = mysql_fetch_array($resultat)) { mail("$raekke[mail]", "Nyhedsbrev fra Clint-Mathis", "$_REQUEST[tekst]", "From: Clint-Mathis <trylle-mathis@tdcadsl.dk.dk>\nContent-type: text/html"); } ? }
16. april 2003 - 14:41
#4
ok =)
16. april 2003 - 14:42
#5
svar.... Du laver , imellem alle de email adresser altsaa $adresser = $raekke['mail'],;
16. april 2003 - 14:42
#6
den sidste } ved jeg ikke lige hvor kom fra... :)
16. april 2003 - 14:42
#7
svar....
16. april 2003 - 14:43
#8
Den syntes ikke at der skal være noget komma: Parse error: parse error, unexpected ',' in /home/web/clint-mathis/clint-mathis.starthotel.dk/cm/test/admin.php on line 73
16. april 2003 - 14:43
#9
Hmmm...
16. april 2003 - 14:45
#10
der er da nogle fejl der, er der ikk?? Lige nu vil den da sende bare man går ind og besøger siden.. Skal mail() ikke for det første ind i tuborgen?? Altså } mail("$adresser","Nyhedsbrev fra Clint-Mathis","$tekst","From: Clint-Mathis <trylle-mathis@tdcadsl.dk.dk>\nContent-type: text/html"); } ?? Og hvor kommer $tekst fra?? Står den ud for hvert af navnene i databasen eller hva?? For så skal den også blive kaldt med $raekke.. Eller kommer den som du har skrevet ind udefra?? For så kan du lige så godt tage den uden for tuborgen.. så skal den ikke stå og ændre variablen til det samme hver gang.. altså : } $tekst = $_REQUEST['tekst']; Og det med mailadresserne.. Der kna du bare skifte din $adresser = $raekke['mail']; ud med en : $adresser .= $raekke['mail'];
16. april 2003 - 14:45
#11
16. april 2003 - 14:46
#12
jeg ved ikke helt hvordan exutables forslag skal virke, men hvis du vil have komma med hvis jeg foreslå at skrive $adresser = "$raekke['mail'], "; i stedet....
16. april 2003 - 14:47
#13
hov.. selvfølgelig $adresser .= "," . $raekke['mail']; og så skal du have fundet ud af noget så den ikke kommer på den første.. så lav evt en if(!isset($taeller) { $taeller = 1; $adresser = $raekke['mail']; } else { $taeller = $taeller+1; $adresser .= "," . $raekke['mail']; }
16. april 2003 - 14:48
#14
er det kun mig der synes det er bøvlet og rodet at smide alle emailadresserne ind i en variabel ?
16. april 2003 - 14:49
#15
shady->>>>> Hvad kunne være nemmere???
16. april 2003 - 14:49
#16
<?php if(isset($_REQUEST['submit'])) { $conn = mysql_connect("sql01.starthotel.dk", "*", "*"); mysql_select_db("*"); $resultat = mysql_query('select * from nyhedsbrev'); while ($raekke = mysql_fetch_array($resultat)) { if(!isset($taeller) { $taeller = 1; $adresser = $raekke['mail']; } else { $taeller = $taeller+1; $adresser .= "," . $raekke['mail']; } $adresser = $raekke['mail']; } $tekst = $_REQUEST['tekst']; mail("$adresser","Nyhedsbrev fra Clint-Mathis","$tekst","From: Clint-Mathis <trylle-mathis@tdcadsl.dk.dk>\nContent-type: text/html"); } ?> bare for lige at gøre det lidt overskueligt.. :) Nu kan du så også tælle hvor mange du har sendt mailen til.. og evt printe det ud med $taeller lige efter mail() kommandoen..
16. april 2003 - 14:51
#17
hov.. selvfølgelig.. $adresser .= ";" . $raekke['mail']; men tror ider er nogle servere der er lige glade..
16. april 2003 - 14:51
#18
Det her er så nemt og ligetil! $resultat = mysql_query('select * from nyhedsbrev'); while ($raekke = mysql_fetch_array($resultat)) { mail("$raekke[mail]", "Nyhedsbrev fra Clint-Mathis", "$_REQUEST[tekst]", "From: Clint-Mathis <trylle-mathis@tdcadsl.dk.dk>\nContent-type: text/html"); }
16. april 2003 - 14:52
#19
nicklasb -> det der er da noget sær rodet noget når du ligeså godt kan få din while løkke til at sende for hver række der er i databasen... men det er nok bare min mening...
16. april 2003 - 14:52
#20
shady.. ved ikke.. men nogle servere stopper vidst efter 10 samtidige kald.. og ofte udfører php mailkommandoen for hurtig til at serveren får disconectet igen.. ved ikke om dette gør sig gældende her.. men har oplevet det før.. :)
16. april 2003 - 14:54
#21
Parse error: parse error, unexpected $ in /home/web/clint-mathis/clint-mathis.starthotel.dk/cm/test/admin.php on line 78 Der er en fejl et sted i shadys: kl. 14:51
16. april 2003 - 14:54
#22
nicklasb -> Jeg siger ikke du ikke har oplevet det, men jeg har aldrig hørt det før, men det kan da godt passe....
16. april 2003 - 14:55
#23
hvad er linie 78 ?
16. april 2003 - 14:55
#24
Jeg tror at det er kommaet igen ;-)
16. april 2003 - 14:56
#25
komma ??
16. april 2003 - 14:56
#26
Tælle, tælle, tælle. Det er bunden: </html>
16. april 2003 - 14:57
#27
mail("$raekke[mail]"HER VAR DER ET KOMMA!!!! "Nyhedsbrev fra Clint-Mathis", "$_REQUEST[tekst]", "From: Clint-Mathis <trylle-mathis@tdcadsl.dk.dk>\nContent-type: text/html"); }
16. april 2003 - 14:57
#28
Hvis det er mailfunktionen så kunne det være fordi man skal skrive mail($raekke[mail], "Nyhedsbrev fra Clint-Mathis", $_REQUEST[tekst], "From: Clint-Mathis <trylle-mathis@tdcadsl.dk.dk>\nContent-type: text/html");
16. april 2003 - 14:57
#29
nej.. siger jeg skam heller ikke.. :) Ved heller ikke hvor mange mails han skal sende ud.. men der er andre der har haft samme problem.. :
http://www.eksperten.dk/spm/338170 bare tag et kig rudt på siden.. :)
16. april 2003 - 14:58
#30
Der skal være det komma, ellers er det en adskillelsesfejl...
16. april 2003 - 14:58
#31
Uås, nej, jeg så forkert!!!
16. april 2003 - 14:59
#32
nicklasb -> der kan man bare se... Hvis det nu er tilfældet hos ham, så kan jeg godt se det smarte i at bruge dit script....
16. april 2003 - 15:01
#33
Ok, hvad skal jeg så bruge af kode???
16. april 2003 - 15:01
#34
ja.. så kommer den igen.. hvorfor ikke bare bruge det bedste fra startet.. Lige pludselig går det hurtigt.. og han får en 50 brugere.. (nyhedslæsere).. og så får det halve af dem aldrig deres mails.. har du overhovedet ville prøve min??
16. april 2003 - 15:01
#35
Altså, begge koder er gode, men hvis din server ikke tillader gentagelse af koderne, så tag nicklasbs kode...
16. april 2003 - 15:02
#36
nicklasb -> I get the idea... :) Havde bare aldrig hørt om det... :)
16. april 2003 - 15:04
#37
helt fint.. var nu også mere rettet mod mathiash.. altså det med at prøve det der kommer i stedet for at følge en.. :)
16. april 2003 - 15:08
#38
nichlasb´s script: Parse error: parse error, unexpected '{' in /home/web/clint-mathis/clint-mathis.starthotel.dk/cm/test/admin.php on line 73 Linie 73: if(!isset($taeller) { Resten: $taeller = 1; $adresser = $raekke['mail']; } else { $taeller = $taeller+1; $adresser .= "," . $raekke['mail']; } $adresser = $raekke['mail']; { $tekst = $_REQUEST['tekst']; mail("$adresser","Nyhedsbrev fra Clint-Mathis","$tekst","From: Clint-Mathis <trylle-mathis@tdcadsl.dk>\nContent-type: text/html"); } ?> </body> </html>
16. april 2003 - 15:11
#39
if(!isset($taeller)) {
16. april 2003 - 15:13
#40
Ok, så: Parse error: parse error, unexpected $ in /home/web/clint-mathis/clint-mathis.starthotel.dk/cm/test/admin.php on line 89 Linie 89: Bunden: </html>
16. april 2003 - 15:14
#41
ok.. du har lavet noget andet lort, et eller andet sted.. (vil jeg tro) Post lige hele siden..
16. april 2003 - 15:15
#42
hov.. $adresser = $raekke['mail']; efter din if løkke skal også lige væk.. ellers bliver resultatet bare overskrevet..
16. april 2003 - 15:16
#43
Ok, admin.php: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>Clint-Mathis</title> <link rel="stylesheet" type="text/css" href="../style.css"> <style> fieldset { border:2px groove rgb(0,0,0); width:400px; padding: 15px; } legend { letter-spacing: 3px; color:rgb(0,0,0); font-weight: bold; } label { width:150px; vertical-align:top; color:rgb(0,0,0); float:left; } div { margin-top:15px; } #t1, #t2, #t3, #t4, #t5 { border:1px inset rgb(0,0,0); width: 300px; background:rgb(255,255,255); } #t5 { height:80px; overflow:auto; } #submit { background: rgb(255,255,255) no-repeat 0% 50%; border:2px outset rgb(0,0,0); width:150px; } </style> </head> <body background="../bg2.gif"> <form action="admin.php" method="post"> <p> <fieldset> <legend><h3>Oplysninger</h3></legend> <div> <label for='t1'>Tekst:</label><textarea name="tekst" id="t1" rows="10" cols="100"></textarea><br><br> <input type='submit' value='Send' name="submit"> </div> </fieldset> </form> <a href="admin2.php">Se mailadresser</a> </p> <?php if(isset($_REQUEST['submit'])) { $conn = mysql_connect("sql01.starthotel.dk", "*", "*"); mysql_select_db("*"); $resultat = mysql_query('select * from nyhedsbrev'); while ($raekke = mysql_fetch_array($resultat)) { if(!isset($taeller)) { $taeller = 1; $adresser = $raekke['mail']; } else { $taeller = $taeller+1; $adresser .= "," . $raekke['mail']; } $adresser = $raekke['mail']; { $tekst = $_REQUEST['tekst']; mail("$adresser","Nyhedsbrev fra Clint-Mathis","$tekst","From: Clint-Mathis <trylle-mathis@tdcadsl.dk>\nContent-type: text/html"); } ?> </body> </html>
16. april 2003 - 15:20
#44
prøv : <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>Clint-Mathis</title> <link rel="stylesheet" type="text/css" href="../style.css"> <style> fieldset { border:2px groove rgb(0,0,0); width:400px; padding: 15px; } legend { letter-spacing: 3px; color:rgb(0,0,0); font-weight: bold; } label { width:150px; vertical-align:top; color:rgb(0,0,0); float:left; } div { margin-top:15px; } #t1, #t2, #t3, #t4, #t5 { border:1px inset rgb(0,0,0); width: 300px; background:rgb(255,255,255); } #t5 { height:80px; overflow:auto; } #submit { background: rgb(255,255,255) no-repeat 0% 50%; border:2px outset rgb(0,0,0); width:150px; } </style> </head> <body background="../bg2.gif"> <form action="admin.php" method="post"> <p> <fieldset> <legend><h3>Oplysninger</h3></legend> <div> <label for='t1'>Tekst:</label><textarea name="tekst" id="t1" rows="10" cols="100"></textarea><br><br> <input type='submit' value='Send' name="submit"> </div> </fieldset> </form> <a href="admin2.php">Se mailadresser</a> </p> <?php if(isset($_POST['submit'])) { $conn = mysql_connect("sql01.starthotel.dk", "*", "*"); mysql_select_db("*"); $resultat = mysql_query('select * from nyhedsbrev'); while ($raekke = mysql_fetch_array($resultat)) { if(!isset($taeller)) { $taeller = 1; $adresser = $raekke['mail']; } else { $taeller = $taeller+1; $adresser .= "," . $raekke['mail']; } { $tekst = $_POST['tekst']; $subject = "Nyhedsbrev fra Clint-Mathis"; $headers = "Content-Type: text/html; charset=iso-8859-1\n"; $headers .= "From: Clint-Mathis <trylle-mathis@tdcadsl.dk>"; mail($adresser, $subject, $tekst, $headers); echo "Mail sendt!!"; } ?> </body> </html>
16. april 2003 - 15:21
#45
Hvad med en visning af de mail-adresser du sender til?
altså, vis en checkbox for hver mail, som pr. default er "checked", så vil du osse kunne pille ugyldige mail-adresser fra?
http://www.sukos.dk/php/mailsender/mail.php
16. april 2003 - 15:21
#46
Har fjernet: $adresser = $raekke['mail']; virker stadig ikke :-(
16. april 2003 - 15:22
#47
hov.. det er en tuborg der er kommet forkert ind.. :) <?php if(isset($_POST['submit'])) { $conn = mysql_connect("sql01.starthotel.dk", "*", "*"); mysql_select_db("*"); $resultat = mysql_query('select * from nyhedsbrev'); while ($raekke = mysql_fetch_array($resultat)) { if(!isset($taeller)) { $taeller = 1; $adresser = $raekke['mail']; } else { $taeller = $taeller+1; $adresser .= "," . $raekke['mail']; } $tekst = $_POST['tekst']; $subject = "Nyhedsbrev fra Clint-Mathis"; $headers = "Content-Type: text/html; charset=iso-8859-1\n"; $headers .= "From: Clint-Mathis <trylle-mathis@tdcadsl.dk>"; mail($adresser, $subject, $tekst, $headers); echo "Mail sendt!!"; } ?>
16. april 2003 - 15:23
#48
hov.. <?php if(isset($_POST['submit'])) { $conn = mysql_connect("sql01.starthotel.dk", "*", "*"); mysql_select_db("*"); $resultat = mysql_query('select * from nyhedsbrev'); while ($raekke = mysql_fetch_array($resultat)) { if(!isset($taeller)) { $taeller = 1; $adresser = $raekke['mail']; } else { $taeller = $taeller+1; $adresser .= "," . $raekke['mail']; } } $tekst = $_POST['tekst']; $subject = "Nyhedsbrev fra Clint-Mathis"; $headers = "Content-Type: text/html; charset=iso-8859-1\n"; $headers .= "From: Clint-Mathis <trylle-mathis@tdcadsl.dk>"; mail($adresser, $subject, $tekst, $headers); echo "Mail sendt!!"; } ?> sorry alle de forkerte svar.. ;) (jeg tror jeg er lidt træt nu.. )
16. april 2003 - 15:23
#49
>Mathiash Nu kan du ikke altid regne med browsrens angivelse af hvor der er fejl. Fejlen kan i virkeligheden sagtens forekomme før, men bliver først "opdaget" på den linie det pågældende skal bruges. Så fejl på en linie er faktisk bare en angivelse af hvor fortolkningen går galt. IKKE nødvendigvis hvor den egentlige fejl ligger....!!! Bare en lille side kommentar, så du ikke stiger dig blind på en specifik linie, fordi browseren siger det :)
16. april 2003 - 15:25
#50
nichlasb->> Undskyld en det virker stadig ikke :-(
16. april 2003 - 15:27
#51
Tror i at det er fordi at der et to headers??? $headers = "Content-Type: text/html; charset=iso-8859-1\n"; $headers .= "From: Clint-Mathis <trylle-mathis@tdcadsl.dk>"; mail($adresser, $subject, $tekst, $headers);
16. april 2003 - 15:28
#52
ups /\ | | en det= det
16. april 2003 - 15:29
#53
der er noget du har overset da du rettede..
har lige uploaded scriptet som det er ind til videre..
http://www.bornstein.dk/mail.php har ikke lige testet om den kan sende.. men prøv:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Clint-Mathis</title>
<link rel="stylesheet" type="text/css" href="../style.css">
<style>
fieldset
{
border:2px groove rgb(0,0,0);
width:400px;
padding: 15px;
}
legend
{
letter-spacing: 3px;
color:rgb(0,0,0);
font-weight: bold;
}
label
{
width:150px;
vertical-align:top;
color:rgb(0,0,0);
float:left;
}
div
{
margin-top:15px;
}
#t1, #t2, #t3, #t4, #t5
{
border:1px inset rgb(0,0,0);
width: 300px;
background:rgb(255,255,255);
}
#t5 {
height:80px;
overflow:auto;
}
#submit
{
background: rgb(255,255,255) no-repeat 0% 50%;
border:2px outset rgb(0,0,0);
width:150px;
}
</style>
</head>
<body background="../bg2.gif">
<form action="admin.php" method="post">
<p>
<fieldset>
<legend><h3>Oplysninger</h3></legend>
<div>
<label for='t1'>Tekst:</label><textarea name="tekst" id="t1" rows="10" cols="100"></textarea><br><br>
<input type='submit' value='Send' name="submit">
</div>
</fieldset>
</form>
<a href="admin2.php">Se mailadresser</a>
</p>
<?php
if(isset($_POST['submit'])) {
$conn = mysql_connect("sql01.starthotel.dk", "*", "*");
mysql_select_db("*");
$resultat = mysql_query('select * from nyhedsbrev');
while ($raekke = mysql_fetch_array($resultat)) {
if(!isset($taeller)) {
$taeller = 1;
$adresser = $raekke['mail'];
}
else { $taeller = $taeller+1;
$adresser .= "," . $raekke['mail'];
}
}
$tekst = $_POST['tekst'];
$subject = "Nyhedsbrev fra Clint-Mathis";
$headers = "Content-Type: text/html; charset=iso-8859-1\n";
$headers .= "From: Clint-Mathis <trylle-mathis@tdcadsl.dk>";
mail($adresser, $subject, $tekst, $headers);
echo "Mail sendt!!";
}
?>
</body>
</html>
16. april 2003 - 15:31
#54
YIRHHHHH JUBIIIII DET VIRKER!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Vi tilbyder markedets bedste kurser inden for webudvikling