22. februar 2005 - 23:08
Der er
34 kommentarer og 1 løsning
hvad er der galdt med min mail sender til et nyhedsbrev
mit script <?php $sql_host = "localhost"; $sql_user = "****"; $sql_passwd = "*****"; $db = "****"; $afsendernavn = "webmaster"; $afsendermail = "webmaster@****.dk"; $mailemne = "Nyhedsbrev fra Webmaster"; mysql_connect($sql_host,$sql_user,$sql_passwd); mysql_select_db($db); $resgalpics = mysql_query("SELECT count(*) FROM mailliste"); $rowgalpics = mysql_result($resgalpics,0,0); if($sendt == "") { echo "<p> </p> <p> </p> <p> </p> <p align=\"center\"> <a href=\"sendmail.php?sendt=on\" onclick=\"return confirm('Du du sikker på du vil sende NU?');\"> <font color=\"#00FFFF\" size=\"5\" face=\"Arial, Helvetica, sans-serif\"><strong><font color=\"#006600\">Send News</font></strong></font></a><br><br><br>Der er $rowgalpics som får mailen</p>"; } else { error_reporting(63); include('class_html_mime_mail.inc'); define('CRLF', "\r\n", TRUE); $mail = new html_mime_mail('X-Mailer: Html Mime Mail Class'); $text = $mail->get_file('nyhedsbrev.txt'); $html = $mail->get_file('nyhedsbrev.html'); $mail->add_html($html, $text, './'); $mail->set_charset('iso-8859-1'); $mail->build_message(); $res = mysql_query("SELECT * FROM mailliste"); while ($row = mysql_fetch_array($res)) { set_time_limit(0); // Timelimit 2 seconds for sending each mail $mail->send($row['mail'], $row['mail'], '$domainnavn', '$afsendermail', '$mailemne '); sleep(1); flush(); } set_time_limit(0); // Timelimit to finish script echo "<p> </p> <p> </p> <p> </p> <p align=\"center\"> <font color=\"#00FFFF\" size=\"5\" face=\"Arial, Helvetica, sans-serif\"><strong><font color=\"#006600\"> News er nu sendt!</font></strong></font></a></p>"; } ?>
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
22. februar 2005 - 23:15
#1
Det er register_globals = Off (igen).
22. februar 2005 - 23:20
#2
sikkert det er fra samme eksempel i en bog om php
er bare ikke den store haj i det endnu
men dette script er det der skal hente email fra mysqlog sende det men den skriver ikke
News er nu sendt!
som står sidst i scriptet men den kan læse 1 bruger af nyhedsbrevet den jeg fik oprettet
i index.php i spørgsmål
http://www.eksperten.dk/spm/593700
22. februar 2005 - 23:20
#3
22. februar 2005 - 23:24
#4
Ret: if($sendt == "") til: if(!isset($_GET['sendt']) || $_GET['sendt'] == "")
22. februar 2005 - 23:26
#5
Hvorvidt der er fejl i resten af koden er svært at afgøre, da du bruger denne class: include('class_html_mime_mail.inc'); (som vi ikke kan se).
22. februar 2005 - 23:26
#6
to fejl Warning: set_time_limit(): Cannot set time limit in safe mode in /customers/lkongen.dk/lkongen.dk/httpd.www/newsletter/sendmail.php on line 149 Warning: set_time_limit(): Cannot set time limit in safe mode in /customers/lkongen.dk/lkongen.dk/httpd.www/newsletter/sendmail.php on line 154 linie 149 - set_time_limit(0); // Timelimit 2 seconds for sending each mail linie 154 - set_time_limit(0); // Timelimit to finish script
22. februar 2005 - 23:27
#7
men mailen kommer dog og den skriver News er nu sendt!
22. februar 2005 - 23:30
#8
Du kan ikke sætte set_time_limit i safe_mode, så du må fjerne de 2: set_time_limit(0);
22. februar 2005 - 23:30
#9
ok men hvad skal man så bruge dem til
22. februar 2005 - 23:31
#10
Ligger de 2 nyhedsbreve, 'nyhedsbrev.txt' og 'nyhedsbrev.html', i den samme mappe som scriptet?
22. februar 2005 - 23:32
#11
hvordan i dette script for man eventuelt vist dem der er tilmeldt inden man sender det udover man kun kanse hvor mange der er kan man lave en funktion hvor man kan klikke dem af man vil sende til bare en ide
22. februar 2005 - 23:33
#12
jep
22. februar 2005 - 23:46
#13
$mail->send($row['mail'], $row['mail'], '$domainnavn', '$afsendermail', '$mailemne '); skal nok rettes til: $mail->send($row['mail'], $row['mail'], '$afsendernavn', '$afsendermail', '$mailemne');
22. februar 2005 - 23:47
#14
Ellers kan jeg ikke rigtigt se nogen fejl, men prøv at rette: error_reporting(63); include('class_html_mime_mail.inc'); til: error_reporting(E_ALL); require('class_html_mime_mail.inc');
22. februar 2005 - 23:50
#15
hmm: error_reporting(63); = error_reporting(E_ALL); så det er ok ;O)
22. februar 2005 - 23:53
#16
den sidste linie du skrev gav følgende fejl Parse error: parse error, unexpected '=' in /customers/lkongen.dk/lkongen.dk/httpd.www/newsletter/sendmail.php on line 121
22. februar 2005 - 23:55
#17
istedet for antal tilmeldte kan man så ikke få den til at skrive hvem der er tilmeldt for den siger 2 forskellige men jeg får kun en mail ikke to kan man ikke lave en funktionen hvor man skal hakke dem af man ønsker at sende nyhedsbrevet til bare en ide
22. februar 2005 - 23:55
#18
Har du nogle billeder i 'nyhedsbrev.html' og ligger billederne i samme mappe som scriptet? Øh, ja den skulle du heller ikke bruge. Kun: error_reporting(E_ALL); require('class_html_mime_mail.inc');
23. februar 2005 - 00:00
#19
ok ja billederne ligger i samme mappe de kommer også med på den ene mail jeg for manjeg har tilmeldt to forskellige adresser for at test om den tog dem alle men det gør den ikke ligeledes stor der ikke afsender denne linie $mail->send($row['mail'], $row['mail'], '$afsendernavn', '$afsendermail', '$mailemne'); på mailen fra: $afsendernavn [$afsendermail@mo1.b-one.net] emne: $mailemne modtager: min adresse
23. februar 2005 - 00:02
#20
Skal selvf. være: $mail->send($row['mail'], $row['mail'], $afsendernavn, $afsendermail, $mailemne);
23. februar 2005 - 00:03
#21
men ændre man linien fra $mail->send($row['mail'], $row['mail'], '$afsendernavn', '$afsendermail', '$mailemne'); til $mail->send($row['mail'], $row['mail'], 'webmaster', 'webmaster@*****.dk', 'nyhedsbrev fra webmaster'); kommer denne mail fra: webmaster@*****.dk [$afsendermail@mo1.b-one.net] emne: nyhedsbrev fra webmaster modtager: min adresse men det skulle jo være rigtigt i følge denne linie længere oppe i scriptet $afsendernavn = "webmaster"; $afsendermail = "webmaster@****.dk"; $mailemne = "Nyhedsbrev fra Webmaster";
23. februar 2005 - 00:04
#22
Prøv at rette løkken til: while ($row = mysql_fetch_array($res)) { echo "Modtager: $row[mail]<br />"; $mail->send($row['mail'], $row['mail'], '$domainnavn', '$afsendermail', '$mailemne '); sleep(1); flush(); }
23. februar 2005 - 00:05
#23
Hov: while ($row = mysql_fetch_array($res)) { echo "Modtager: $row[mail]<br />"; $mail->send($row['mail'], $row['mail'], $afsendernavn, $afsendermail, $mailemne); sleep(1); flush(); }
23. februar 2005 - 00:07
#24
Eller måske simpelthen: while ($row = mysql_fetch_array($res)) { echo "Modtager: $row[mail]<br />"; $mail->send($row['mail'], $row['mail'], $afsendernavn, $afsendermail, $mailemne); }
23. februar 2005 - 00:09
#25
ny sender den alle to og skriver hvem den har sendt til efter den skriver news sendt
23. februar 2005 - 00:13
#26
Så lykkedes det altså ;o)
23. februar 2005 - 00:16
#27
jep den linie her echo "Modtager: $row[mail]<br />"; kan man bygge den inde i dette her så man kan se antal samt modtager inden man sender den if($sendt == "") { echo "<p> </p> <p> </p> <p> </p> <p align=\"center\"> <a href=\"sendmail.php?sendt=on\" onclick=\"return confirm('Du du sikker på du vil sende NU?');\"> <font color=\"#00FFFF\" size=\"5\" face=\"Arial, Helvetica, sans-serif\"><strong><font color=\"#006600\">Send News</font></strong></font></a><br><br><br>Der er $rowgalpics som får mailen</p>"; }
23. februar 2005 - 00:18
#28
eventuelt if($sendt == "") { echo "<p> </p> echo "Modtager: $row[mail]<br />"; <p> </p> <p> </p> <p align=\"center\"> <a href=\"sendmail.php?sendt=on\" onclick=\"return confirm('Du du sikker på du vil sende NU?');\"> <font color=\"#00FFFF\" size=\"5\" face=\"Arial, Helvetica, sans-serif\"><strong><font color=\"#006600\">Send News</font></strong></font></a><br><br><br>Der er $rowgalpics som får mailen</p>"; } eller kommer det ikke til at virke
23. februar 2005 - 00:26
#29
Jo, det du vil opnå er, som jeg forstår det, at få en liste med de tilmeldte mailadresser som du kan krydse af. I så fald skal du lave en lille form til formålet.
23. februar 2005 - 00:31
#30
ok men hvordan for man dem til at stå der sammen med antal inden man trykker send har prøvet denne her if($sendt == "") { echo "<p> </p> <p> </p> <p> </p> <p align=\"center\"> <a href=\"sendmail.php?sendt=on\" onclick=\"return confirm('Du du sikker på du vil sende NU?');\"> <font color=\"#00FFFF\" size=\"5\" face=\"Arial, Helvetica, sans-serif\"><strong><font color=\"#006600\">Send News</font></strong></font></a><br><br><br>Der er $rowgalpics som får mailen<br><br>Modtager: $row[mail]</p>"; } men virker ikke for den trækker det sikkert ikke til det har jeg prøvet : $query = mysql_query("SELECT mail FROM mailliste") while ($row = mysql_fetch_assoc($query)) { men det virker ikke rigtigt
23. februar 2005 - 00:33
#31
så kommer følgende fejl Parse error: parse error, unexpected T_WHILE in /customers/lkongen.dk/lkongen.dk/httpd.www/newsletter/sendmail.php on line 107 while ($row = mysql_fetch_assoc($query)) {
23. februar 2005 - 00:33
#32
hvordan skal den form se ud er lidt på bar bund her !!!
23. februar 2005 - 00:43
#33
Det skal laves i den her stil: <?php $sql_host = "localhost"; $sql_user = "****"; $sql_passwd = "*****"; $db = "****"; $afsendernavn = "webmaster"; $afsendermail = "webmaster@****.dk"; $mailemne = "Nyhedsbrev fra Webmaster"; mysql_connect($sql_host,$sql_user,$sql_passwd); mysql_select_db($db); $res = mysql_query("SELECT * FROM mailliste"); $check = ''; while ($row = mysql_fetch_assoc($res)) { $check .= "<input type='checkbox' name='modtagere[]' value='$row[mail]' /> $row[mail]<br />\n"; } if(!isset($_POST['submit'])) { echo "<p> </p> <p align=\"center\"> <form action='sendmail.php' method='post' onsubmit=\"return confirm('Du du sikker på du vil sende NU?');\"> $check <input type='submit' name='submit' value='Send News' /> </form>"; } else { error_reporting(63); include('class_html_mime_mail.inc'); define('CRLF', "\r\n", TRUE); $mail = new html_mime_mail('X-Mailer: Html Mime Mail Class'); $text = $mail->get_file('nyhedsbrev.txt'); $html = $mail->get_file('nyhedsbrev.html'); $mail->add_html($html, $text, './'); $mail->set_charset('iso-8859-1'); $mail->build_message(); foreach ($_POST['modtagere'] as $to) { $mail->send($to, $to, $afsendernavn, $afsendermail, $mailemne); } echo "<p> </p> <p> </p> <p> </p> <p align=\"center\"> <font color=\"#00FFFF\" size=\"5\" face=\"Arial, Helvetica, sans-serif\"><strong><font color=\"#006600\"> News er nu sendt!</font></strong></font></a></p>"; } ?>
23. februar 2005 - 01:21
#34
kanont det ser godt ud samler du point så send et svar eller mange gange tak for hjælpen her til aften
23. februar 2005 - 01:24
#35
Velbekommen
Vi tilbyder markedets bedste kurser inden for webudvikling