login  Naam:   Wachtwoord: 
Registreer je!
 Forum

mail functie (Opgelost)

Offline glekkes - 15/11/2010 16:25 (laatste wijziging 15/11/2010 16:53)
Avatar van glekkesNieuw lid Mijn script:

  1. <?php
  2. if (isset($_REQUEST['verzenden'])){
  3. if ($_REQUEST['naam']=="") {
  4. echo "gelieve naam in te vullen<BR />";
  5. }elseif ($_REQUEST['Activiteit']=="Kies") {
  6. echo "gelieve een activiteit te kiezen<BR />";
  7. }elseif ($_REQUEST['straat']=="") {
  8. echo "gelieve straat in te vullen<BR />";
  9. }elseif ($_REQUEST['nummer']=="") {
  10. echo "gelieve nummer in te vullen<BR />";
  11. }elseif ($_REQUEST['postcode']=="") {
  12. echo "gelieve postcode in te vullen<BR />";
  13. }elseif ($_REQUEST['gemeente']=="") {
  14. echo "gelieve gemeente in te vullen<BR />";
  15. }elseif ($_REQUEST['tel']=="") {
  16. echo "gelieve telefoon in te vullen<BR />";
  17. }
  18.  
  19. else{
  20.  
  21. $naam = $_REQUEST['naam'];
  22. $email = $_REQUEST['email'];
  23. $headers = "FROM: $naam <$email>";
  24.  
  25. $bericht = "naam: $naam \n";
  26. $bericht .= "activiteit: ".$_REQUEST['Activiteit']."\n";
  27. $bericht .= "straat: ".$_REQUEST['straat']."\n";
  28. $bericht .= "nummer: ".$_REQUEST['nummer']."\n";
  29. $bericht .= "postcode: ".$_REQUEST['postcode']."\n";
  30. $bericht .= "gemeente: ".$_REQUEST['gemeente']."\n";
  31. $bericht .= "land: ".$_REQUEST['Land']."\n";
  32. $bericht .= "tel: ".$_REQUEST['tel']."\n";
  33. $bericht .= "fax: ".$_REQUEST['fax']."\n";
  34. $bericht .= "e-mail: $email \n";
  35. $bericht .= "contact:".$_REQUEST['contact']."\n";
  36. $bericht .= "--------------------------------------------------------------------------\n";
  37. $bericht .= "vraag of opmerking:\n";
  38. $bericht .= $_REQUEST['opmerking'];
  39. mail("mijnmail@hotmail.com", $_REQUEST['Activiteit'], $bericht, $headers);
  40. echo "<p>Formulier is succesvol verzonden. Er zal zo snel mogelijk op geantwoord worden</p>";
  41. }
  42. }


Dit is exact hetzelfde script als ik op andere websites gebruik en daar werkt het overal. Heeft er iemand een idee waarom hij deze keer geen mail verstuurd?
Ik kom wel op de php pagina terecht want k krijg de onderste echo, hij verstuurd gewoon de mail niet.

alvast bedankt
?>

16 antwoorden

Gesponsorde links
Offline Theeboris - 15/11/2010 16:32
Avatar van Theeboris Onbekend Heb je een gratis host?
Offline Sam - 15/11/2010 16:54 (laatste wijziging 15/11/2010 16:58)
Avatar van Sam PHP expert Begin maar met je code in code tags te zetten en idention te gebruiken zodat wij ze iets beter kunnen lezen.

Edit: Wat zijn de instellingen van je mailserver? Doe eens:
  1. $mailed = mail();
  2. var_dump($mailed);

Als dat false teruggeeft is er is mis met de instellingen van je mailserver.
Offline Kevin - 15/11/2010 19:02
Avatar van Kevin Crew Ajax/REST @glekkes: lange stukken code graag op http://www.plaatscode.be zetten.
Offline glekkes - 16/11/2010 15:04
Avatar van glekkes Nieuw lid
excuseer mense! ben net nieuw zodus 
gratis host, met php ondersteuning want mijn andere sites werken wel allemaal perfect zodus.

leesbare code: http://www.plaatscode.be/140249/
Offline Koen - 16/11/2010 15:21
Avatar van Koen PHP expert Glekkes, kan je even zeggen bij welke gratis host dat je zit? Het zou namelijk wel eens kunnen dat deze geen mailfunctie ondersteunt, zoals Sam al had gezegd.

Vaak nemen gratis hosts deze maatregelen omdat mensen of spambots de kans zien om via hen spam te versturen, en je kan je waarschijnlijk wel voorstellen dat die hostingbedrijven liever niet op een zwarte lijst staan.

Wat je kan doen om dit na te kijken is even een bestand "info.php" aanmaken met onderstaand stukje code als inhoud:
  1. <?php

phpinfo() is een functie die ongeveer alle instellingen uit de PHP configuratie (php.ini) leest en ze in een overzichtelijke tabel steekt.

In die tabel moet je twee dingen nakijken: of enerzijds het programma "sendmail" (icm php) geïnstalleerd is, en of de functie mail() niet wordt geblokkeerd als zijnde een uitgeschakende functie, dit vind je onder disable_functions.

Een oplossing zou zijn om met behulp van de ingebakken smtp functies in PHP verbinding te maken met een externe (of locale) smtp-server en via die weg je mails te verzenden.

In jouw geval zou ik eigenlijk wel eens overwegen of het niet beter zou zijn om gewoon zelf ergens betaalde hosting te huren, tegenwoordig vallen die prijzen heel goed mee, voor 1.5 a 2 euro per maand heb je al een redelijk deftig pakket (dit is heel wat minder dan wat er maandelijks zoal wordt uitgegeven aan bijvoorbeeld snoepgoed ).

Succes
Offline glekkes - 16/11/2010 18:56 (laatste wijziging 16/11/2010 18:58)
Avatar van glekkes Nieuw lid Ik host mijn websites bij 000webhost.com en daar ondersteunen ze wel php en ook de mail functie. want alle sites die ik al gemaakt heb, host ik daar en overal gebruik ik dit contactformulier en daar werkt het wel dus zou ik denken dat het hier ook wel moet werken.
Het is bij deze website, de laatste nieuwe, waar het maar niet wil verzenden. Dus misschien ligt het niet aan de code zelf. Ik weet het in ieder geval niet meer en daarom post ik mijn probleem hier, mss dat iemand anders hetzelfde heeft meegemaakt.
Offline Sam - 16/11/2010 19:22
Avatar van Sam PHP expert Heb je al geprobeerd wat ik voorstelde? Op die manier kan je ook kijken of de mail wel verzonden wordt maar misschien gewoon niet aankomt.
Offline glekkes - 17/11/2010 17:27 (laatste wijziging 17/11/2010 17:28)
Avatar van glekkes Nieuw lid jou methode geeft True weer dus aan de mailserver ligt het al niet.
Ik heb al verschillende e-mailadressen geprobeerd en komt telkens niet aan. 
Offline prienstra - 17/11/2010 21:57
Avatar van prienstra MySQL interesse Probeer eens de mailfunctie zonder de rest van de code, dus enkel:
  1. <?php
  2. mail("jouw@e-mailadres.nl","Onderwerp","bodytekst","From: Je Naam<jouw@e-mailadres.nl>");
  3. ?>
Offline Gerard - 17/11/2010 22:20
Avatar van Gerard Ouwe rakker Haal dan ook de header weg in het vierde argument. Die kan ook nog wel eens roet in het eten schoppen wanneer het e-mail adres wat je als From zet niet op dezelfde server aanwezig is. Ik ken al 1 Nederlandse host die dat ingesteld heeft.
Offline prienstra - 17/11/2010 22:23
Avatar van prienstra MySQL interesse Als je echt idd enkel de mailfunctie wil proberen, haal die dan idd ook weg.
Offline glekkes - 17/11/2010 23:18
Avatar van glekkes Nieuw lid Al de andere php-code werkt wel dus ik veronderstel wel dat het aan de mail functie ligt.
Maar zijn daar dan geen oplossingen voor. het rare is gewoon dat het bij mijn andere sites wel werkt en deze is op exact dezelfde manier gemaakt, zelfde host,...
Offline Sam - 17/11/2010 23:31
Avatar van Sam PHP expert
glekkes schreef:
Al de andere php-code werkt wel dus ik veronderstel wel dat het aan de mail functie ligt.
Maar zijn daar dan geen oplossingen voor. het rare is gewoon dat het bij mijn andere sites wel werkt en deze is op exact dezelfde manier gemaakt, zelfde host,...

Het ligt niet aan de mail() functie, dat heb je zelf aangetoond. De functie returned true dus ze werkt.
Offline glekkes - 18/11/2010 13:59
Avatar van glekkes Nieuw lid Waaraan kan het dan wel liggen? aan de mailserver ook niet want het werkt bij geen enkel e-mailadres.
Offline Aar - 18/11/2010 15:02
Avatar van Aar PHP interesse Aan je webhost dan?
Ga daar eens aan de bel hangen?
Offline glekkes - 18/11/2010 16:04 (laatste wijziging 18/11/2010 22:24)
Avatar van glekkes Nieuw lid Daar ligt het ook niet aan, want elke andere site die ik daar gehost heb daar werkt het wel.

Ondertussen is het opgelost!
Het lag dus wel aan de server, raar dat het maar bij enkele is.
Maar heb gwn men domeinserver verwijdert en opnieuw aangemaakt.

Toch bedankt aan iedereen die me wou helpen

grtz
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.232s