Avatar billede mshenriksen Novice
02. december 2007 - 12:43 Der er 7 kommentarer og
1 løsning

Fejl ved sending af nyhedsbrev

Vil sende en nyhedsmail, ved at udfylde en form og tryk 'send'. Mail-adresserne ligger i en MySQL database under tabellen 'nyhedsbrev'.

Koden :
(Connection er lavet)

<form action="ny_mail.php" method="post">
       
        Send nyhedsbrev

<textarea name="tekst" cols="40" rows="10" id="t1" ></textarea>
 
<input type='submit' value='Send' name="submit" />

</form>

<?php
if(isset($_POST['submit'])) {


$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['indhold'];
$subject = "Nyhedsbrev fra Martin";
$headers = "Content-Type: text/html; charset=iso-8859-1\n";
$headers .= "From: Martin <email@mail.dk>";
mail($adresser, $subject, $tekst, $headers);

echo "Mail sendt!!";
}
?>

Fejlen lyder:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /customers/evaogmartin.dk/evaogmartin.dk/httpd.www/admin/ny_mail.php on line 52

(linie-nummeret passer ikke, da jeg har fjernet en del layout-kode, har forøvrigt koden fra http://www.eksperten.dk/spm/341292)

Kan nogen gennemskue fejlen?
Avatar billede mshenriksen Novice
02. december 2007 - 12:48 #1
For dumt ...
<textarea name="tekst" cols="40" rows="10" id="t1" ></textarea>
er rettet til
<textarea name="indhold" cols="40" rows="10" id="t1" ></textarea>

Nu kommer der ingen fejl, men mailen bliver stadig ikke sendt!
Avatar billede mshenriksen Novice
06. december 2007 - 18:42 #2
og ['mail']
skal være ['email']
Så virker det!
Avatar billede erikjacobsen Ekspert
06. december 2007 - 18:48 #3
Man bør ikke skrive en række af emailadresse i "To:" feltet, som du gør med din variabel $adresser. Så kan alle se alle andre modtagere. Det plejer at give en masse sjov og ballade ;)

Put dem på en "Cc:" i stedet for.
Avatar billede erikjacobsen Ekspert
06. december 2007 - 19:14 #4
Åh ja, det skal nok være "Bcc:" ;)
Avatar billede mshenriksen Novice
06. december 2007 - 19:20 #5
Hvordan gør jeg det i praksis?
Avatar billede erikjacobsen Ekspert
06. december 2007 - 19:33 #6
Check http://php.net/mail    Du kan sende mailen til din egen konto, og resten som Bcc:

  mail("minegen@kon.to",$subject, $tekst, $headers);

og tilføje "Bcc: $adresser" til din $headers-variabel (huske linieskift)
Avatar billede mshenriksen Novice
08. december 2007 - 15:52 #7
Det var jo til at klare og det er meget bedre på den måde, mange tak for hjælpen!
Kan man give point igen eller skal man oprette et nyt spørgsmål?
Avatar billede erikjacobsen Ekspert
08. december 2007 - 18:36 #8
Jeg samler slet ikke på point, tak. Du skal ikke gøre mere.
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

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