Probleem met PHPmailer werkend te krijgen
Op de server heb ik de volgende bestanden gezet in dezelfde dir. :
1. class.phpmailer.php
2. class.smtp.php
3. nieuwsbriefmail.html
4. test.php
Test.php bestaat uit de volgende code:
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
31
32
33
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
31
32
33
<?php
$body = "nieuwsbriefmail.html";
require("class.phpmailer.php");
$mail = new PHPMailer();
$mail->IsSMTP(); // telling the class to use SMTP
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->SMTPSecure = "tls"; //sets the prefix to the server
$mail->Host = "smtp.gmail.com"; // SMTP server
$mail->Port = 587; //set the SMTP port for the GMAIL server
$mail->Username = "*******@gmail.com"; // SMTP server username
$mail->Password = "*******"; // SMTP server password
$mail->IsSendmail(); // tell the class to use Sendmail
$mail->AddReplyTo("****@gmail.com","mijn naam");
$mail->From = "*****@gmail.com";
$mail->FromName = "www.*******.nl";
$to = "******@home.nl";
$mail->AddAddress($to);
$mail->Subject = "First PHPMailer Message";
$mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test
$mail->WordWrap = 80; // set word wrap
$mail->MsgHTML($body);
$mail->IsHTML(true); // send as HTML
$mail->Send();
if(!$mail->Send()) {
echo 'Message was not sent.';
echo 'Mailer error: ' . $mail->ErrorInfo;
} else {
echo 'Message has been sent.';
}
?>
$body = "nieuwsbriefmail.html";
require("class.phpmailer.php");
$mail = new PHPMailer();
$mail->IsSMTP(); // telling the class to use SMTP
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->SMTPSecure = "tls"; //sets the prefix to the server
$mail->Host = "smtp.gmail.com"; // SMTP server
$mail->Port = 587; //set the SMTP port for the GMAIL server
$mail->Username = "*******@gmail.com"; // SMTP server username
$mail->Password = "*******"; // SMTP server password
$mail->IsSendmail(); // tell the class to use Sendmail
$mail->AddReplyTo("****@gmail.com","mijn naam");
$mail->From = "*****@gmail.com";
$mail->FromName = "www.*******.nl";
$to = "******@home.nl";
$mail->AddAddress($to);
$mail->Subject = "First PHPMailer Message";
$mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test
$mail->WordWrap = 80; // set word wrap
$mail->MsgHTML($body);
$mail->IsHTML(true); // send as HTML
$mail->Send();
if(!$mail->Send()) {
echo 'Message was not sent.';
echo 'Mailer error: ' . $mail->ErrorInfo;
} else {
echo 'Message has been sent.';
}
?>
alles is op de plaats van **** correct ingevuld.
echter krijg ik al meteen een foutmelding op /usr/sbin/sendmail
Kent hij blijkbaar niet???
Ben ook bezig geweest om class.phpmailer.php te vervangen door class.smtp.php
Daar krijg ik een http-fout 500.
Wat doe ik nou eigenlijk fout?
Moet ik in die 2 class-bestanden ook nog iets invullen of veranderen?
Wie kan mij verder helpen?
Zoekende op internet kom ik niet verder.
Zou dit graag werkende krijgen want ik ben al eeen keer afgesloten geweest omdat ik een keer WorldCast heb geprobeerd en daar ging het helemaal mis mee.
Die leek niet te werken maar ondertussen verstuurde ik wel 1000 mails zonder er erg in te hebben.
Quote:
$mail->Host = "smtp.gmail.com"; // SMTP server
$mail->Port = 587; //set the SMTP port for the GMAIL server
$mail->Username = "*******@gmail.com"; // SMTP server username
$mail->Password = "*******"; // SMTP server password
$mail->Port = 587; //set the SMTP port for the GMAIL server
$mail->Username = "*******@gmail.com"; // SMTP server username
$mail->Password = "*******"; // SMTP server password
Hier gaat het fout, denk ik. Het beste is om de SMTP server van je provider in te vullen. Zit je bijvoorbeeld bij Ziggo dan vul je in:
Quote:
$mail->Host = "smtp.ziggo.nl"; // SMTP server
De andere instellingen hoef je niet te gebruiken.
Quote:
Ben ook bezig geweest om class.phpmailer.php te vervangen door class.smtp.php
Dat hoef je niet te doen.
Edit:
Hier heb je misschien dat wat aan (van 2006): http://deepakssn.blogspot.com/2006/06/gmail-php-send-email-using-php-with.html
Hier heb je misschien dat wat aan (van 2006): http://deepakssn.blogspot.com/2006/06/gmail-php-send-email-using-php-with.html
Gewijzigd op 19/08/2010 19:24:38 door Martijn B
Martijn B op 19/08/2010 19:21:06:
Hier gaat het fout, denk ik. Het beste is om de SMTP server van je provider in te vullen. Zit je bijvoorbeeld bij Ziggo dan vul je in:
De andere instellingen hoef je niet te gebruiken.
Quote:
$mail->Host = "smtp.gmail.com"; // SMTP server
$mail->Port = 587; //set the SMTP port for the GMAIL server
$mail->Username = "*******@gmail.com"; // SMTP server username
$mail->Password = "*******"; // SMTP server password
$mail->Port = 587; //set the SMTP port for the GMAIL server
$mail->Username = "*******@gmail.com"; // SMTP server username
$mail->Password = "*******"; // SMTP server password
Hier gaat het fout, denk ik. Het beste is om de SMTP server van je provider in te vullen. Zit je bijvoorbeeld bij Ziggo dan vul je in:
Quote:
$mail->Host = "smtp.ziggo.nl"; // SMTP server
De andere instellingen hoef je niet te gebruiken.
Jawel. Gmail heeft aangepast smtp instellingen.
Martijn B op 19/08/2010 19:28:15:
Ja weet ik nu ook zie edit, maar dat is van 2006...
Edit:
Gmail heeft altijd aparte smtp instellingen gehad. Dat maakt voor phpmailer niks uit. Die moet gewoon smtp ondersteunen.
Ik denk dat openssl niet aanstaat.
http://stam.blogs.com/8bits/2008/08/phpmailer-via-gmail.html
Daar kwam ik ook niet verder mee.
Heb trouwens de laatste versie van PHPmailer opgehaald.
Alvast bedankt voor de tip.
Ik ga er straks even naar kijken, als het maar niet vertaald is door Daar kwam ik ook niet verder mee.
Heb trouwens de laatste versie van PHPmailer opgehaald.
Alvast bedankt voor de tip.
Piet, doe in een bestand phpinfo() en kijk of je ssl ondersteuning hebt.
Ik moet trouwens de SMTP van ziggo gebruiken als ik emails verstuur met Gmail.
Behalve via gmail.com dan.
Ik ga een gedeelte uit die 2006 uitleg gebruiken, daar staat net iets meer in dan bij stam.blogs die alleen maar de localhost test doet.
Moet nu alleen wel voorzichtig aan de gang gaan.
Met die afsluiting van afgelopen maandag moet ik me nu wel een maand rustig houden anders riskeer ik een afsluiting van een hele week.
En dat moet ik net niet hebben.
Nogmaals bedankt voor de tips, hoop er nu uit te komen.
Lukt het niet, dan roep ik nog wel een keertje.
Oja, vanwaar kreeg ik die /usr/sbin/sendmail melding???
Heeft dat iets te maken met vevida.nl alwaar de site is geplaatst?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
<?php
$mail->IsSMTP(); // set mailer to use SMTP
$mail->Host = "ssl://smtp.gmail.com"; // specify main and backup server
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Username = "******@gmail.com"; // SMTP Username
$mail->Password = "******"; // SMTP Password
$mail->Port = 465;
$mail->From = "******@gmail.com";
$mail->FromName = "Website";
$mail->AddReplyTo("******@gmail.com", "*****");
?>
$mail->IsSMTP(); // set mailer to use SMTP
$mail->Host = "ssl://smtp.gmail.com"; // specify main and backup server
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Username = "******@gmail.com"; // SMTP Username
$mail->Password = "******"; // SMTP Password
$mail->Port = 465;
$mail->From = "******@gmail.com";
$mail->FromName = "Website";
$mail->AddReplyTo("******@gmail.com", "*****");
?>
Gewijzigd op 19/08/2010 20:23:06 door Aad B
http://phpmailer.worxware.com/index.php?pg=tip_gmail
je verwacht van zo'n site wel de juiste informatie te krijgen.
hmm, niet echt joviaal van je verwacht van zo'n site wel de juiste informatie te krijgen.
SMTP Error: Could not connect to SMTP host. Mailer Error: SMTP Error: Could not connect to SMTP host.
Krijg dus geen contact met de SMTP.
Vraag me nu nog af of ik iets in class.phpmailer.php en/of class.smtp.php moet aanpassen?
In class.smtp.php staat:
public $SMTP_PORT = 25; // werkt neiet bij mij
heb dit verandert in:
public $SMTP_PORT = 465; // ook geen resultaat te zien.
Waar zit nu die fout, blijkbaar gaat hij dan toch bij Gmail connecten!
Of zou het moeten zijn dat ik de smtp van mijn eigen provider moet gebruiken?
Smtp werkt standaard op poort 25, en als standaard alternatief voor providers die poort 25 blokkeren kan je vaak over 587 connecten.
typ dit eens op de commandline:
telnet smtp.gmail.com 25
of
telnet smtp.gmail.com 587
dan weet je in ieder geval of je een verbinding kan maken met de server daar.
Daar kwam ik ook na twee dagen prutsen achter.
de eerste telnet gaf als antwoord:
220 mx.google.com ESMTP v8sm6551........
en de tweede mogelijkheid gaf een soortgelijk antwoord retour.
@Peter:
de mogelijkheid tot html-verenden moet vanaf een site draaien.
deze staan bij vevida.nl en/of mijndomein.nl
ik heb dus 2 keuze mogelijkheden om te testen.
Verder ben ik o.a. dit nog tegen gekomen:
http://www.webhostingtalk.com/showthread.php?t=416467
de eerste mogelijkheid geeft een 500-fout
de MIME-versie verstuurd daadwerkelijk een mail, echter gewoon in tekst en geen HTML
UPDATE:
ondertussen ben ik alweer met een andere list aan het stoeien:
http://www.webcheatsheet.com/PHP/send_email_text_html_attachment.php#html
deze werkt wel, ondertussen ben ik al zover dat ik aan de BCC werk.
ik heb begrepen dat je met file_get_contents meerdere adressen kunt invoeren?
Gewijzigd op 21/08/2010 14:05:27 door Piet Marisael
Piet Marisael op 21/08/2010 06:44:55:
met de bovenstaande gegevens ingevuld krijg ik de melding terug:
SMTP Error: Could not connect to SMTP host. Mailer Error: SMTP Error: Could not connect to SMTP host.
Krijg dus geen contact met de SMTP.
Vraag me nu nog af of ik iets in class.phpmailer.php en/of class.smtp.php moet aanpassen?
In class.smtp.php staat:
public $SMTP_PORT = 25; // werkt neiet bij mij
heb dit verandert in:
public $SMTP_PORT = 465; // ook geen resultaat te zien.
Waar zit nu die fout, blijkbaar gaat hij dan toch bij Gmail connecten!
Of zou het moeten zijn dat ik de smtp van mijn eigen provider moet gebruiken?
SMTP Error: Could not connect to SMTP host. Mailer Error: SMTP Error: Could not connect to SMTP host.
Krijg dus geen contact met de SMTP.
Vraag me nu nog af of ik iets in class.phpmailer.php en/of class.smtp.php moet aanpassen?
In class.smtp.php staat:
public $SMTP_PORT = 25; // werkt neiet bij mij
heb dit verandert in:
public $SMTP_PORT = 465; // ook geen resultaat te zien.
Waar zit nu die fout, blijkbaar gaat hij dan toch bij Gmail connecten!
Of zou het moeten zijn dat ik de smtp van mijn eigen provider moet gebruiken?
Heb je ook wel je host goedgezet?
$mail->Host = "ssl://smtp.gmail.com";
Jazeker had ik die goed gezet.
Alleen ben ik helemaal van PHPmailer afgestapt.
Ben de gehele dag aan het snuffelen geweest op internet en flink aan het testen geweest.
Momenteel ben ik zover dat ik een werkend script heb. Hoera!
De code:
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
<?php
$adresArray = array(
"Piet" => "[email protected]",
"pja" => "[email protected]",
"ikke" => "[email protected]",
"test" => "[email protected]",
//etc
);
//define the receiver of the email
$cc = '';
$to = '[email protected]';
//define the subject of the email
$subject = 'Test email';
//create a boundary string. It must be unique
//so we use the MD5 algorithm to generate a random hash
$random_hash = md5(date('r', time()));
//define the headers we want passed. Note that they are separated with \r\n
$headers = "From: [email protected]\r\nReply-To: [email protected]";
//add boundary string and mime type specification
$headers .= "\r\nContent-Type: multipart/alternative; boundary=\"PHP-alt-".$random_hash."\"";
foreach($adresArray AS $name => $adres) {
$cc .= $name .' <'. $adres .'>, ';
}
$headers .= "Bcc: ". $cc ."\r\n";
//define the body of the message.
ob_start(); //Turn on output buffering
?>
--PHP-alt-<?php echo $random_hash; ?>
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
Indien u deze mail niet goed ontvangt, ga dan naar de website.
--PHP-alt-<?php echo $random_hash; ?>
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="nl-nl" lang="nl-nl" dir="ltr" >
<head>
DE HTML-pagina.
</body>
</html>
--PHP-alt-<?php echo $random_hash; ?>--
<?
//copy current buffer contents into $message variable and delete current output buffer
$message = ob_get_clean();
//send the email
$mail_sent = @mail( $to, $subject, $message, $headers );
//if the message is sent successfully print "Mail sent". Otherwise print "Mail failed"
echo $mail_sent ? "Mail verzonden." : "Mail failed";
?>
$adresArray = array(
"Piet" => "[email protected]",
"pja" => "[email protected]",
"ikke" => "[email protected]",
"test" => "[email protected]",
//etc
);
//define the receiver of the email
$cc = '';
$to = '[email protected]';
//define the subject of the email
$subject = 'Test email';
//create a boundary string. It must be unique
//so we use the MD5 algorithm to generate a random hash
$random_hash = md5(date('r', time()));
//define the headers we want passed. Note that they are separated with \r\n
$headers = "From: [email protected]\r\nReply-To: [email protected]";
//add boundary string and mime type specification
$headers .= "\r\nContent-Type: multipart/alternative; boundary=\"PHP-alt-".$random_hash."\"";
foreach($adresArray AS $name => $adres) {
$cc .= $name .' <'. $adres .'>, ';
}
$headers .= "Bcc: ". $cc ."\r\n";
//define the body of the message.
ob_start(); //Turn on output buffering
?>
--PHP-alt-<?php echo $random_hash; ?>
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
Indien u deze mail niet goed ontvangt, ga dan naar de website.
--PHP-alt-<?php echo $random_hash; ?>
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="nl-nl" lang="nl-nl" dir="ltr" >
<head>
DE HTML-pagina.
</body>
</html>
--PHP-alt-<?php echo $random_hash; ?>--
<?
//copy current buffer contents into $message variable and delete current output buffer
$message = ob_get_clean();
//send the email
$mail_sent = @mail( $to, $subject, $message, $headers );
//if the message is sent successfully print "Mail sent". Otherwise print "Mail failed"
echo $mail_sent ? "Mail verzonden." : "Mail failed";
?>
Er zal hier en daar heus wel iets niet echt fraai uitzien, ben tenslotte maar een beginner.
Maar het werkt, alleen de return-path gaat niet naar het ingevulde maar naar de recycler van de server(?) [email protected] de vuilnisbak zo te zien.
Verder wil ik de pagina beveiligen met een inlog.
Ook al gevonden:
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
<?php
session_start();
//----------------------------------------
// Verander de gegevens hieronder:
// De gebruikersnaam voor de Admin
$gebruikersnaam = "NAAM";
// Het wachtwoord voor de Admin
$wachtwoord = "WACHTWOORD";
// Jouw website naam
$jouwWebsiteNaam = "www.website.nl";
// Jouw e-mailadres
$jouwEmail = "BEKEND";
// De locatie van het databestand
$dataBestand = "niet meer nodig";
// Hierna hoef je niks meer te veranderen!
//----------------------------------------
?>
<html>
<head>
<title>Nieuwsbrief Versturen</title>
</head>
<body>
<center>
<font face="Arial" size=2>
<h3>Nieuwsbrief Versturen</h3>
<br>
<?php
if($gebruikersnaam == $_POST['gebruikersnaam'] && $wachtwoord == $_POST['wachtwoord'] && $_SERVER['REQUEST_METHOD'] == 'POST' ) {
$nieuwsbriefBestand = file($dataBestand);
$nieuwsbriefBestandLengte = count($nieuwsbriefBestand);
$groepenTeller = 0;
for($i = 0; $i < ($nieuwsbriefBestandLengte+50); $i+=50) {
$groep = null;
$groepenTeller++;
for($a = $i; $a < ($i+50); $a++) {
if($nieuwsbriefBestand[$a]) {
$groep .= chop($nieuwsbriefBestand[$a]).",";
}
}
if($groep) { $groepen[] = $groep; }
}
if($html) {
$opmaak = "Content-type: text/html; charset=iso-8859-1\r\n";
}
if($_SERVER['REQUEST_METHOD'] == 'POST' && !empty($_POST['bericht']) && !empty($_POST['onderwerp'])) {
for($g = 0; $g < count($groepen); $g++) {
$to = $jouwEmail;
$subject = stripslashes($_POST['onderwerp']);
$message = stripslashes($_POST['bericht']);
//CC header voor controle
//ter controle of de mail wel naar de juiste wordt verzonden letop dit is echt alleen om te testen
//$headers = 'Cc:'."$groepen[$g]". "\r\n";
// einde controle
$headers = 'Bcc:'."$groepen[$g]". "\r\n";
$headers .= 'From:'."$jouwWebsiteNaam"."<$jouwEmail>". "\r\n";
mail($to, $subject, $message, $headers);
}
echo("<b>De nieuwsbrief is succesvol verstuurd!</b><br><br><hr><br>");
}
?>
<form action="" method="post">
Onderwerp:<br><input type="text" name="onderwerp" size=20><br><br>
Bericht:<br><textarea cols=40 rows=20 name="bericht"></textarea><br><br>
<input type='checkbox' name='html'> HTML gebruiken<br><br>
<input type='hidden' name='wachtwoord' value='<?php echo $wachtwoord; ?>'>
<input type='hidden' name='gebruikersnaam' value='<?php echo $gebruikersnaam; ?>'>
<input type="submit" value="Verstuur">
</form>
</center>
<br><br>
<?php
echo("Er zijn $nieuwsbriefBestandLengte mensen lid van de nieuwsbrief:<br><br>");
for($g = 0; $g < count($groepen); $g++) {
echo("$groepen[$g]<br>\n");
}
}
else {
echo "<form method='post'>\n";
echo "Gebruikersnaam: <input type=text name='gebruikersnaam'><br>\n";
echo "Wachtwoord: <input type=password name='wachtwoord'><br>\n";
echo "<br><input type='Submit' value='Login'>\n";
echo "</form></center>";
}
?>
<br>
</font>
</center>
</body>
</html>
session_start();
//----------------------------------------
// Verander de gegevens hieronder:
// De gebruikersnaam voor de Admin
$gebruikersnaam = "NAAM";
// Het wachtwoord voor de Admin
$wachtwoord = "WACHTWOORD";
// Jouw website naam
$jouwWebsiteNaam = "www.website.nl";
// Jouw e-mailadres
$jouwEmail = "BEKEND";
// De locatie van het databestand
$dataBestand = "niet meer nodig";
// Hierna hoef je niks meer te veranderen!
//----------------------------------------
?>
<html>
<head>
<title>Nieuwsbrief Versturen</title>
</head>
<body>
<center>
<font face="Arial" size=2>
<h3>Nieuwsbrief Versturen</h3>
<br>
<?php
if($gebruikersnaam == $_POST['gebruikersnaam'] && $wachtwoord == $_POST['wachtwoord'] && $_SERVER['REQUEST_METHOD'] == 'POST' ) {
$nieuwsbriefBestand = file($dataBestand);
$nieuwsbriefBestandLengte = count($nieuwsbriefBestand);
$groepenTeller = 0;
for($i = 0; $i < ($nieuwsbriefBestandLengte+50); $i+=50) {
$groep = null;
$groepenTeller++;
for($a = $i; $a < ($i+50); $a++) {
if($nieuwsbriefBestand[$a]) {
$groep .= chop($nieuwsbriefBestand[$a]).",";
}
}
if($groep) { $groepen[] = $groep; }
}
if($html) {
$opmaak = "Content-type: text/html; charset=iso-8859-1\r\n";
}
if($_SERVER['REQUEST_METHOD'] == 'POST' && !empty($_POST['bericht']) && !empty($_POST['onderwerp'])) {
for($g = 0; $g < count($groepen); $g++) {
$to = $jouwEmail;
$subject = stripslashes($_POST['onderwerp']);
$message = stripslashes($_POST['bericht']);
//CC header voor controle
//ter controle of de mail wel naar de juiste wordt verzonden letop dit is echt alleen om te testen
//$headers = 'Cc:'."$groepen[$g]". "\r\n";
// einde controle
$headers = 'Bcc:'."$groepen[$g]". "\r\n";
$headers .= 'From:'."$jouwWebsiteNaam"."<$jouwEmail>". "\r\n";
mail($to, $subject, $message, $headers);
}
echo("<b>De nieuwsbrief is succesvol verstuurd!</b><br><br><hr><br>");
}
?>
<form action="" method="post">
Onderwerp:<br><input type="text" name="onderwerp" size=20><br><br>
Bericht:<br><textarea cols=40 rows=20 name="bericht"></textarea><br><br>
<input type='checkbox' name='html'> HTML gebruiken<br><br>
<input type='hidden' name='wachtwoord' value='<?php echo $wachtwoord; ?>'>
<input type='hidden' name='gebruikersnaam' value='<?php echo $gebruikersnaam; ?>'>
<input type="submit" value="Verstuur">
</form>
</center>
<br><br>
<?php
echo("Er zijn $nieuwsbriefBestandLengte mensen lid van de nieuwsbrief:<br><br>");
for($g = 0; $g < count($groepen); $g++) {
echo("$groepen[$g]<br>\n");
}
}
else {
echo "<form method='post'>\n";
echo "Gebruikersnaam: <input type=text name='gebruikersnaam'><br>\n";
echo "Wachtwoord: <input type=password name='wachtwoord'><br>\n";
echo "<br><input type='Submit' value='Login'>\n";
echo "</form></center>";
}
?>
<br>
</font>
</center>
</body>
</html>
alleen daar gaat mijn kennis de mist in om de tweede code te strippen en het nodige in de eerste code te plaatsen.
Kan er iemand mij verder helpen?
Gewijzigd op 21/08/2010 21:31:35 door Piet Marisael
- empty is een zinloze functie
- stripslashes over $_POST moet niet gekker worden, duid erop dat het een en ander niet goed geconfigureerd staat
- ob functies in principe uit den boze
- php variabelen buiten quotes
enz enz
ik moest even zoeken waar je het over had :-)
Het gaat voornamelijk over dat de beveiling van de onderste code (rest kan weg) in de eerste code komt die er boven staat.