Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] contact form
xMateo
post 20.11.2007, 21:50:27
Post #1





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 15.01.2007
Skąd: Gryfino

Ostrzeżenie: (0%)
-----


Witam serdecznie
Znalazłem ostatnio w sieci fajny skrypt formularza kontaktowego jest oparty o CSS i o to właśnie chodziło biggrin.gif
http://css-tricks.com/examples/NiceSimpleContactForm/

I wszystko jest fajnie działa aczkolwiek nie do końca worriedsmiley.gif

Pościągnięciu skryptu i jego wrzuceniu na serwer jest jeden problem a mianowicie.
Jak widac na stronie podanej wyżej są 4 pola do wypełnienia:
Name:
City:
Email:
Message:

No i gdy juz wysyłam e-mail dla testów okazuje się że:
City - zamieniane jest na Tel. - w e-mailu który otrzymuje na skrzynkę i czego bym nie wpisał w to pole w formularzu to się nie wyświetla.
Czy może mi ktoś powiedzieć gdzie tkwi błąd ?

INDEX.HTMl
  1. !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3.  
  4. <title>A Nice &amp; Simple Contact Form</title>
  5.  
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  7.  
  8. <link rel="stylesheet" type="text/css" href="style.css" />
  9. </head>
  10.  
  11.  
  12. <div id="page-wrap">
  13.  
  14. <img src="images/title.gif" alt="A Nice &amp; Simple Contact Form" /><br /><br />
  15. <p>By <a href="http://css-tricks.com">CSS-Tricks</a></p>
  16.  
  17. <p>There are a million contact form examples on the web, why this one? Because it's SIMPLE, it's FREE, it WORKS, it's VALID, and it's primarily styled with CSS.</p>
  18.  
  19. <p><a href="http://css-tricks.com/examples/NiceSimpleContactForm.zip">[DOWNLOAD THIS EXAMPLE]</a></p>
  20.  
  21. <div id="contact-area">
  22.  
  23. <form method="post" action="contactengine.php">
  24. <label for="Name">Name:</label>
  25. <input type="text" name="Name" /><br />
  26.  
  27. <label for="City">City:</label>
  28. <input type="text" name="City" /><br />
  29.  
  30. <label for="Email">Email:</label>
  31. <td><input type="text" name="Email" /><br />
  32.  
  33. <label for="Message">Message:</label></td>
  34. <textarea name="Message" rows="20" cols="20"></textarea><br />
  35.  
  36. <input type="submit" name="submit" value="Submit" class="submit-button" />
  37. </form>
  38.  
  39. <div style="clear: both;"></div>
  40.  
  41.  
  42.  
  43. </div>
  44.  
  45. </div>



contactengine.php
  1. <?php
  2.  
  3. $EmailFrom = "mojemail";
  4. $EmailTo = "moje-mail";
  5. $Subject = "Wiadomość ze strony... ";
  6. $Name = Trim(stripslashes($_POST['Name'])); 
  7. $Tel = Trim(stripslashes($_POST['Tel'])); 
  8. $Email = Trim(stripslashes($_POST['Email'])); 
  9. $Message = Trim(stripslashes($_POST['Message'])); 
  10.  
  11. // validation
  12. $validationOK=true;
  13. if (!$validationOK) {
  14. print "<meta http-equiv=\"refresh\" content=\"0;URL=error.htm\">";
  15. }
  16.  
  17. // prepare email body text
  18. $Body = "";
  19. $Body .= "Name: ";
  20. $Body .= $Name;
  21. $Body .= "\n";
  22. $Body .= "Tel: ";
  23. $Body .= $Tel;
  24. $Body .= "\n";
  25. $Body .= "Email: ";
  26. $Body .= $Email;
  27. $Body .= "\n";
  28. $Body .= "Message: ";
  29. $Body .= $Message;
  30. $Body .= "\n";
  31.  
  32. // send email 
  33. $success = mail($EmailTo, $Subject, $Body, "From: <$EmailFrom>");
  34.  
  35. // redirect to success page 
  36. if ($success){
  37. print "<meta http-equiv=\"refresh\" content=\"0;URL=contactthanks.php\">";
  38. }
  39. else{
  40. print "<meta http-equiv=\"refresh\" content=\"0;URL=error.htm\">";
  41. }
  42. ?>


Proszę o pomoc kogoś kto wie o czym będzie pisał smile.gif ponieważ będę miał względem tego skryptu jescze kilka pytań smile.gif
Go to the top of the page
+Quote Post
Sadu2
post 20.11.2007, 21:56:07
Post #2





Grupa: Zarejestrowani
Postów: 229
Pomógł: 13
Dołączył: 31.05.2007

Ostrzeżenie: (10%)
X----


  1. <?php
  2. $Tel = Trim(stripslashes($_POST['Tel']));
  3. ?>


Zamień na:

  1. <?php
  2. $City = Trim(stripslashes($_POST['City']));
  3. ?>



Oraz:

  1. <?php
  2. $Body .= "Tel: ";
  3. $Body .= $Tel;
  4. $Body .= "\n";
  5. ?>



Na:

  1. <?php
  2. $Body .= "City: ";
  3. $Body .= $City;
  4. $Body .= "\n";
  5. ?>
Go to the top of the page
+Quote Post
xMateo
post 20.11.2007, 22:04:36
Post #3





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 15.01.2007
Skąd: Gryfino

Ostrzeżenie: (0%)
-----


Działa Dziękuje smile.gif

Następne pytanie jeśli pozwolisz:D

Jeśli mam ten skrypt to jak zrobić by w jednym z nich mianowicie e-mail trzeba było wpisać e-mail ? znaczy się znacznik (at) @ ?
Go to the top of the page
+Quote Post
Sadu2
post 20.11.2007, 22:11:22
Post #4





Grupa: Zarejestrowani
Postów: 229
Pomógł: 13
Dołączył: 31.05.2007

Ostrzeżenie: (10%)
X----


Chodzi Ci o walidacje. Jest masa tych funkcji do tego na necie wiec ci podam jakąś.


  1. <?php
  2. function isEmail($Email)
  3. {
  4. return(preg_match("/^[-_.[:alnum:]]+@((([[:alnum:]]|[[:alnum:]][[:alnum:]-]*[[:alnum:]]).)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg
    |
  5. h|bi|biz|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|co
  6. |coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|f
  7. |fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|
  8. t|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|
  9. z|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms
  10. mt|mu|museum|mv|mw|mx|my|mz|na|name|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|o
  11. g|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg
  12. sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt
  13. tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)$|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]).){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i",$Email));
  14. }
  15. ?>
Go to the top of the page
+Quote Post
xMateo
post 20.11.2007, 22:17:46
Post #5





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 15.01.2007
Skąd: Gryfino

Ostrzeżenie: (0%)
-----


Janie to wygląda le czy mozesz powiedzieć gdzie to nalezy wstawić ?smile.gif
Go to the top of the page
+Quote Post
Sadu2
post 20.11.2007, 22:29:16
Post #6





Grupa: Zarejestrowani
Postów: 229
Pomógł: 13
Dołączył: 31.05.2007

Ostrzeżenie: (10%)
X----


hmm a nie wiem, może przed tym i zobacz czy działa tongue.gif


  1. <?php
  2. $success = mail($EmailTo, $Subject, $Body, "From: <$EmailFrom>");
  3. ?>


Sam próbuj a nie biggrin.gif Wiecej nie pomoge jak sam coś nie wymyślisz tongue.gif

Ten post edytował Sadu2 20.11.2007, 22:29:58
Go to the top of the page
+Quote Post
xMateo
post 20.11.2007, 22:40:07
Post #7





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 15.01.2007
Skąd: Gryfino

Ostrzeżenie: (0%)
-----


POstaram się
Ale ostatnie pytanie dotyczące tego skryptu jak wyświetlić wiadomość po wysłaniu na stronie ?
POnieważ po wysłaniu przenosi na inna postonę i mowi o wysłaniu e-maila i żeby tam było to co się wysłało ze wszystkimi danymi podanymi smile.gif
Jak to osiągnąć ?smile.gif
Go to the top of the page
+Quote Post
Sadu2
post 20.11.2007, 22:51:43
Post #8





Grupa: Zarejestrowani
Postów: 229
Pomógł: 13
Dołączył: 31.05.2007

Ostrzeżenie: (10%)
X----


No to jeśli pomyślnie wysłało to po prostu na tamtej stronie wyświetl wiadomość smile.gif
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.07.2025 - 09:20