Thread subject: pHpFusion Nederlands (BE|NL) » Ondersteuning, Themas, Infusies, Modificaties en Installatie :: Formulier

Posted by T013S on 09 december 2008, 17:32
#5

Quote

Wanabo schreef:
Haal de php tags weg en het werkt zie voorbeeld.

Quote

openside;

Code

// geef e-mail adres op van ontvanger
$mail_ontv = "mijn@email.com";

// is niet 100% !!!
function checkmail($mail)
{
    $email_host = explode("@", $mail);
    $email_host = $email_host['1'];
    $email_resolved = gethostbyname($email_host);

    if ($email_resolved != $email_host && eregi("^[0-9a-z]([-_.~]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$mail))
        $valid = 1;

    return $valid;
}

// als er niet op submit is gedrukt, of als er wel op is gedrukt maar niet alles ingevoerd is
if (!$_POST['submit'] || $_POST['submit'] && (!$_POST['naam'] || !$_POST['mail'] || !checkmail($_POST['mail']) || !$_POST['msggs'] || !$_POST['onderwerp']))
{
    if ($_POST['submit'] && (!$_POST['naam'] || !$_POST['mail'] || !checkmail($_POST['mail']) || !$_POST['msggs'] || !$_POST['onderwerp']))   
    {
        echo "Je bent je naam, e-mail adres, onderwerp of bericht vergeten in te vullen. Ook kan het zijn ";
        echo "dat je een verkeerd e-mail adres hebt ingevuld.

";
    }
     
    // form + tabel
    echo "

";
    echo "";
     
    // naam
    echo "";
    echo "";
     
    // space
    echo "";
     
    // mail
    echo "";
    echo "";
     
    // space
    echo "";
     
    // mail
    echo "";
    echo "";
     
    // space
    echo "";
     
    // mail
    echo "";
    echo "";
     
    // space
    echo "";
     
    // button
    echo "";
    echo "";
     
    // sluit form + tabel
    echo "";
    echo "
Naam:
 
E-mail adres:
 
Inzending:
 
Bericht:
 
 
";
}
// versturen naar
else
{     
    // set datum
    $datum = date("d.m.Y H:i");
     
    // set ip
    $ip = $_SERVER['REMOTE_ADDR'];
     
    $inhoud_mail = "===================================================\n";
    $inhoud_mail .= "Ingevulde contact formulier\n";
    $inhoud_mail .= "===================================================\n\n";
   
    $inhoud_mail .= $_SERVER['SCRIPT_URI'] . "\n\n";

    $inhoud_mail .= "Naam: " . $_POST['naam'] . "\n";
    $inhoud_mail .= "E-mail adres: " . $_POST['mail'] . "\n";
    $inhoud_mail .= "Bericht:\n";
    $inhoud_mail .= $_POST['msggs'] . "\n\n";
     
    $inhoud_mail .= "Verstuurd op " . $datum . " via het ip " . $ip . "\n\n";
     
    $inhoud_mail .= "===================================================\n\n";
   
    // --------------------
    // spambot protectie
    // ------
    // van de tutorial: http://www.phphulp.nl/php/tutorials/10/340/
    // ------
   
    $headers = "From: " . $_POST['naam'] . " <" . $_POST['mail'] . ">";
   
    $headers = stripslashes($headers);
    $headers = str_replace("\n", "", $headers); // Verwijder \n
    $headers = str_replace("\r", "", $headers); // Verwijder \r
    $headers = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $headers)); // Slashes van quotes
   
    $_POST['onderwerp'] = str_replace("\n", "", $_POST['onderwerp']); // Verwijder \n
    $_POST['onderwerp'] = str_replace("\r", "", $_POST['onderwerp']); // Verwijder \r
    $_POST['onderwerp'] = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $_POST['onderwerp'])); // Slashes van quotes
     
    mail($mail_ontv, $_POST['onderwerp'], $inhoud_mail, $headers);
     
    echo "

Je e-mail is verstuurd

";
   
    echo "

Bedankt voor de inzendig.";
    echo "De inzending wordt eerst gecontroleerd voordat de inzending op de website komt.

";
     
}


closeside;


heb ik gedaan en nu krijg ik dit: http://sartob1.nl/files/viewpage.php?page_id=79