Ik gebruik volgende code, die vroeger altijd werkt. Maar momenteel stuurt hij geen mails meer.
Kan iemand mij helpen?
Code:<?php if($_POST['verzenden']){ $naam = $_REQUEST['naam']; $bedrijf = $_REQUEST['bedrijf']; $adres = $_REQUEST['adres'] ; $postcode = $_REQUEST['postcode'] ; $woonplaats = $_REQUEST['woonplaats'] ; $email = $_REQUEST['email'] ; $telefoon = $_REQUEST['telefoonnummer']; $dag = $_REQUEST['dag']; $maand = $_REQUEST['maand']; $jaar = $_REQUEST['jaar']; $datum = "$dag/$maand/$jaar"; $opmerking = $_REQUEST['opmerking']; $errorstring =''; $ongeldig =''; //Verplichte velden if(!$naam){$errorstring = $errorstring ."naam, ";} if(!$email){$errorstring = $errorstring ."email, ";} if(!$telefoon){$errorstring = $errorstring ."telefoonnummer, ";} if(!eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email)) { $ongeldig ="Gelieve een geldig email-adres in te vullen."; } require ("ClassMathGuard.php"); /* this condition checks the user input. Don't change the condition, just the body within the curly braces */ if (MathGuard :: checkResult($_REQUEST['mathguard_answer'], $_REQUEST['mathguard_code'])) { } else { $errorstring = $errorstring ."CAPTCHA, "; } //Validatie if ($errorstring !== "" and $ongeldig !== ""){ $errorstring = substr($errorstring,0,strlen($errorstring)-2); $errorstring ="<p class='fout'>Gelieve volgende velden correct in te vullen: " . $errorstring; echo "$errorstring<p class='fout'>$ongeldig</p>"; }elseif($errorstring !== ""){ $errorstring = substr($errorstring,0,strlen($errorstring)-2); $errorstring ="<p class='fout'> Gelieve volgende velden correct in te vullen: " . $errorstring; echo "$errorstring"; }elseif($ongeldig !== ""){ echo "<p class='fout'>$ongeldig</p>"; }else{ //email verzenden $headers = 'MIME-Version: 1.0'. "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; $subject = "Contact" ; $message = "Naam: $naam\n Naam bedrijf: $bedrijf\n Adres: $adres , $postcode, $woonplaats\n E-mail: $email\n Telefoonnummer: $telefoonnummer\n Voorkeursdatum: $datum\n Opmerkingen: $opmerking"; // Emailadres en eventueel dankbericht/Onderwerp aanpassen if(mail( "tdejonghe00@hotmail.com", "Subject: Koffie/Info", $message, "From: $email" )){ echo "<p class='juist'>Bedankt om het formulier te hebben ingevuld.</p>";} else{echo"<p class='fout'>Email niet verzonden";} } } ?>
- [php] Mail functie werkt niet
-
09-05-2011, 20:34 #1
- Berichten
- 156
- Lid sinds
- 14 Jaar
[php] Mail functie werkt niet
Laatst aangepast door Thomas De Jonghe : 10-05-2011 om 11:34
-
-
09-05-2011, 20:35 #2
Elephant Media GbR
- Berichten
- 1.253
- Lid sinds
- 18 Jaar
re: [php] Mail functie werkt niet
Krijg je een foutmelding ?
-
09-05-2011, 20:42 #3
- Berichten
- 9
- Lid sinds
- 14 Jaar
re: [php] Mail functie werkt niet
Het wordt toch aangeroepen door een ander script (met invoervelden?)
-
10-05-2011, 11:35 #4
- Berichten
- 156
- Lid sinds
- 14 Jaar
re: [php] Mail functie werkt niet
Ja er zit natuurlijk een formulier achter in html.
En ik krijg geen foutmelding, maar alleen de echo dat de mail niet verstuurd is.
Of op welke manier kan ik de foutmelding terugvinden of zien ?
Kan het zijn dat er iets niet juist is op de host of in de php.ini file ?Laatst aangepast door Thomas De Jonghe : 10-05-2011 om 11:48
-
10-05-2011, 11:54 #5
- Berichten
- 1.047
- Lid sinds
- 16 Jaar
re: [php] Mail functie werkt niet
<?php error_reporting(E_ALL); ?>
Toevoegen bovenaan je code...
-
10-05-2011, 11:58 #6
- Berichten
- 311
- Lid sinds
- 17 Jaar
re: [php] Mail functie werkt niet
Check of je een veld of button met verzenden staan hebt in je form, je doet die controle.
if($_POST['verzenden'])
Daarnaast is REQUEST niet de beste manier, doe liever $_POST, method dient op post te staan in je formulier.
-
10-05-2011, 12:52 #7
- Berichten
- 156
- Lid sinds
- 14 Jaar
re: [php] Mail functie werkt niet
Er is inderdaad een veld met verzenden.
Hij doet de validatie wel, want als ik in de else van mail, mail zelf echo, lijkt alles juist.
Dus alle velden zijn ingevuld, maar hij verstuurd de mail niet.
Error_reporting geeft geen fouten weer.Laatst aangepast door Thomas De Jonghe : 10-05-2011 om 13:07
-
10-05-2011, 17:12 #8
- Berichten
- 5
- Lid sinds
- 13 Jaar
re: [php] Mail functie werkt niet
check eerst of je mail überhaupt aanstaat.
if ( function_exists( 'mail' ) )
{
echo 'mail() is available';
}
else
{
echo 'mail() has been disabled';
}
-
10-05-2011, 17:15 #9
- Berichten
- 943
- Lid sinds
- 15 Jaar
re: [php] Mail functie werkt niet
Misschien de check veranderen in: if($_SERVER['REQUEST_METHOD'] == 'POST'){ script }
-
10-05-2011, 17:47 #10
- Berichten
- 156
- Lid sinds
- 14 Jaar
Re: [php] Mail functie werkt niet
Het ligt aan de host.
Op mijn server en een andere host werkt het wel.
de functie mail is actief.
-
10-05-2011, 17:52 #11
- Berichten
- 750
- Lid sinds
- 15 Jaar
Re: [php] Mail functie werkt niet
Zet dan eens boven aan aangezien je geen error ziet geloof ik niet zo aangezien je nergens checkt of de var wel geset is of niet leeg is.
ini_set('display_errors', 1);
error_reporting(E_ALL);
Waarschijnlijk krijg je een error betreffende de setlocale.
Bovendien is het ook niet helemaal netjes geprogrammeerd qua vars in een string als extra opmerking en al niet te spreken over de $_REQUEST gebruik wat al genoemd was en bovendien het niet gebruik maken van isset en empty functies van php
-
10-05-2011, 18:32 #12
- Berichten
- 5
- Lid sinds
- 13 Jaar
Re: [php] Mail functie werkt niet
Ok de host zou de boel gesloten kunnen hebben.
Gebruik phpmailer class.
http://sourceforge.net/projects/phpmailer/
SMTP is je oplossing.
Aanvullend bericht:
Zet dan eens boven aan aangezien je geen error ziet geloof ik niet zo aangezien je nergens checkt of de var wel geset is of niet leeg is.
ini_set('display_errors', 1);
error_reporting(E_ALL);
Waarschijnlijk krijg je een error betreffende de setlocale.
Bovendien is het ook niet helemaal netjes geprogrammeerd qua vars in een string als extra opmerking en al niet te spreken over de $_REQUEST gebruik wat al genoemd was en bovendien het niet gebruik maken van isset en empty functies van php
En ik krijg geen foutmelding, maar alleen de echo dat de mail niet verstuurd is.Laatst aangepast door PaoloM : 10-05-2011 om 18:39 Reden: Automatisch samengevoegd.
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic