Php mailscript help
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php
include("inc_database.php");
$_POST["email"] = 'test';
if (!empty($_POST["email"])){
$query="SELECT * FROM lid WHERE ind # ''";
$result = mysql_query($query) or die("Fout : " . mysql_error());
if (mysql_num_rows($result) > 0){
while (list($ind,$username, $password) =
mysql_fetch_row($result)){
$ontvanger = $username;
}
$onderwerp = 'Nieuwsberichten';
$msg = "Beste mensen,\r\n\r\nEr is een nieuwsbericht geplaatst op onze website. \r\n";
$msg .="\r\n\r\nMet vriendelijke groet, bla bla bla.";
if (!mail($ontvanger, $onderwerp, $msg)){
$tekst = "Er is helaas een fout opgetreden bij hetverzenden van email";
echo($tekst);
}else{
$tekst = "De ingevoerde gegevens zijn verzonden aan alle leden";
echo($tekst);
}
}else{
// afwerking blok
echo ("De gegevens zijn niet verzonden, omdat er geen E-mail adres was ingevuld");
}
}
?>
include("inc_database.php");
$_POST["email"] = 'test';
if (!empty($_POST["email"])){
$query="SELECT * FROM lid WHERE ind # ''";
$result = mysql_query($query) or die("Fout : " . mysql_error());
if (mysql_num_rows($result) > 0){
while (list($ind,$username, $password) =
mysql_fetch_row($result)){
$ontvanger = $username;
}
$onderwerp = 'Nieuwsberichten';
$msg = "Beste mensen,\r\n\r\nEr is een nieuwsbericht geplaatst op onze website. \r\n";
$msg .="\r\n\r\nMet vriendelijke groet, bla bla bla.";
if (!mail($ontvanger, $onderwerp, $msg)){
$tekst = "Er is helaas een fout opgetreden bij hetverzenden van email";
echo($tekst);
}else{
$tekst = "De ingevoerde gegevens zijn verzonden aan alle leden";
echo($tekst);
}
}else{
// afwerking blok
echo ("De gegevens zijn niet verzonden, omdat er geen E-mail adres was ingevuld");
}
}
?>
Ik wil een email verzenden naar alle mensen die in de database staan.
hun email = username
dus hij moet alle leden deze email verzenden.
Maar hij werkt niet! hoe kan dat?
Wat geeft hij voorn error ?
er staat gewoon:
De ingevoerde gegevens zijn verzonden aan alle leden
maar ik krijg geen email!
mijn username = [email protected]
maar als ik dan in mijn email kijk krijg ik niks!
Beter nog, kijk in de logs van de mailserver.
als ik direct naar die pagina gaat krijg niemand email
maar als ik inlog en dan naar die php bestand to ga. krijg ik alleen email en de rest niet!
Volgens mij staat het verzenden van de mail ook buiten de while, dus krijgt maar 1 lid de mail.
WHERE ind # ''
ind = zeg maar de index.
dus:
ind username password
1 naam en password
2 naam en password
3 enz. enz.
Ja, het is geluk. net wat je zij! Het zat niet in de while.
Gewijzigd op 01/01/1970 01:00:00 door Raymond --------------------
Is het niet beter om hem toch uit de while te halen en maar een mail te versturen? En dan bedoel dat je iedereen in de BCC zet en vervolgens maar 1 mail hoeft te sturen.
Doe het eens op een normale manier afvangen met mysql_num_rows en mysql_fetch_assoc, ipv een of andere ranzige LIST die je niet nodig hebt in deze situatie....