Avatar billede mathiash Nybegynder
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");
?>
Avatar billede exutable Nybegynder
16. april 2003 - 14:40 #1
Du laver , imellem alle de email adresser altsaa $adresser = $raekke['mail'],;
Avatar billede mathiash Nybegynder
16. april 2003 - 14:41 #2
Prøver ;-)
Avatar billede repox Seniormester
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");

}

?
}
Avatar billede exutable Nybegynder
16. april 2003 - 14:41 #4
ok =)
Avatar billede exutable Nybegynder
16. april 2003 - 14:42 #5
svar....
Du laver , imellem alle de email adresser altsaa $adresser = $raekke['mail'],;
Avatar billede repox Seniormester
16. april 2003 - 14:42 #6
den sidste } ved jeg ikke lige hvor kom fra... :)
Avatar billede exutable Nybegynder
16. april 2003 - 14:42 #7
svar....
Avatar billede mathiash Nybegynder
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
Avatar billede exutable Nybegynder
16. april 2003 - 14:43 #9
Hmmm...
Avatar billede nicklasb Nybegynder
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'];
Avatar billede mathiash Nybegynder
16. april 2003 - 14:45 #11
Avatar billede repox Seniormester
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....
Avatar billede nicklasb Nybegynder
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'];
}
Avatar billede repox Seniormester
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 ?
Avatar billede mathiash Nybegynder
16. april 2003 - 14:49 #15
shady->>>>> Hvad kunne være nemmere???
Avatar billede nicklasb Nybegynder
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..
Avatar billede nicklasb Nybegynder
16. april 2003 - 14:51 #17
hov.. selvfølgelig.. $adresser .= ";" . $raekke['mail'];

men tror ider er nogle servere der er lige glade..
Avatar billede repox Seniormester
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");

}
Avatar billede repox Seniormester
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...
Avatar billede nicklasb Nybegynder
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.. :)
Avatar billede mathiash Nybegynder
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
Avatar billede repox Seniormester
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....
Avatar billede repox Seniormester
16. april 2003 - 14:55 #23
hvad er linie 78 ?
Avatar billede mathiash Nybegynder
16. april 2003 - 14:55 #24
Jeg tror at det er kommaet igen ;-)
Avatar billede repox Seniormester
16. april 2003 - 14:56 #25
komma ??
Avatar billede mathiash Nybegynder
16. april 2003 - 14:56 #26
Tælle, tælle, tælle. Det er bunden: </html>
Avatar billede mathiash Nybegynder
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");

}
Avatar billede repox Seniormester
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");
Avatar billede nicklasb Nybegynder
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.. :)
Avatar billede repox Seniormester
16. april 2003 - 14:58 #30
Der skal være det komma, ellers er det en adskillelsesfejl...
Avatar billede mathiash Nybegynder
16. april 2003 - 14:58 #31
Uås, nej, jeg så forkert!!!
Avatar billede repox Seniormester
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....
Avatar billede mathiash Nybegynder
16. april 2003 - 15:01 #33
Ok, hvad skal jeg så bruge af kode???
Avatar billede nicklasb Nybegynder
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??
Avatar billede repox Seniormester
16. april 2003 - 15:01 #35
Altså, begge koder er gode, men hvis din server ikke tillader gentagelse af koderne, så tag nicklasbs kode...
Avatar billede repox Seniormester
16. april 2003 - 15:02 #36
nicklasb -> I get the idea... :) Havde bare aldrig hørt om det... :)
Avatar billede nicklasb Nybegynder
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.. :)
Avatar billede mathiash Nybegynder
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>
Avatar billede repox Seniormester
16. april 2003 - 15:11 #39
if(!isset($taeller)) {
Avatar billede mathiash Nybegynder
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>
Avatar billede nicklasb Nybegynder
16. april 2003 - 15:14 #41
ok.. du har lavet noget andet lort, et eller andet sted.. (vil jeg tro)
Post lige hele siden..
Avatar billede nicklasb Nybegynder
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..
Avatar billede mathiash Nybegynder
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>
Avatar billede nicklasb Nybegynder
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>
Avatar billede sukos Juniormester
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
Avatar billede mathiash Nybegynder
16. april 2003 - 15:21 #46
Har fjernet: $adresser = $raekke['mail']; virker stadig ikke :-(
Avatar billede nicklasb Nybegynder
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!!";
}
?>
Avatar billede nicklasb Nybegynder
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.. )
Avatar billede staf Nybegynder
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 :)
Avatar billede mathiash Nybegynder
16. april 2003 - 15:25 #50
nichlasb->> Undskyld en det virker stadig ikke :-(
Avatar billede mathiash Nybegynder
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);
Avatar billede mathiash Nybegynder
16. april 2003 - 15:28 #52
ups
/\
|
|
en det= det
Avatar billede nicklasb Nybegynder
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>
Avatar billede mathiash Nybegynder
16. april 2003 - 15:31 #54
YIRHHHHH JUBIIIII DET VIRKER!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
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