Email

Status
Niet open voor verdere reacties.

timmy92

Gebruiker
Lid geworden
25 okt 2006
Berichten
43
Beste allemaal,

ik ben een website aan het maken. Nu wil ik grag dat als je op een knop klik (de knop verzend) dat er een email verzonden wordt. dit wil niet lukken weet iemand hoe dit moet of wat ik fout deo?

dit is de code die ik gebruik:

PHP:
<?php  

//de instellingen:   

$Eigen_mail = "vbprojecten92@gmail.com";  
$Eigen_naam = "Thomas";  
$Onderwerp = "Reactie";  


if($_REQUEST['verzend'])  
{  
    $naam = $_REQUEST['naam'];  
    $email = $_REQUEST['email'];  
    $opmerkingen = $_REQUEST['opmerkingen'];  

    $browser = $HTTP_USER_AGENT;  
    $ip = $REMOTE_ADDR;  

    // kijken of het een juist email adres is:  
    $error = false;  
    if ((!ereg(".+\@.+\..+", $email)) || (!ereg("^[a-zA-Z0-9_@.-]+$", $email))){  
    $error .= "ongeldig emailadres<br>";}  

    //als het een onjuist emailadres is:
    if($error)  
    {  
        echo $error;  
    }  
    else   
    {  
        //geen fouten:
        //Het bericht maken: 
        $boodschap = "Reactie <br />";  
        $boodschap .= "Naam: " . $naam . "<br />";  
        $boodschap .= "Emailadres: " . $email . "<br />";  
        $boodschap .= "Bericht: " . $opmerkingen . "<br />";  
        $boodschap .= "-----------------------------<br />";  
        //informatie die misschien handig kan zijn: 
        $boodschap .= "Web - Browser: " . $browser . "<br />";  
        $boodschap .= "IP - adres: " . $ip . "<br />";  

        // maak de headers  
        $headers  = 'MIME-Version: 1.0' . "\r\n";  
        $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";  
        $headers .= 'From: ' . $naam . ' <' . $email . '>' . "\r\n";  
        $headers .= 'Reply-To: ' . $naam . ' <' . $email . '>' . "\r\n";  
         
        // Verstuur het mailtje: 
        mail($Eigen_naam . "<" . $Eigen_mail . ">", $Onderwerp, ' 
         
<html>  
<head>  
<style>  

body  
{  
font-family: "Verdana";  
}  

</style>  
</head>  
<body>  

' . $boodschap . ' 

</body>  
</html>  
', $headers);   



        echo "Je zal zo snel mogenlijk een reacite ontvangen!";
        //echo "<br>"." Aan: $Eigen_mail"."<br>"."Onderwerp: $Onderwerp"."<br>"."Van: $naam , <$email>"."<br>"."Bericht: $boodschap"."<br>";
    }  
}  
else {   
    ?>  
    <html>  
    <head><title></title></head>  
    <body>  
    <form method="POST" action="<?php echo $PHP_SELF; ?>">  
    <p>*Naam: <input type="text" name="naam"></p>  
    <p>*Email adres: <input type="text" name="email"></p>  
    <p>*Bericht: <p><textarea name="opmerkingen" rows="10" wrap="hard"></textarea></p>  
    <p><input type="submit" value="verzend" name="verzend">  
    <input type="reset" value="reset"></p> 
    <br>
    <br>
    De met een * gemarkerde velden zijn verplicht!
    </form>  
    </body>  
    </html>  
<? } ?>

het is dus de bedoeling dat hij als je alles hebt ingevuld en je op de knop verzend kilikt een mail verstuurd naar vbprojecten92@gmail.com. hoe moet dit want hij verzend geen mail nu.
 
Laatst bewerkt:
Probeer dit maar is, kijk goed waar jou script is ingevoegd binnen de html codes en het script moet ook eindigen op .php en niet html.

Ik heb ook nog wat aanpassingen gemaakt zo dat je wat meer info ontvangt.

Save het script als 'mailform.php'

Succes

PHP:
<%@LANGUAGE="JAVASCRIPT" CODEPAGE="1252"%>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<?php   

//de instellingen:

$Eigen_mail = "vbprojecten92@gmail.com";   
$Eigen_naam = "Thomas";   
$Onderwerp = "Reactie";   


if($_REQUEST['verzend'])   
{   
    $naam = $_REQUEST['naam'];   
    $email = $_REQUEST['email'];   
    $opmerkingen = $_REQUEST['opmerkingen'];   

$tgl = date("l d F Y - H:i:s ");  // was orspronkelijk - $tgl = date("F d, Y - h:i A");
	
   /* zet de locale op Dutch */
   setlocale (LC_ALL, 'nl_NL');
   /* Output voorbeeld: vrijdag 22 december 1978 */
   $tgl = strftime ("%A %e %B %Y", mktime ($tgl));

   $idx = date("Y-m-d H:i:s");  //  ik had - $idx = date("H:i");
   
   $tijd =substr($idx, 11, 5);   

if (isset($_SERVER['HTTP_X_FORWARDED_FOR']) && eregi("^[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}$",$_SERVER['HTTP_X_FORWARDED_FOR'])) {
       $ipnum = $_SERVER['HTTP_X_FORWARDED_FOR'];
   } else {
       $ipnum = getenv("REMOTE_ADDR");
   }

     $hst = $_SERVER["HTTP_HOST"];
     $browser = $_SERVER["HTTP_USER_AGENT"];
//    $browser = $HTTP_USER_AGENT;   
//    $ip = $REMOTE_ADDR;   

    // kijken of het een juist email adres is:   
    $error = false;   
    if ((!ereg(".+\@.+\..+", $email)) || (!ereg("^[a-zA-Z0-9_@.-]+$", $email))){   
    $error .= "ongeldig emailadres<br>";}   

    //als het een onjuist emailadres is: 
    if($error)   
    {   
        echo $error;   
    }   
    else    
    {   
        //geen fouten: 
        //Het bericht maken:  
        $boodschap = "Prive bericht. <br />";   
        $boodschap .= "-----------------------------------<br />";  		
        $boodschap .= "Van. . . . . . : " . $naam . "<br />"; 
        $boodschap .= "IP - adres . . : " . $ipnum . "<br />";  
        $boodschap .= "Provider . . . : " . $hst . "<br />";		
        $boodschap .= "Datum. . . . . : " . $tgl . "<br />";
        $boodschap .= "Tijd . . . . . : " . $tijd . "<br />";
        $boodschap .= "Emailadres . . : " . $email . "<br />";   
        $boodschap .= "Browser. . . . : " . $browser . "<br />";   
        $boodschap .= "-----------------------------------<br />";   
        //informatie die misschien handig kan zijn:  
        $boodschap .= "Bericht. . . . : " . $opmerkingen . "<br />";  


        // maak de headers   
        $headers  = 'MIME-Version: 1.0' . "\r\n";   
        $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";   
        $headers .= 'From: ' . $naam . ' <' . $email . '>' . "\r\n";   
        $headers .= 'Reply-To: ' . $naam . ' <' . $email . '>' . "\r\n";   
          
        // Verstuur het mailtje:  "<" . $Eigen_mail . ">"
        mail($Eigen_naam . "<" . $Eigen_mail . ">" , $Onderwerp, '  
<html>   
<head>   
<style>   

body   
{   
font-family: "Courier New";
font-size: "12";
}   

</style>   
</head>   
<body>   

' . $boodschap . '  

</body>   
</html>   
', $headers);    



        echo "Bedankt voor je E-mail, we zullen je E-mail zo snel mogelijk beantworden in dien dit nodig is."; 
        //echo "<br>"." Aan: $Eigen_mail"."<br>"."Onderwerp: $Onderwerp"."<br>"."Van: $naam , <$email>"."<br>"."Bericht: $boodschap"."<br>"; 
    }   
}   
else {    
    ?>   
    <html>   
    <head><title></title></head>   
    <body>   
    <form method="POST" action="<?php echo $PHP_SELF; ?>">
  <p>* Naam : <br>
    <input type="text" name="naam">
  </p>   
    
  <p>* Email adres : <br>
    <input type="text" name="email">
  </p>   
    
  <p>* Bericht : <br>
    <textarea name="opmerkingen" cols="50" rows="10" wrap="hard"></textarea>
  <p><input type="submit" value="Verstuur" name="verzend">   
    <input type="reset" value="Reset"></p>  

    Als de met een * gemarkerde velden blanco zijn kan het bericht niet verzonden worden ! 
    </form>   
    </body>   
    </html>   
<? } ?> 

<body>

</body>
</html>
 
Laatst bewerkt:
Morge,

Hoe krijg je zo'n veld waar jij je script in hebt gezet bij je vraag, want dan zet ik het daar in.

Ik gebruik zelf nu ook dit script, zij het met nog wat anderen aanpassingen en dat werkt prima.
Kijk maar op mijn site ( even op de signature klikken ) dan kan je het zien.
 
Hoe krijg je zo'n veld waar jij je script in hebt gezet bij je vraag, want dan zet ik het daar in.

Zet de tekst tussen PHP brackets.. op de volgende manier dus:

[ php] Tekst hier [/ php]

Maar dan zonder spaties :D
 
Nou het probleem is dat ik geen mail binen krijg :/ hij zegt dat de mail verzonden is maar ik krijg hem niet binnen!?
 
heb ik al gedaan maar kan het zijn dat outlook moet werken om een bericht met php te verzenden? want die werkt niet.....
 
heb ik al gedaan maar kan het zijn dat outlook moet werken om een bericht met php te verzenden? want die werkt niet.....

Maar hoe ontvang je dan je E-mail ?

Nee, voor zover ik weet niet.

Als me nog iets te binnen schiet zal ik het melden, op het momment heb ik geen ideeen meer.
 
Als jij je email gewoon via je browser (bijvoorbeeld www.hotmail.com) ontvangt is dat ook prima, maar als je je berichten via outlook ontvangt en die werkt niet dan kan je ze natuurlijk niet lezen :p
 
hoe bedoel je dat? (Maar hoe ontvang je dan je E-mail ?)

Nou, je zegt dat outlook niet werk, dus hoe ontvang je dan je eventueele E-mail.

Outlook express, Incredimail en/of wat je al nog niet meer hebt voor programma's om E-mail te ontvangen.
 
Ik gebruik zelf ook een mailform in verband met gmail en bij mij komt het altijd in mn spamfolder terecht, maar het komt hier wel degelijk aan dus ik heb helaas geen idee wat er mis gaat bij jou :confused:

Ik denk dat je beter een heel ander script kan gebruiken ;)
 
ik gebruik gmail om de mail te ontvangen...

Ik zou outlook(expres) is installeren als ik jou was en het dan nog is proberen maar, dan met een gewoon E-mail adres van je provider.

Er schiet me iets te binnen, de gewone providers bij wie je je internet toegang hebt en je ruimte voor je homepage, ondersteunen meestal geen PHP en andere active scripts.
Controleer dit even bij de provider waar je je site hebt staan.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan