2 $date_full = date("d M Y, H:i:s");
4 $ip = getenv('REMOTE_ADDR');
5 $ip_proxy = getenv('HTTP_X_FORWARDED_FOR');
6 $host = gethostbyaddr($ip);
9 $email=$_POST['email'];
10 $package=$_POST['package'];
11 $comments = ($_POST['comments']) ? stripslashes($_POST['comments']) : '';
12 $nopreview= (int)$_POST['nopreview'];
15 $subject="grml - package report: $package";
17 function checkname($name) {
18 $filter = "/^([a-zA-ZöäüÖÄÜß0-9_\.\-\+\ ])+$/";
19 return preg_match($filter,$name);
22 function checkmail($email) {
23 $filter = "/^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9])+$/";
24 return preg_match($filter,$email);
27 function badwords($text) {
28 $spamfilter = array('viagra','sex ', 'phentermine','free time', 'you may find', 'interesting', 'good site', 'keep alive', 'webmaster', 'web-master', 'great web', 'casino', 'isurance', 'buy', 'porn', 'loan', 'pharmacy', 'closeup', 'goodlife', 'multipart', 'zion', 'jude', 'ausländer', 'content-type', 'url=');
30 $text = strtolower($text);
31 foreach($spamfilter as $word) {
32 $pos = strpos($text, $word);
45 if(!checkname($name)){
46 $error = "Sorry, this does not seem to be a valid name.";
50 $error = "Sorry, without your email address we won't be able to contact you. ;-)";
53 if (!checkmail($email)) {
54 $error = "Sorry, no valid email address found.";
58 $error = "Please provide a package name.";
61 if(badwords($comments)){
62 $error = "We don't accept spam messages.";
65 if ($error) $nopreview = 1;
69 if (($nopreview == 1) && !$error) {
73 $xtra = "From: ($name) $email\r\n";
74 $xtra .= "Content-Type: text/plain; charset=ISO-8859-15\nContent-Transfer-Encoding: 8bit\r\n";
75 $xtra .= "X-Mailer: PHP ". phpversion();
79 $message="Message:\n\n$comments\n\n\nLoggin-Information:\n-------------------\nName: $name\nE-Mail: $email\nDate: $date_full\nIP: $ip\nIP-Proxy: $ip_proxy\nHost: $host\n";
81 if(mail($to,$subject,$message,$xtra)) {
82 $mailsent = "Sending the message was <b>successful</b>. Thanks for your message.";
84 $error = "An error occured while sending mail. Sorry :-(";