login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Mail form (Opgelost)

Offline Orfa - 07/04/2011 11:30
Avatar van OrfaLid Hallo allemaal,

Ik gebruik het onderstaande mail formulier,
om gebruikers de mogelijkheid te geven een bericht naar mijn mail adres te zenden.
Het werkt naar behoren, maar ik had graag dat er een boodschap getoond werd,
wanneer het formulier leeg is en de gebruiker de Send knop aanklikt.
Het invullen van het mail adres mag optioneel zijn,
maar om te voorkomen dat men sendmail.php via de url rechtstreeks activeert,
en zo een massa lege mails naar mijn mail adres kan sturen,
zoek ik dus naar een oplossing om de gebruiker een tekst in te laten vullen,
voor hij het bericht kan versturen.
De code tussen de stippellijnen werkt niet en ik krijg de melding dat de pagina niet kan worden gevonden.
(Als ik de code tussen de stippellijnen weglaat werkt het script wel)

_______________

<?php
$email = $_REQUEST['email'] ;
$message = $_REQUEST['message'] ;


------------------------------------------------------------
if (empty($message)) {
header( "Location: http://www............/empty.html"; );
}
else {
------------------------------------------------------------


mail( "iemand@live.com", ",
$message, "From: $email" );
header( "Location: http://www............/thankyou.html"; );
?>

________________________

Groetjes
Orfa

6 antwoorden

Gesponsorde links
Offline WouterJ - 07/04/2011 11:35
Avatar van WouterJ HTML gevorderde $_REQUEST is een oude super global. Je moet gebruik maken van $_POST of $_GET.

Een goed contact formulier met goede foutafhandeling is http://www.site...CAPTCHA_V2
Bedankt door: Orfa
Offline Orfa - 08/04/2011 10:42
Avatar van Orfa Lid Hallo Waldio

Bedankt voor je hulp,
maar voor het ogenblik zoek ik eigenlijk naar een oplossing voor het bestaande probleem.
Ook wil ik gebruikers niet opzadelen met Captcha, en allerlei verplichte velden.
Enkel het tekstveld moet een teken bevatten voor er kan verstuurd worden.

Orfa
Offline Hend - 08/04/2011 13:25 (laatste wijziging 08/04/2011 15:57)
Avatar van Hend Lid gewoon dit gebruiken:
  1. if(!empty($_POST['message'])){
  2. mail(....);
  3. }

en dan moet je i.p.v. $_REQUEST $_POST gebruiken. Je formulier ziet er dan zo uit:
  1. <form action="pagina.php" method="POST">
  2. </form>
Bedankt door: Orfa
Offline Orfa - 09/04/2011 11:17
Avatar van Orfa Lid Hallo Hend

Het method attribuut voor het form element was reeds "POST",
maar na de code ingevoerd te hebben die je me gaf werkt het nog steeds niet.
Als ik het tekst-veld blank laat en ik klik op de submit knop,
krijg ik het alert venstertje met het bedankje, en wordt mijn mail(leeg) verzonden.
Ik heb $email = $_REQUEST['email'] ; & $message = $_REQUEST['message'] ;
respectievelijk veranderd naar :
$email = $_POST['email'] ; & $message = $_POST['message'] ;
maar dat veranderd niets aan de zaak, mijn mail wordt nog steeds leeg verzonden.

Groetjes
Orfa
Offline Hend - 09/04/2011 15:24 (laatste wijziging 09/04/2011 15:24)
Avatar van Hend Lid Ik denk dat het komt omdat je een " vergeten bent bij het onderwerp.
Dit heb jij:
  1. mail( "iemand@live.com", ", $message, "From: $email" );


en dit moet het zijn:
  1. mail( "iemand@live.com", "", $message, "From: $email" );


door de code tags kun je de kleuren zien, en dan zie je ook dat het bij de eerste code niet klopt.
Offline Orfa - 11/04/2011 08:18
Avatar van Orfa Lid Hoi Hend,

Er is inderdaad een foutje geslopen in de code die ik in het begin van dit topic geplaatst heb.
De code op mijn website is echter wel in orde en ziet er dus zo uit :

  1. mail( "iemand@live.com", "onderwerp van de mail", $message, "From: $email" );


Dus daar lag het niet aan.
-------
OK, ondertussen heb ik het probleem reeds opgelost met de volgende code :

  1. <?php
  2. $email = $_POST['email'] ;
  3. $message = $_POST['message'] ;
  4. if (empty($message)){
  5. header( "Location: http://www............/empty.html" );}
  6. else{
  7. mail( "iemand@live.com", "onderwerp van de mail", $message, "From: $email" );
  8. header( "Location: http://www............/thankyou.html" );}
  9. ?>


Bedankt aan iedereen die geholpen heeft, en misschien tot nog eens.

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