21. december 2004 - 20:58
Der er
71 kommentarer og 1 løsning
Online newsletter mailer vi web10
Hej eksperter.
Jeg er kunde hos web10 og har etunix-hotel.
Jeg skal sende nyhedsmail ud fra min side og har fundet et script som skriver til en txt-fil og til dette script hører også en mailer med.
Koden til mailer.php er:
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd"> <html>
<head>
<title>Udsend mails</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div id="main">
<h1>Udsend mails</h1>
Mailen sendes som Plain Text og BCC (Blind Carbon Copy).<br><br>
<form method="post" action="mailer.php">
<input type="hidden" name="send" value="1">
Navn: <input type="text" name="name" style="width: 120px">
Email: <input type="text" name="email" style="width: 120px"><br>
Emne: <input type="text" name="emne" style="width: 287px"><br>
<textarea name="message" rows="7" cols="0" style="width: 328px"></textarea><br>
<input type="submit" value="Udfør">
</form>
<?php
if (isset($_POST['send'])) {
echo '<hr>';
$emailadresses = implode(',',file('mails.txt'));
$emailadresses = str_replace("\n","",$emailadresses);
mail('',$_POST['subject'],$_POST['message'],"BCC: $emailadresses\nFrom: $_POST[name] <$_POST[email]>");
echo 'Mailen er blevet sendt!';
}
?>
<hr>
<a href="index.php">Tilmeld/afmeld</a> | <a href="mails.txt">mails.txt</a>
</div>
</body>
</html>
---------------------------------------
Jeg får den også til at skrive "'Mailen er blevet sendt!", men ingen mails kommer i min inbox hos den mail jeg har tilmeldt mig med.
Hvad er der galt???
Mangler web10 komponenter eller er der fejl i scriptet?
Annonceindlæg fra Partnertekst
21. december 2004 - 21:06
#1
Hejsa.
<form method="post" action="mailer.php"> - Hmm, hvor ligger den fil henne? For den skal jo henvise til mailer.php hos web10. Tror at du skal rådføre dig med web10.
Evt.
http://web10.dk/help/faq/windows - måske den der Jmail er sagen?
Mvh
Tmanden
21. december 2004 - 21:13
#2
Tak for det hurtige svar. mailer.php er vidst den jeg skrev koden på før. Og jeg bruger unix ikke win hos web10
21. december 2004 - 21:35
#3
Måske skal du tjekke at filen: 'mails.txt' rent faktisk indeholder en række e-mail adresser (en på hver linje).
21. december 2004 - 21:45
#4
det gør den... sikker
21. december 2004 - 21:54
#5
Jeg har et forslag til en rettelse i php delen: <?php if (isset($_POST['send'])) { echo '<hr>'; $lines = file('mails.txt'); foreach ($lines as $line) $arr[] = trim($line); $emailadresses = implode(',',$arr); mail('',$_POST['subject'],$_POST['message'],"BCC: $emailadresses\nFrom: $_POST[name] <$_POST[email]>"); echo 'Mailen er blevet sendt!'; } ?>
21. december 2004 - 22:11
#6
har ingen betydning:( Jeg har også prøvet et par andre nyhedssystemer, men de reagerede på samme måde. Man får at vide at mailen er sendt, men modtager ingen :(
21. december 2004 - 22:14
#7
vil lige sige alm. php mail() virker fint på web10.
21. december 2004 - 22:23
#8
<?php if (isset($_POST['send'])) { echo '<hr>'; $lines = file('mails.txt'); foreach ($lines as $to) { mail(trim($to),$_POST['subject'],$_POST['message'],"From: $_POST[name] <$_POST[email]>"); } echo 'Mailen er blevet sendt!'; } ?> Er osse en mulighed.
21. december 2004 - 22:30
#9
ingen forskel
21. december 2004 - 22:31
#10
hvis det virker fint på web10 hvad hulan gør jeg så galt???
21. december 2004 - 22:38
#11
I din form bruger du: Emne: <input type="text" name="emne" style="width: 287px"><br> I php delen bruger du: $_POST['subject'] så prøv at rette til: $_POST['emne']
21. december 2004 - 22:44
#12
Du kan jo tjekke om du overhovedet kan få din mail() funktion til at virke med: <?php mail('din@mailadresse.dk','emne','besked'); ?>
21. december 2004 - 22:56
#13
når jeg går ind på main mailer.php som ser således ud:
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd"> <html>
<head>
<title>Udsend mails</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div id="main">
<h1>Udsend mails</h1>
Mailen sendes som Plain Text og BCC (Blind Carbon Copy).<br><br>
<form method="post" action="mailer.php">
<input type="hidden" name="send" value="1">
Navn: <input type="text" name="name" style="width: 120px">
Email: <input type="text" name="email" style="width: 120px"><br>
Emne: <input type="text" name="emne" style="width: 287px"><br>
<textarea name="message" rows="7" cols="0" style="width: 328px"></textarea><br>
<input type="submit" value="Udfør">
</form>
<?php
mail('darkstyler@hotmail.com','emne','besked');
?>
<?php
if (isset($_POST['send'])) {
echo '<hr>';
$lines = file('mails.txt');
foreach ($lines as $to) {
mail(trim($to),$_POST['emne'],$_POST['message'],"From: $_POST[name] <$_POST[email]>");
}
echo 'Mailen er blevet sendt!';
}
?>
<hr>
<a href="index.php">Tilmeld/afmeld</a> | <a href="mails.txt">mails.txt</a>
</div>
</body>
</html>
får jeg en mail pga
<?php
mail('din@mailadresse.dk','emne','besked');
?>
21. december 2004 - 23:11
#14
Scriptet virker fint hos mig og da du godt kan bruge mail(), kan det næsten kun være indholdet af: 'mail.txt' den er gal med. Prøv at indsætte: $lines = file('mails.txt'); var_dump($lines); exit; og se hvad det giver.
21. december 2004 - 23:14
#15
ved ikke helt hvor... Kan du lige paste den færdige mailer.php???
21. december 2004 - 23:18
#16
Bare lav en: 'test.php' med: <?php $lines = file('mails.txt'); var_dump($lines); exit; ?>
21. december 2004 - 23:32
#17
array(1) { [0]=> string(22) "mín@mail.com" }
22. december 2004 - 00:17
#18
Det ser rigtigt ud. Så ved jeg ikke hvad der går galt.
22. december 2004 - 14:00
#19
nej, jeg har heller ingen idé...
22. december 2004 - 14:20
#20
Du kan prøve at sætte: error_reporting(E_ALL); øverst i dit script og se om du får nogen notitser.
22. december 2004 - 14:42
#21
http://rs.kristiank.net/mailer.php der er den...
og kilden er:
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd"> <html>
<head>
<title>Udsend mails</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div id="main">
<h1>Udsend mails</h1>
Mailen sendes som Plain Text og BCC (Blind Carbon Copy).<br><br>
<form method="post" action="mailer.php">
<input type="hidden" name="send" value="1">
Navn: <input type="text" name="name" style="width: 120px">
Email: <input type="text" name="email" style="width: 120px"><br>
Emne: <input type="text" name="emne" style="width: 287px"><br>
<textarea name="message" rows="7" cols="0" style="width: 328px"></textarea><br>
<input type="submit" value="Udfør">
</form>
<?php
error_reporting(E_ALL);
if (isset($_POST['send'])) {
echo '<hr>';
$lines = file('mails.txt');
foreach ($lines as $to) {
mail(trim($to),$_POST['emne'],$_POST['message'],"From: $_POST[name] <$_POST[email]>");
}
echo 'Mailen er blevet sendt!';
}
?>
<hr>
<a href="index.php">Tilmeld/afmeld</a> | <a href="mails.txt">mails.txt</a>
</div>
</body>
</html>
hva er der galt???
22. december 2004 - 15:08
#22
Jeg kan ikke se noget galt. Prøv med denne debug: <?php error_reporting(E_ALL); if (isset($_POST['send'])) { echo '<hr>'; $lines = file('mails.txt'); foreach ($lines as $to) { echo "Til: " . trim($to) . "<br />"; echo "Emne: " . $_POST['emne'] . "<br />"; echo "Message: " . $_POST['message'] . "<br />"; echo "Name: " . $_POST['name'] . "<br />"; echo "E-mail: " . $_POST['email'] . "<br /><br />"; //mail(trim($to),$_POST['emne'],$_POST['message'],"From: $_POST[name] <$_POST[email]>"); } echo 'Mailen er blevet sendt!'; } ?>
22. december 2004 - 15:18
#23
22. december 2004 - 15:21
#24
hvorfor får jeg mon ingen mail???
22. december 2004 - 15:28
#25
det må have noget at gøre med at scriptet sagtens kan hente adresserne fra mails.txt, men ikke kan sende pga fejl der.
22. december 2004 - 15:29
#26
Det dur hvert fald ikke at tilføje en mail adresse, så kommer den bare på samme linje. Men det burde virke med kun en adresse, der ser det fint nok ud. Prøv evt.: <?php error_reporting(E_ALL); if (isset($_POST['send'])) { $sub = $_POST['emne']; $besked = $_POST['message']; $header = "From: $_POST[name] <$_POST[email]>"; echo '<hr>'; $lines = file('mails.txt'); foreach ($lines as $to) { $til = trim($to); mail($til,$sub,$besked,$header); } echo 'Mailen er blevet sendt!'; } ?>
22. december 2004 - 15:34
#27
Og ellers prøv uden headeren for at se om det er den der driller. Altså: mail($til,$sub,$besked);
22. december 2004 - 15:43
#28
det første virkede ikke. Ingen forskel fra før Hvordan gør jeg det andet???
22. december 2004 - 15:47
#29
Du sletter bare: ,$header i mail(), som: 15:34:08.
22. december 2004 - 15:50
#30
sådan? <?php error_reporting(E_ALL); if (isset($_POST['send'])) { $sub = $_POST['emne']; $besked = $_POST['message']; mail($til,$sub,$besked,$header); } echo 'Mailen er blevet sendt!'; } ?>
22. december 2004 - 15:51
#31
Nej, sådan: <?php error_reporting(E_ALL); if (isset($_POST['send'])) { $sub = $_POST['emne']; $besked = $_POST['message']; $header = "From: $_POST[name] <$_POST[email]>"; echo '<hr>'; $lines = file('mails.txt'); foreach ($lines as $to) { $til = trim($to); mail($til,$sub,$besked); } echo 'Mailen er blevet sendt!'; } ?>
22. december 2004 - 15:51
#32
du skal nok få nogen flere points pga. den lange behandlingstid
22. december 2004 - 15:53
#33
Jo jo, men lad os nu se om det vil lykkes ;o)
22. december 2004 - 15:55
#34
<?php
error_reporting(E_ALL);
if (isset($_POST['send'])) {
$sub = $_POST['emne'];
$besked = $_POST['message'];
$header = "From: $_POST[name] <$_POST[email]>";
echo '<hr>';
$lines = file('mails.txt');
foreach ($lines as $to) {
$til = trim($to);
mail($til,$sub,$besked);
}
echo 'Mailen er blevet sendt!';
}
?>
gir
http://rs.kristiank.net/mailer.php
22. december 2004 - 15:59
#35
Der er ingen fejl i ovenstående. Er du sikker på du har copy/pastet det hele (og kun det)?
22. december 2004 - 16:01
#36
I øvrigt er hotmail nok ikke den hurtigste mailserver at teste på. Jeg har været ude for lange ventetider på mails. Har du ikke en anden, som er mere stabil?
22. december 2004 - 16:03
#37
hotmail er ok når jeg fik den "direkte" mail hvor adressen lå i koden med det samme.
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd"> <html>
<head>
<title>Udsend mails</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div id="main">
<h1>Udsend mails</h1>
Mailen sendes som Plain Text og BCC (Blind Carbon Copy).<br><br>
<form method="post" action="mailer.php">
<input type="hidden" name="send" value="1">
Navn: <input type="text" name="name" style="width: 120px">
Email: <input type="text" name="email" style="width: 120px"><br>
Emne: <input type="text" name="emne" style="width: 287px"><br>
<textarea name="message" rows="7" cols="0" style="width: 328px"></textarea><br>
<input type="submit" value="Udfør">
</form>
<?php
error_reporting(E_ALL);
if (isset($_POST['send'])) {
$sub = $_POST['emne'];
$besked = $_POST['message'];
$header = "From: $_POST[name] <$_POST[email]>";
echo '<hr>';
$lines = file('mails.txt');
foreach ($lines as $to) {
$til = trim($to);
mail($til,$sub,$besked);
}
echo 'Mailen er blevet sendt!';
}
?>
<hr>
<a href="index.php">Tilmeld/afmeld</a> | <a href="mails.txt">mails.txt</a>
</div>
</body>
</html>
gir
http://rs.kristiank.net/mailer.php
22. december 2004 - 16:17
#38
hvad nu?
22. december 2004 - 16:25
#39
Får du stadig ingen mails?
22. december 2004 - 16:31
#41
HER er en fejl... Den laver ikke ny linie, men skriver dig 'overni'
22. december 2004 - 16:32
#42
Jamen som jeg skrev til dig tidligere er der et problem med at tilføje sig, da den ikke skifter linje. Prøv selv at tjekke 'mails.txt' ud.
22. december 2004 - 16:32
#43
nemlig...
22. december 2004 - 16:41
#44
jeg ved blot ikke hvad der skal gøres for at få den til at skifte linje Koden når jeg sender er: <p class="indhold"><span class="style1">Nyhedsbrev</span><br> <form method="post" action="index.php"> <input type="hidden" name="send" value="1"> <input type="text" name="email" style="width: 164px;"> <select name="type"><option value="tilmeld">Tilmeld</option><option value="afmeld">Afmeld</option></select><br> <input type="submit" value="Udfør"> </form> <?php if (isset($_POST['send'])) { echo '<div class="hr"></div>'; if (preg_match("/^([\w|\.|\-|_]+)@([\w||\-|_]+)\.([\w|\.|\-|_]+)$/i",$_POST['email'])) { $temp = implode('',file('mails.txt')); $temp = str_replace($_POST['email']."\n","",$temp); $handle = fopen('mails.txt','w'); if ($_POST['type'] == 'tilmeld') { fwrite($handle,$temp.$_POST['email']."\n"); echo 'Emailen blev tilføjet'; } else { fwrite($handle,$temp); echo 'Emailen blev fjernet'; } fclose($handle); } else { echo 'Venligst indtast en korrekt email-adresse!'; } } ?>
22. december 2004 - 17:23
#45
ved du hvad der kan være galt???
22. december 2004 - 17:48
#46
Jeg kan faktisk ikke se noget galt her heller. Den virker osse fint hos mig.
22. december 2004 - 17:51
#47
Prøv at slette alt indhold i 'mails.txt' og tilmeld dig igen.
22. december 2004 - 17:54
#48
Det er nu lykkes mig at få en mail fra din side :O)
22. december 2004 - 17:55
#49
OG DET VIRKER!!!
22. december 2004 - 17:56
#50
c",)
22. december 2004 - 17:57
#51
Så kan du jo prøve og tilføje $header igen.
22. december 2004 - 17:58
#52
så har jeg blot ét sidste spørgsmål... Hvordan ændrer jeg afsender til "Svendborg Radikale Venstre" istedet for det der web30......
22. december 2004 - 17:59
#53
prøv du at tilføje dig og send en følles-mail ud til os begge 2
22. december 2004 - 18:00
#54
Ja, det virker fint her.
22. december 2004 - 18:01
#55
perfekt... Fik din mail, men kan du så ikke lige tilføje header og paste hele mailer.php-koden???
22. december 2004 - 18:02
#56
Ret: $header = "From: $_POST[name] <$_POST[email]>"; til: $header = "From: \"Svendborg Radikale Venstre\" <mail@adresse>"; og tilføj $header til din mail() funktion.
22. december 2004 - 18:05
#57
<?php if (isset($_POST['send'])) { $sub = $_POST['emne']; $besked = $_POST['message']; $header = "From: \"Svendborg Radikale Venstre\" <mail@adresse>"; echo '<hr>'; $lines = file('mails.txt'); foreach ($lines as $to) { $til = trim($to); mail($til,$sub,$besked,$header); } echo "Mails er afsendt"; } ?>
22. december 2004 - 18:06
#58
tror ik helt jeg fatter det sidste :(
har rettet det første så nu er koden således:
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd"> <html>
<head>
<title>Udsend mails</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div id="main">
<h1>Udsend mails</h1>
Mailen sendes som Plain Text og BCC (Blind Carbon Copy).<br><br>
<form method="post" action="mailer.php">
<input type="hidden" name="send" value="1">
Navn: <input type="text" name="name" style="width: 120px">
Email: <input type="text" name="email" style="width: 120px"><br>
Emne: <input type="text" name="emne" style="width: 287px"><br>
<textarea name="message" rows="7" cols="0" style="width: 328px"></textarea><br>
<input type="submit" value="Udfør">
</form>
<?php
error_reporting(E_ALL);
if (isset($_POST['send'])) {
$sub = $_POST['emne'];
$besked = $_POST['message'];
$header = "From: \"Svendborg Radikale Venstre\" <darkstyler@hotmail.com>";
echo '<hr>';
$lines = file('mails.txt');
foreach ($lines as $to) {
$til = trim($to);
mail($til,$sub,$besked);
}
echo 'Mailen er blevet sendt!';
}
?>
<hr>
<a href="index.php">Tilmeld/afmeld</a> | <a href="mails.txt">mails.txt</a>
</div>
</body>
</html>
22. december 2004 - 18:06
#59
ok
22. december 2004 - 18:08
#60
Mails er afsendt?> Skulle den have "?>" med???
22. december 2004 - 18:09
#61
Samlet set behøver du heller ikke de to inputfelter 'name' og 'email'. Husk at rette mail@adresse.dk.
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd"> <html>
<head>
<title>Udsend mails</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div id="main">
<h1>Udsend mails</h1>
Mailen sendes som Plain Text.<br /><br />
<form method="post" action="mailer.php">
<input type="hidden" name="send" value="1">
Emne: <input type="text" name="emne" style="width: 287px"><br>
<textarea name="message" rows="7" cols="0" style="width: 328px"></textarea><br>
<input type="submit" value="Udfør">
</form>
<?php
if (isset($_POST['send'])) {
$sub = $_POST['emne'];
$besked = $_POST['message'];
$header = "From: \"Svendborg Radikale Venstre\" <mail@adresse.dk>";
echo '<hr>';
$lines = file('mails.txt');
foreach ($lines as $to) {
$til = trim($to);
mail($til,$sub,$besked,$header);
}
echo "Mails er afsendt";
}
?>
<hr>
<a href="index.php">Tilmeld/afmeld</a> | <a href="mails.txt">mails.txt</a>
</div>
</body>
</html>
22. december 2004 - 18:09
#62
og har du modtaget en mail til???
22. december 2004 - 18:18
#63
Jeps
22. december 2004 - 18:21
#64
personligt har jeg modtaget din reply, men ikke selve den mail du har replyet fra... har du fået lidt mere 'korrekte' mail med at en ny tekst er lagt på siden?
22. december 2004 - 18:24
#66
Hvis du skal sende html skal du bruge den rette mimetype.
22. december 2004 - 18:24
#67
mystisk... Jeg modtager ikke selv mailsne:( måske fordi jeg selv er afsender;) hvordan skal jeg så linke???
22. december 2004 - 18:33
#68
Ret: $header = "From: \"Svendborg Radikale Venstre\" <mail@adresse.dk>"; Til: $header = "MIME-Version: 1.0\r\n"; $header .= "Content-type: text/html; charset=iso-8859-1\r\n"; $header .= "From: \"Svendborg Radikale Venstre\" <mail@adresse.dk>\r\n"; Så kan du sende html.
22. december 2004 - 18:34
#69
kan jeg så sende begge dele?
22. december 2004 - 18:35
#70
Jeg bliver nødt til at løbe nu. Håber du finder ud af det. Du får lige et svar med på vejen :O)
22. december 2004 - 19:36
#71
SÅ mange tusind tak for hjælpen!!!
22. december 2004 - 23:23
#72
Velbekommen.
Vi tilbyder markedets bedste kurser inden for webudvikling