Formularz kontaktowy - Wzór do wykorzystania

srebny

Avatar: srebny

2009-09-25 15:25

Witam
Na forum znajduje się kilka propozycji formularza (ale miałem trochę kłoptów z ich dodaniem do Quick - w zależności od serwerów czasami nie działały albo coś wnich fiksowało) tak więc postanowiłem dodać ku uciesze innych :) formularz który przystosowałem ostatni dla znajomego i przetestowałem na kilku serwerach.
Jest to bardzo prosty formularz ale może komuś się przyda (tylko nie pamiętam skąd go zasałem :) ).

A więc czas zacząć wykład:

1 tworzymy nową stronę
2 wchodzimy edycję kodu żródłowego i wklejamy tam poniższy kod:

<form method="post" action="form2mail.php">
<table border="0" cellspacing="0" cellpadding="0" width="500" bgcolor="#cccccc" align="center">
<tbody>
<tr>
<td>
<table border="0" cellspacing="1" cellpadding="3" width="648" align="center" style="width: 648px; height: 458px">
<tbody>
<tr bgcolor="#ffffff">
<td align="left"><span style="font-size: small"><span style="color: #ff0000">Prosimy o nie używanie polskich znak&oacute;w podczas</span></span></td>
<td align="left"><span style="font-size: small"><span style="color: #ff0000">wypełniania formularza.</span></span></td>
</tr>
<tr bgcolor="#ffffff">
<td align="right"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Imie i Nazwisko: </font></td>
<td align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><input id="name" name="Imie i Nazwisko" type="text" /></font></td>
</tr>
<tr bgcolor="#ffffff">
<td align="right"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Email: </font></td>
<td align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><input id="email" name="email" type="text" /> </font></td>
</tr>
<tr bgcolor="#ffffff">
<td align="right"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Temat&nbsp;:</font></td>
<td align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><select id="subject" name="Temat">
<option value="Technical" selected="selected">Technical</option>
<option value="Sales">Sales</option>
<option value="Other">Other</option>
</select></font></td>
</tr>
<tr bgcolor="#ffffff">
<td align="right"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Jakim produktem jestes zaintersowany?<font size="1"><br />
*użyj CTRL&nbsp;aby zaznaczyć kilka pozycji</font>&nbsp;</font></td>
<td align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><select multiple="multiple" size="5" name="Jakim produktem jestes zaintersowany?&lt;[]">
<option value="Form2Mail">Form2Mail</option>
<option value="e-Dating">e-Dating</option>
<option value="Affiliate manager Pro">Affiliate manager Pro</option>
<option value="Keyword Frequency">Keyword Frequency</option>
<option value="None">None</option>
</select> </font></td>
</tr>
<tr bgcolor="#ffffff">
<td align="right"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Jak mamy sie z toba skontaktowac?</font></td>
<td align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><label><input type="radio" name="Jak mamy sie z toba skontaktowac?" value="email" />Email</label>&nbsp;<br />
<label><input type="radio" name="Jak mamy sie z toba skontaktowac?" value="Telefon" />Telefonicznie (Proszę podać w polu wiadomość)</label>&nbsp;</font></td>
</tr>
<tr bgcolor="#ffffff">
<td align="right"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Czy zapoznałes się z pomoca? </font></td>
<td align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><input id="read_FAQ" type="checkbox" name="Czy zapoznales sie z pomoca?" value="TAK" />TAK</font></td>
</tr>
<tr bgcolor="#ffffff">
<td align="right"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Wiadomość:</font></td>
<td align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><textarea id="Wiadomosc" rows="6" cols="40" name="Wiadomosc"></textarea></font></td>
</tr>
<tr bgcolor="#ffffff">
<td colspan="2" align="center"><input type="submit" name="Submit" value="Wyślij" /></td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</form>
<p>&nbsp;</p>

3 zapisujemy stronę .:)

4 do np. notatnika albo innego edytora wklejamy poniższy kod:


<?php 
# You can use this script to submit your forms or to receive orders by email.
$MailToAddress "meil@wp.pl"// your email address
$redirectURL "http://www.twojadomena.eu/?stronka,43"// the URL of the thank you page.

# optional settings
$MailSubject "[Temat wiadomosci]"// the subject of the email
$MailToCC ""// CC (carbon copy) also send the email to this address (leave empty if you don't use it)
# in the $MailToCC field you can have more then one e-mail address like "a@yoursite.com, b@yoursite.com, c@yoursite.com"

# If you are asking for a name and an email address in your form, you can name the input fields "name" and "email".
# If you do this, the message will apear to come from that email address and you can simply click the reply button to answer it.

# If you have a multiple selection box or multiple checkboxes, you MUST name the multiple list box or checkbox as "name[]" instead of just "name" 
# you must also add "multiple" at the end of the tag like this: <select name="myselectname[]" multiple> 
# you have to do the same with checkboxes

# This script was written by George A. & Calin S. from Web4Future.com
# There are no copyrights in the sent emails.

# SPAMASSASSIN RATING: 0.4

# DO NOT EDIT BELOW THIS LINE UNLESS YOU KNOW WHAT YOU ARE DOING ===================================================
# ver. 1.6.2
if (preg_match ("/".$_SERVER["SERVER_NAME"]."/i"$_SERVER["HTTP_REFERER"])) {
$w4fMessage "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\"><html><head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-2\"></head><body>";
if (count($_GET) >0) {
    
reset($_GET);
    while(list(
$key$val) = each($_GET)) {
        
$GLOBALS[$key] = $val;
        if (
is_array($val)) { 
            
$w4fMessage .= "<b>$key:</b> ";
            foreach (
$val as $vala) { 
                
$vala =stripslashes($vala);
                
$w4fMessage .= "$vala, ";
            } 
            
$w4fMessage .= "<br>";
        }     
        else {
            
$val stripslashes($val);
            if ((
$key == "Submit") || ($key == "submit")) { }     
            else {     if (
$val == "") { $w4fMessage .= "$key: - <br>"; }
                    else { 
$w4fMessage .= "<b>$key:</b> $val<br>"; }
            }
        }
    } 
// end while
}//end if
else {
    
reset($_POST);
    while(list(
$key$val) = each($_POST)) {
        
$GLOBALS[$key] = $val;
        if (
is_array($val)) { 
            
$w4fMessage .= "<b>$key:</b> ";
            foreach (
$val as $vala) { 
                
$vala =stripslashes($vala);
                
$w4fMessage .= "$vala, ";
            } 
            
$w4fMessage .= "<br>";
        }     
        else {
            
$val stripslashes($val);
            if ((
$key == "Submit") || ($key == "submit")) { }     
            else {     if (
$val == "") { $w4fMessage .= "$key: - <br>"; }
                    else { 
$w4fMessage .= "<b>$key:</b> $val<br>"; }
            }
        }
    } 
// end while
    
}//end else
$w4fMessage "<font face=verdana size=2>".$w4fMessage."</font></body></html>";
if (!
$email) {$email "server@site.com";}
if (!
mail($MailToAddress$MailSubject$w4fMessage"From: $name <$email>\r\nReply-To: $name <$email>\r\nMessage-ID: <"md5(rand()."".time()) ."@"ereg_replace("www.","",$_SERVER["SERVER_NAME"]) .">\r\nMIME-Version: 1.0\r\nX-Priority: 3\r\nX-Mailer: PHP/" phpversion()."\r\nX-MimeOLE: Produced By Web4Future Easiest Form2Mail v1.5\r\nBCc: $MailToCC\r\nContent-Type: text/html; charset=ISO-8859-1\r\nContent-Transfer-Encoding: 8bit\r\n")) { echo "Error sending e-mail!";}
else { 
header("Location: ".$redirectURL); }
} else { echo 
"<center><font face=verdana size=3 color=red><b>ILLEGAL EXECUTION DETECTED!</b></font></center>";}
?>



5 zapisujemy plik jako: form2mail.php i wgywamy go na serwer w katalogu głównym (tam gdzie pliki admin.php i index.php) cms-a.

7 żeby po wysłaniu pojawiła się informacja z podziękowaniem za meila musimy stworzyć nową stronę i zapisać w menu ukrytym z takim np. kodem:

<div style="text-align: center">Dziękujemy za kontakt z nami. Postaramy się jak najszybciej odpowiedzieć na Twoje Pytania.<br />
<br />
div>
i musimy dopisać tą stronę w pliku form2mail.php w lini:

$redirectURL = "http://www.twojadomena.eu/?stronka,43"; // the URL of the thank you page.

Wtedy po wysłani formularza pojawi się klientowi nasza stronka z podziękowaniem :)

6 aby informacja wiedziała gdzie ma dolecieć musimy dopisać meil na który ma być wysłana informacja w pliku form2mail.php w lini:
$MailToAddress = "meil@wp.pl"; // your email address

7 Aby nasza wiadomość przyszła z jakimś tematem możemy dopisać w lini:
$MailSubject = "[Temat wiadomosci]"; // the subject of the email
Temat meila

Reszty można doczytać się w pliku form2mail.php. Jak będę miał chwilę to postaram się zmodyfikować formularz aby wysyłał polskie znaki.

Pozdrawiam

» Quick.Cms v2.x

Kamil

srebny

Avatar: srebny

2009-09-27 23:12

A przepraszam bo dałem kod bez poskich znaków :(
w pliku zmienić trzeba w 2 miejscach iso-8859-1 na utf-8
Pozdrawiam

Kamil

Maf

Avatar: Maf

2009-09-30 13:37

działa super dzięki!

Do góry
o nas | kontakt