φορμα επικοινωνιας

Ερωτήσεις και απαντήσεις σχετικές με την HTML, XHTML και την κατασκευή σελίδων για το Web.

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
koutoulas
Δημοσιεύσεις: 28
Εγγραφή: 27 Μαρ 2006 12:49

φορμα επικοινωνιας

Δημοσίευση από koutoulas » 14 Νοέμ 2007 00:00

se eyxaristw poly file mou gia auth thn forma.....

loipon egw exw ftiaksei mia forma epikoinwnias me ton parakatw kwdika (me thn vohtheia sas vevaia) kai douleuei mia xara alla stelnei panta thn forma akoma kai an valeis lathos e-mail h den grapseis tipota sthn forma...

to mono pou thelw twra einai na kanei elegxo gia to an ta pedia einai ola symphlwmena kai na elegxei kai to mail an einai swsto....
an den einai swsta na mhn stelnei to mail kai phgainei sto nothanks.html (pou exw ftiaksei) h na emfanizei sthn forma kapou oti to mhnyma den stalthhke...

ti prepei na kanw gia na ginei auto;;;


sendmail.html

Κώδικας: Επιλογή όλων

<? 
  
  $email = $_REQUEST&#91;'email'&#93; ; 

  $message = "Όνομα&#58;" .$_POST&#91;'name'&#93;    ."\n".
             "Μήνυμα&#58;".$_POST&#91;'message'&#93;; 
		 	  	  
  mail&#40; "koutoulas@freemail.gr", "φόρμα επικοινωνίας", "$message ", "From&#58; $email" &#41;; 
  header&#40; "Location&#58; http&#58;//www.koutoulas.freehost.gr/thanks.html" &#41;; 
  
?>
form.html

Κώδικας: Επιλογή όλων

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-7"> 
<meta http-equiv="Content-Language" content="el">

<title>Φόρμα Επικοινωνίας </title>

</head>

<body bgcolor="pink">
<center>

<h1> <br> <b> Φόρμα Επικοινωνίας </b> <br> </h1>


<form method="post" action="sendmail.php"> 
  Το Oνομά σας&#58; <br><input name="name" size="30" type="text" > <br> 
  Το E-mail σας&#58; <br><input name="email" size="30" type="text" > <br> 
  Μήνυμα&#58; <br> 
  <textarea name="message" rows="15" cols="40"> 
  </textarea> <br> 
  <INPUT type="submit" value="Αποστολή Μηνύματος"> 
  <INPUT type="reset" value="Καθαρισμός Φόρμας"> 
</form> 

</center>
</body>
</html>
και το thanks.html

Κώδικας: Επιλογή όλων

<html>


<head>

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-7"> 
<meta http-equiv="Content-Language" content="el">

<style> 
<!-- 
A&#58;link &#123; text-decoration&#58; none; color&#58; #000000; &#125; 
A&#58;visited &#123; text-decoration&#58; none; color&#58; #000000; &#125; 
A&#58;active &#123; text-decoration&#58; none; color&#58; #000000; &#125; 
A&#58;hover &#123; text-decoration&#58; none; color&#58; #d278f7; &#125; 
--> 
</style>

 <title> Ευχαριστούμε </title> 

 </head>

 <body bgcolor="pink" >
 
   
<center>

<br> <br> <br>

<h3> Το μήνυμα σας στάλθηκε επιτυχώς!!! </h3>

<h4> Ευχαριστούμε για την επικοινωνία!!! θα σας απαντήσουμε σύντομα... </h4>
 
 <IMG SRC="computer.gif" ALT="computer" width="30%"> 
 
 <br> <br> <br>
 
 <A HREF="form.html"> <b> <u> Επιστροφή στην Φόρμα Επικοινωνίας </u> </b> </A>
 
 </center>

 </body>
  
</html>

Άβαταρ μέλους
vassilism
Δημοσιεύσεις: 1950
Εγγραφή: 17 Μαρ 2007 14:47
Επικοινωνία:

φορμα επικοινωνιας

Δημοσίευση από vassilism » 14 Νοέμ 2007 21:16

sendmail.php

Κώδικας: Επιλογή όλων

<?php
 function check_email_address&#40;$email&#41; &#123; 
  if &#40;!ereg&#40;"^&#91;^@&#93;&#123;1,64&#125;@&#91;^@&#93;&#123;1,255&#125;$", $email&#41;&#41; &#123; 
    header&#40;"Location&#58; thanks.php?status=0"&#41;; 
  &#125; 
  $email_array = explode&#40;"@", $email&#41;; 
  $local_array = explode&#40;".", $email_array&#91;0&#93;&#41;; 
  for &#40;$i = 0; $i < sizeof&#40;$local_array&#41;; $i++&#41; &#123; 
     if &#40;!ereg&#40;"^&#40;&#40;&#91;A-Za-z0-9!#$%&'*+/=?^_`&#123;|&#125;~-&#93;&#91;A-Za-z0-9!#$%&'*+/=?^_`&#123;|&#125;~\.-&#93;&#123;0,63&#125;&#41;|&#40;\"&#91;^&#40;\\|\"&#41;&#93;&#123;0,62&#125;\"&#41;&#41;$", $local_array&#91;$i&#93;&#41;&#41; &#123; 
       header&#40;"Location&#58;thanks.php?status=0"&#41;; 
    &#125; 
  &#125;  
  if &#40;!ereg&#40;"^\&#91;?&#91;0-9\.&#93;+\&#93;?$", $email_array&#91;1&#93;&#41;&#41; &#123; 
    $domain_array = explode&#40;".", $email_array&#91;1&#93;&#41;; 
    if &#40;sizeof&#40;$domain_array&#41; < 2&#41; &#123; 
         die &#40;"Invalid email address"&#41;; 
    &#125; 
    for &#40;$i = 0; $i < sizeof&#40;$domain_array&#41;; $i++&#41; &#123; 
      if &#40;!ereg&#40;"^&#40;&#40;&#91;A-Za-z0-9&#93;&#91;A-Za-z0-9-&#93;&#123;0,61&#125;&#91;A-Za-z0-9&#93;&#41;|&#40;&#91;A-Za-z0-9&#93;+&#41;&#41;$", $domain_array&#91;$i&#93;&#41;&#41; &#123; 
         header&#40;"Location&#58; thanks.php?status=0"&#41;; 
      &#125; 
    &#125; 
  &#125; 
  return $email; 
&#125;

$check_email =   check_email_address&#40;$_REQUEST&#91;'email'&#93;&#41;;
  $message = "Όνομα&#58;" .$_POST&#91;'name'&#93;    ."\n". 
             "Μήνυμα&#58;".$_POST&#91;'message'&#93;;
                 
mail&#40; "koutoulas@freemail.gr", "φόρμα επικοινωνίας", "$ message ", "From&#58; $email " &#41;; 
  header&#40; "Location&#58; http&#58;//www.koutoulas.freehost.gr/thanks.html" &#41;; 
if&#40;@mail&#40;"koutoulas@freemail.gr", "φόρμα επικοινωνίας", "$ message ", "From&#58; $email "&#41;&#41; &#123; 
header&#40;"Location&#58;thanks.php?status=1"&#41;; 
exit; 
&#125; else &#123; 
header&#40;"Location&#58;thanks.php?status=0"&#41;; 
&#125;
  
?>
1.Λοιπόν σου έχω μια πολύ ωραία function που κάνει check το email.
Τώρα για τα υπόλοιπα πεδία δεν έχω χρόνο να σου φτιάξω κάποια function, αλλά αν πειραματιστείς με την παραπάνω δεν είναι δύσκολό να την φτιάξεις.

:question: Μην ξεχάσεις να αποθηκεύσεις το script ως ANSI και με όνομα sendmail.php και όχι sendmail.html.

2.Δεν χρειάζεται να φτιάξεις σελίδα nothanks, εδώ προσαρμόζετε στην thanks.php και η αρνητική απάντηση.

thanks.php

Κώδικας: Επιλογή όλων

<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-7"> 
<meta http-equiv="Content-Language" content="el"> 

<style> 
<!-- 
A&#58;link &#123; text-decoration&#58; none; color&#58; #000000; &#125; 
A&#58;visited &#123; text-decoration&#58; none; color&#58; #000000; &#125; 
A&#58;active &#123; text-decoration&#58; none; color&#58; #000000; &#125; 
A&#58;hover &#123; text-decoration&#58; none; color&#58; #d278f7; &#125; 
--> 
</style> 

 <title> Ευχαριστούμε </title> 

 </head> 

 <body bgcolor="pink" > 
  
    
<center> 

<br> <br> <br> 

<?php 

$status = $_GET&#91;'status'&#93;; 

if&#40;$status=="1"&#41; &#123; 

   echo 'Το μήνυμα σας στάλθηκε επιτυχώς!!! Ευχαριστούμε για την επικοινωνία!!! θα σας απαντήσουμε σύντομα... '; 
    
   &#125; elseif &#40;$status=="0"&#41; &#123; 
    
   echo 'Το μήνυμα δεν στάλθηκε! Ελέγξτε τα στοιχεία σας.'; 
    
   &#125; else &#123; 
    
   echo""; 
    
   &#125; 

?>
 <IMG SRC="computer.gif" ALT="computer" width="30%"> 
  
 <br> <br> <br> 
  
 <A HREF="form.html"> <b> <u> Επιστροφή στην Φόρμα Επικοινωνίας </u> </b> </A> 
  
 </center> 

 </body> 
  
</html>

koutoulas
Δημοσιεύσεις: 28
Εγγραφή: 27 Μαρ 2006 12:49

φορμα επικοινωνιας

Δημοσίευση από koutoulas » 15 Νοέμ 2007 14:07

vassilism έγραψε:
1.Λοιπόν σου έχω μια πολύ ωραία function που κάνει check το email.
Τώρα για τα υπόλοιπα πεδία δεν έχω χρόνο να σου φτιάξω κάποια function, αλλά αν πειραματιστείς με την παραπάνω δεν είναι δύσκολό να την φτιάξεις.

:question: Μην ξεχάσεις να αποθηκεύσεις το script ως ANSI και με όνομα sendmail.php και όχι sendmail.html.

2.Δεν χρειάζεται να φτιάξεις σελίδα nothanks, εδώ προσαρμόζετε στην thanks.php και η αρνητική απάντηση.
file mou se euxaristw gia thn vohtheia to dokimasa auto pou egrapses alla thelei 3
allages sto sendmail.php gia na einai ok....

1)to $ message den thelei keno giati den tha stelnei sto mail to onoma kai to keimeno

Κώδικας: Επιλογή όλων

if&#40;@mail&#40;"koutoulas@freemail.gr", "φόρμα επικοινωνίας", "$message", "From&#58; $email "&#41;&#41;
2)xreiazete kai to parakatw giati den tha emfanhzei apo poio mail hrthe to mhnyma

Κώδικας: Επιλογή όλων

$email = $_REQUEST&#91;'email'&#93; ; 
prin to mail( "koutoulas@freemail.gr", "φόρμα επικοινωνίας", "$ message ", "From: $email " );

3)prepei na svhsoume to parakatw gia na mhn stelnei 2 fores to mhnyma

Κώδικας: Επιλογή όλων

mail&#40; "koutoulas@freemail.gr", "φόρμα επικοινωνίας", "$message", "From&#58; $email " &#41;; 
  header&#40; "Location&#58; http&#58;//www.koutoulas.freehost.gr/thanks.html" &#41;;  

a! kai kati akoma...
pws apothhkeuw to sendmail.php ws ANSI;;;

Άβαταρ μέλους
vassilism
Δημοσιεύσεις: 1950
Εγγραφή: 17 Μαρ 2007 14:47
Επικοινωνία:

φορμα επικοινωνιας

Δημοσίευση από vassilism » 15 Νοέμ 2007 15:36

Για να σου πω την αλήθεια δεν σε κατάλαβα.
Αυτό που έκανα είναι να προσαρμόσω αυτά που θες στα δικά σου script.
Για να το αποθηκεύσεις σε μορφή ANSI, ανοίγεις το αρχείο με το σημειωματάριο, επιλέγεις αποθήκευση ως, Κωδικοποίηση επιλέγεις ANSI.

koutoulas
Δημοσιεύσεις: 28
Εγγραφή: 27 Μαρ 2006 12:49

φορμα επικοινωνιας

Δημοσίευση από koutoulas » 15 Νοέμ 2007 16:53

vassilism έγραψε:Για να σου πω την αλήθεια δεν σε κατάλαβα.
Αυτό που έκανα είναι να προσαρμόσω αυτά που θες στα δικά σου script.
Για να το αποθηκεύσεις σε μορφή ANSI, ανοίγεις το αρχείο με το σημειωματάριο, επιλέγεις αποθήκευση ως, Κωδικοποίηση επιλέγεις ANSI.
to kserw file mou se auto pou eixa ftiaksei prostheses to check mail alla ksexases na (prostheseis \svhseis) me apotelesma na mhn douleuei h forma kai egrapsa tis allages pou hthele gia na einai ok;;;;

na se rwthsw kati...

me ton elegxo ton pediwn mporeis na mer vohthhseis ligo se parakalw;;

Άβαταρ μέλους
vassilism
Δημοσιεύσεις: 1950
Εγγραφή: 17 Μαρ 2007 14:47
Επικοινωνία:

φορμα επικοινωνιας

Δημοσίευση από vassilism » 15 Νοέμ 2007 17:39

Με το email είσαι ok.
Από εκεί και πέρα θα πρέπει να φτιάξεις άλλη μια function που να ελέγχει τα πεδία name, message, κάπως έτσι:

Κώδικας: Επιλογή όλων

function check_message _field &#40;$name&#41; &#123; 
  $array = explode&#40; $ name&#41;; 
  $local_array = explode&#40;".", $array&#91;0&#93;&#41;; 
  for &#40;$i = 0; $i < sizeof&#40;$local_array&#41;; $i++&#41; &#123; 
     if &#40;!ereg&#40;"^&#40;&#40;&#91;A-Za-z0-9!#$%&'*+/=?^_`&#123;|&#125;~-&#93;&#91;A-Za-z0-9!#$%&'*+/=?^_`&#123;|&#125;~\.-&#93;&#123;0,63&#125;&#41;|&#40;\"&#91;^&#40;\\|\"&#41;&#93;&#123;0,62&#125;\"&#41;&#41;$", $local_array&#91;$i&#93;&#41;&#41; &#123; 
       header&#40;"Location&#58;thanks.php?status=0"&#41;; 
    &#125; 
  &#125;  
  if &#40;!ereg&#40;"^\&#91;?&#91;0-9\.&#93;+\&#93;?$", $array&#91;1&#93;&#41;&#41; &#123; 
    $domain_array = explode&#40;".", $array&#91;1&#93;&#41;; 
    for &#40;$i = 0; $i < sizeof&#40;$domain_array&#41;; $i++&#41; &#123; 
      if &#40;!ereg&#40;"^&#40;&#40;&#91;A-Za-z0-9&#93;&#91;A-Za-z0-9-&#93;&#123;0,61&#125;&#91;A-Za-z0-9&#93;&#41;|&#40;&#91;A-Za-z0-9&#93;+&#41;&#41;$", $domain_array&#91;$i&#93;&#41;&#41; &#123; 
         header&#40;"Location&#58; thanks.php?status=0"&#41;; 
      &#125; 
    &#125; 
  &#125; 
  return $ name; 
&#125;

Κώδικας: Επιλογή όλων

$ check_message = check_message _field&#40;"Όνομα&#58;" .$_POST&#91;'name'&#93;    ."\n"."Μήνυμα&#58;".$_POST&#91;'message'&#93;&#41;;

Απάντηση

Επιστροφή στο “HTML και XHTML”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης