Jump to content
Swieży

Formularz kontaktowy

Recommended Posts

Czy możecie polecić mi dobry skrypt formularz kontaktowego, prostego z typu pola dane,mejl treść wiadmośći - ale jednocześnie nie łapiącego spamu.

I co najważniejsze żebym wiedział o którą domenę jest zapytanie bo chciałbym przekierować wiele na adres na którym będzie formularz:)

Share this post


Link to post
Share on other sites

A czego używasz? Bo ja np WP i Joomla i na WP najlepszy moim zdaniem jest contact form z zabezpieczeniem capcha. Na mojej stronie pojawiło się może z 5 wiadomości spamerskich przez 3 lata, ale nie zrobił tego automat, tylko pakistańczycy i hindusi z deathbycapcha (wiecie o co kaman).

Share this post


Link to post
Share on other sites

Przedstawię tobie prosty formularz kontaktowy na stronę internetową.

 

1. uruchom jakikolwiek edytor tekstu w komputerze,

2. następnie wejdź do właściwości tego edytora tekstu,

3. we właściwościach edytora tekstu, skonfiguruj go tak, aby zapisywał pliki w formacie UTF-8

4. następnie wklej całą poniższą zawartość do edytora tekstu,

5. potem zmień adres email jan@kowalski.pl na własny oraz zmień nazwę domeny www.mojadomena.pl na własną

(wiersz nr 41 - adres email, natomiast wiersz nr 90 - nazwa domeny)

6. zapisz tak przygotowany plik nadając mu nazwę index.php

7. przekopiuj ten plik do głównego katalogu na swoim serwerze, tam, gdzie wskazuje domena dla której chcesz utworzyć formularz kontaktowy.

 

Oczywiście serwer musi obsługiwać php, ale z tego co wiem, to w większości hostingów jest to już standard.

Poniżej przedstawiony formularz sprawdza także, czy są utworzone rekordy MX dla wpisywanego przez jakąś osobę w formularzu kontaktowym adresu email.

Czyli po polsku - sprawdza czy wpisany w formularzu kontaktowym adres email istnieje :)

 

Oczywiście możesz sobie zmieniać poszczególne elementy i dopasowywać formularz do swoich potrzeb.

Do listu został dołączony podgląd formularza.

Rozmiar pola treści wiadomości można zmieniać myszką. Wystarczy w tym celu pociągnąć za dolny prawy róg tego pola.

powodzenia

 

 

<?php header('Content-Type: text/html; charset=utf-8'); ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>Kontakt do właściciela domeny</title>
</head>
<center>
<br /><br /><br /><br /><br />
<?php
//--- początek formularza ---
if(empty($_POST['submit'])) {
?>
<table>
<form action="" method="post" content="text/html; charset=utf-8">
<tr><b>Formularz kontaktowy:</b><br /><br />
<td>Imię i Nazwisko:</td>
<td><input type="text" name="formName"/></td>
</tr>
<tr>
<td>email:</td>
<td><input type="text" name="formEmail"/></td>
</tr>
<tr>
<td>Treść wiadomości:</td>
<td><textarea name="formText"></textarea></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="submit" value="Wyślij formularz"/></td>
</tr>
</form>
</table>
<?php
} else {
//twoje dane
$email = 'jan@kowalski.pl';
//dane z formularza
$formName = $_POST['formName'];
$formEmail = $_POST['formEmail'];
$formText = $_POST['formText'];
if(!empty($formName) && !empty($formEmail) && !empty($formText)) {
//--- początek funkcji weryfikującej adres e-mail ---
function checkMail($checkmail) {
if(filter_var($checkmail, FILTER_VALIDATE_EMAIL)) {
if(checkdnsrr(array_pop(explode("@",$checkmail)),"MX")){
return true;
}else{
return false;
}
} else {
return false;
}
}
//--- koniec funkcji ---
if(checkMail($formEmail)) {
//dodatkowe informacje: ip i host użytkownika
$ip = $_SERVER['REMOTE_ADDR'];
$przegladarka = $_SERVER['HTTP_USER_AGENT'];
$host = gethostbyaddr($_SERVER['REMOTE_ADDR']);
$dzisiaj1 = date("r");
$dzisiaj2 = date("T");
//tworzymy szkielet wiadomości
//treść wiadomości
$mailText = "$formText\n
$formName,
email: $formEmail\n
----------------------------------------------------------------------
wysłano:
kiedy: $dzisiaj1 ($dzisiaj2)
skąd:
IP: $ip
ISP: $host
przeglądarka:
$przegladarka
----------------------------------------------------------------------";
//adres zwrotny
$mailHeader = "From: $formName <$formEmail>";
//funkcja odpowiedzialna za wysłanie e-maila
@mail($email, 'wysłano z: www.mojadomena.pl', $mailText, $mailHeader) or die('Błąd: wiadomość nie została wysłana');
//komunikat o poprawnym wysłaniu wiadomości
echo 'Wiadomość została wysłana';
} else {
echo 'Adres e-mail jest niepoprawny';
}
} else {
//komunikat w przypadku nie powodzenia
echo 'Wypełnij wszystkie pola formularza';
}
//--- koniec formularza ---
}
?>
</center>

</html>

Edited by oyer

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×