Mail functie; geen fouten, ook geen mail..?
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
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
<?php
function executeWachtwoordOpvragen()
{
global $config;
$sql = "SELECT * FROM klanten WHERE mail = '" . $_POST['mail'] . "' AND gebruikersnaam = '" . $_POST['naam'] . "'";
$query = mysql_query($sql);
echo '<div class="title">Wachtwoord vergeten</div>';
echo '<div class="block">';
if(!mysql_num_rows($query))
{
echo 'Onjuiste combinatie van Gebruikersnaam / Emailadres';
}
else
{
$userdata = mysql_fetch_assoc($query);
$to = $userdata['mail'];
$subject = 'Uw wachtwoord bij: ' . $config['pagetitle'];
$message = 'Hallo, ' . $userdata['voornaam'] . $userdata['achternaam'] . '!\n\nUw wachtwoord: ' . $userdata['wachtwoord'] . '\n\n\nGroet,\nDe webmaster';
$headers = 'From: [email protected]' . "\r\n" .
'Reply-To: [email protected]' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message);
echo 'Je wachtwoord is naar het opgegeven emailadres gestuurd';
}
}
?>
function executeWachtwoordOpvragen()
{
global $config;
$sql = "SELECT * FROM klanten WHERE mail = '" . $_POST['mail'] . "' AND gebruikersnaam = '" . $_POST['naam'] . "'";
$query = mysql_query($sql);
echo '<div class="title">Wachtwoord vergeten</div>';
echo '<div class="block">';
if(!mysql_num_rows($query))
{
echo 'Onjuiste combinatie van Gebruikersnaam / Emailadres';
}
else
{
$userdata = mysql_fetch_assoc($query);
$to = $userdata['mail'];
$subject = 'Uw wachtwoord bij: ' . $config['pagetitle'];
$message = 'Hallo, ' . $userdata['voornaam'] . $userdata['achternaam'] . '!\n\nUw wachtwoord: ' . $userdata['wachtwoord'] . '\n\n\nGroet,\nDe webmaster';
$headers = 'From: [email protected]' . "\r\n" .
'Reply-To: [email protected]' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message);
echo 'Je wachtwoord is naar het opgegeven emailadres gestuurd';
}
}
?>
Er komen geen fouten, maar ik krijg ook geen mail ...
Iemand die een verklaring heeft?
waar haalt je $sql
de mail en user vandaan?
edit:
nvm, ben newbie.
de mail en user vandaan?
edit:
nvm, ben newbie.
Gewijzigd op 01/01/1970 01:00:00 door koen
Script is lek => SQL-Injection.
Foutafhandeling query's ontbreekt.
Waarom stuur je $headers niet mee?
Zet mail() in een if() om te kijken of ie wel lukt.
Zet dit bovenin je script.
Foutafhandeling query's ontbreekt.
Waarom stuur je $headers niet mee?
Zet mail() in een if() om te kijken of ie wel lukt.
Zet dit bovenin je script.
'SanThe:
Script is lek => SQL-Injection.
Foutafhandeling query's ontbreekt.
Waarom stuur je $headers niet mee?
Zet mail() in een if() om te kijken of ie wel lukt.
Zet dit bovenin je script.
Foutafhandeling query's ontbreekt.
Waarom stuur je $headers niet mee?
Zet mail() in een if() om te kijken of ie wel lukt.
Zet dit bovenin je script.
Error report staat al op E_ALL in de index, waar de functie geinclude wordt.
Headers had ik er per ongeluk uitgegooid
hier vernieuwde code:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
$sql = "SELECT * FROM klanten WHERE mail = '" . mysql_escape_string($_POST['mail']) . "' AND gebruikersnaam = '" . mysql_escape_string($_POST['naam']) . "'";
$query = mysql_query($sql) or die(mysql_error);
if(mail($to, $subject, $message, $headers))
{
echo 'Succes';
}
else
{
echo 'Mislukt';
}
?>
$sql = "SELECT * FROM klanten WHERE mail = '" . mysql_escape_string($_POST['mail']) . "' AND gebruikersnaam = '" . mysql_escape_string($_POST['naam']) . "'";
$query = mysql_query($sql) or die(mysql_error);
if(mail($to, $subject, $message, $headers))
{
echo 'Succes';
}
else
{
echo 'Mislukt';
}
?>
Uitvoer:
SuccesJe wachtwoord is naar het opgegeven emailadres gestuurd
Gewijzigd op 01/01/1970 01:00:00 door Jasper Sni
en heb je nu ook de mail gekregen?
'koen:
en heb je nu ook de mail gekregen?
Nee, anders had ik het wel gezegd...
Zit de mail niet in de spambox?
http://phpwiki.santhe.nl/index.php/De_juiste_mailheaders
http://phpwiki.santhe.nl/index.php/De_juiste_mailheaders
'SanThe:
Zit de mail niet in de spambox?
http://phpwiki.santhe.nl/index.php/De_juiste_mailheaders
http://phpwiki.santhe.nl/index.php/De_juiste_mailheaders
Nee, dat dacht ik eerst ook, maar staat niks in mijn ongewenst ...
Kan je bij de logfiles van de mailserver?
Zo ja, kijk daar eens in.
Zo ja, kijk daar eens in.
'Jasper:
hier vernieuwde code:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
$sql = "SELECT * FROM klanten WHERE mail = '" . mysql_escape_string($_POST['mail']) . "' AND gebruikersnaam = '" . mysql_escape_string($_POST['naam']) . "'";
$query = mysql_query($sql) or die(mysql_error);
if(mail($to, $subject, $message, $headers))
{
echo 'Succes';
}
else
{
echo 'Mislukt';
}
?>
$sql = "SELECT * FROM klanten WHERE mail = '" . mysql_escape_string($_POST['mail']) . "' AND gebruikersnaam = '" . mysql_escape_string($_POST['naam']) . "'";
$query = mysql_query($sql) or die(mysql_error);
if(mail($to, $subject, $message, $headers))
{
echo 'Succes';
}
else
{
echo 'Mislukt';
}
?>
mail ($to,$subject,$message[,$headers[,$additional_parameters ]] )
(uit manual van php.net)
http://nl3.php.net/manual/en/function.mail.php
Gewijzigd op 01/01/1970 01:00:00 door koen
mysql_escape_string()?
Beter is mysql_real_escape_string().
Beter is mysql_real_escape_string().
die code in mijn vorige bericht was gekopierd, zal quote erbij editten (A)
EDIT: heb geprobeerd die manual te gebruiken om t aan te passen
(uit manual van php.net)
http://nl3.php.net/manual/en/function.mail.php
EDIT: heb geprobeerd die manual te gebruiken om t aan te passen
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
$sql = "SELECT * FROM klanten WHERE mail = '" . mysql_escape_string($_POST['mail']) . "' AND gebruikersnaam = '" . mysql_escape_string($_POST['naam']) . "'";
$query = mysql_query($sql) or die(mysql_error);
if(mail($to,$subject,$message[,$headers]))
{
echo 'Succes';
}
else
{
echo 'Mislukt';
}
?>
$sql = "SELECT * FROM klanten WHERE mail = '" . mysql_escape_string($_POST['mail']) . "' AND gebruikersnaam = '" . mysql_escape_string($_POST['naam']) . "'";
$query = mysql_query($sql) or die(mysql_error);
if(mail($to,$subject,$message[,$headers]))
{
echo 'Succes';
}
else
{
echo 'Mislukt';
}
?>
(uit manual van php.net)
http://nl3.php.net/manual/en/function.mail.php
Gewijzigd op 01/01/1970 01:00:00 door koen
@Koen: if(mail($to,$subject,$message[,$headers]))
Die [ en ] horen daar niet. Dat is in de handleiding een manier om aan te geven dat iets optioneel is. Dus mag gebruikt worden, maar moet niet.
Die [ en ] horen daar niet. Dat is in de handleiding een manier om aan te geven dat iets optioneel is. Dus mag gebruikt worden, maar moet niet.
als hij die header wil meesturen, en er bij dat optionele een header word gezet bij de manual.
staat op zich die $header toch goed?
of vergis ik me daarin?
ik ben nog niet goed met php, daarom probeer ik dit soort scripts, en als het beter kan lees ik het mee op dit forum.
sorry dat ik iets probeer...
staat op zich die $header toch goed?
of vergis ik me daarin?
ik ben nog niet goed met php, daarom probeer ik dit soort scripts, en als het beter kan lees ik het mee op dit forum.
sorry dat ik iets probeer...
Zonder if(mail($to, $subject, $message))
Met headers if(mail($to, $subject, $message, $headers))
Met headers if(mail($to, $subject, $message, $headers))
Probeer eventueel ook dit even om te kijken of to wel gevuld is:
Is uw server support e-mail? Ik kan u met een ander e-mail PHP script als je wilt.
'Alan:
Is uw server support e-mail? Ik kan u met een ander e-mail PHP script als je wilt.
Welkom op het forum, nederlands aub en geen vertaald nederlands dmv een vertaal machine.. Bedankt!
jaron, heb je profiel gekeken, dit is een engelsman die deels nederlands kan...
geen vertaalmachine dus
geen vertaalmachine dus




