login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Hij verstuurt geen mail

Offline SomaQan - 17/03/2007 12:50 (laatste wijziging 17/03/2007 23:30)
Avatar van SomaQanPHP beginner Ik heb een Contact script gemaakt waar ik geen foute tegen kom maar alleen krijg ik geen mail binnen 

Script

  1. <?php
  2.  
  3.  
  4. if( $_SERVER['REQUEST_METHOD'] == 'POST')
  5.  
  6. {
  7. $naam = htmlspecialchars($_POST['naam']);
  8. $onderwerp = htmlspecialchars($_POST['$onderwerp']);
  9. $bericht = htmlspecialchars($_POST['bericht']);
  10. $ontvanger = 'psvplace@hotmail.com';
  11.  
  12. if( empty( $naam ) )
  13. {
  14. $fout .= "U heeft geen naam opgegeven.<br />";
  15. }
  16. if( empty( $onderwerp ) )
  17. {
  18. $fout .= "U heeft geen onderwerp opgegeven.<br />";
  19. }
  20. if( empty( $bericht ) )
  21. {
  22. $fout .= "U heeft geen bericht opgegeven!<br />";
  23. }
  24.  
  25. else{
  26. $header = "From: ".$naam." < ".$onderwerp." >";
  27. mail($naam, $onderwerp, $bericht, $ontvanger);
  28.  
  29. echo'U mail is verzonden <b>'.$naam.'</b>';
  30. }
  31. }
  32. ?>


Waar kan het aan liggen ?

Citaat:
PieterC Edit:
Ik ergerde me echt wel hard aan de dt fout. Hij verstuurt = tegenwoordige tijd, hij speelt.

7 antwoorden

Gesponsorde links
Offline phpfreak - 17/03/2007 13:12 (laatste wijziging 17/03/2007 13:16)
Avatar van phpfreak PHP beginner heb hetzelfde probleem enkel heb ik geen headers ingevult, emailadres klopt en krijg hem niett aan.. misschien liegt het aan de hosting waar ik bij ben? (noes-media.be)

@SomaQan
begin al eens met $naam => $_post["naam"] te maken.
En je foutcontrole klopt ook niet helemaal nu gaat hij enkel het bericht niet versturen als er geen bericht is ingevult, als je naam en onderwerp leeg laat, gaat hij het nog steeds versturen.
En zetook eens bij mail($naam) eerst mail($email) hij gaat niet zoeken naar die naam en dan het emailadres ervan zoeken en daar naar versturen ofzo ;)
kijk hier eens?:)
dit zou een beter script zijn
Offline Ultimatum - 17/03/2007 13:24
Avatar van Ultimatum PHP expert hoezo hij heeft toch van $_POST['naam'] gebruikt?

En wat je beter kan doe n is ipv $fout .= $fout[] maken, dan slaat hij alles op in een array, met count kan je kijken of de array groter is dan 0, zoja laat ale fouten zien zonee verstuur email..
Offline vinTage - 17/03/2007 13:59
Avatar van vinTage Nieuw lid
  1. $onderwerp = htmlspecialchars($_POST['$onderwerp']);
klopt toch ook niet ? die $ moet daar weg.
Offline Ibrahim - 17/03/2007 14:24
Avatar van Ibrahim PHP expert en die $fout zal een notice oproepen, aangezien je hem nergens eerst aanmaakt
Offline SomaQan - 17/03/2007 15:26
Avatar van SomaQan PHP beginner $fout moet opgeroepen worden dat was ik vergeten

Offline phpfreak - 17/03/2007 19:18
Avatar van phpfreak PHP beginner
Citaat:
hoezo hij heeft toch van $_POST['naam'] gebruikt?


ja, merkte ik daarna, sorry =$
Offline ikkedikke - 17/03/2007 19:45
Avatar van ikkedikke PHP expert Kijk eens naar de phpmanual van mail. je doet het namelijk compleet verkeerd met welke var waar.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.197s