varemarious Δημοσ. 16 Σεπτεμβρίου 2010 Δημοσ. 16 Σεπτεμβρίου 2010 Καλησπέρα γνωρίζω ότι είναι πολυσυζητημένο το θέμα έκανα αναζήτηση σε πολλά thread αλλά δε κατάφερα να βγάλω άκρη .. αυτό που θέλω είναι να φτιάξω είναι μια φόρμα παραγγελίας ενός συγκεκριμένου προϊόντος .. στην ουσία θα μου αποστέλλει τα στοιχεία του σε ένα mail. έχω φτιάξει τη φόρμα , μου έρχεται το mail αλλά μια είναι κενό, μία είναι με κινέζικα, μια εμφανίζει μερικά από τα στοιχεία ..ποιό είναι το λάθος μου μπορείτε να με βοηθήσετε ; sendmail.php ><?php $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/plain; charset=utf-8\r\n"; $name = $_REQUEST['name'] ; $epwnymo = $_REQUEST['epwnymo']; $address = $_REQUEST['address']; $town = $_REQUEST['town']; $tk = $_REQUEST['tk']; $telephone = $_REQUEST['telephone']; $mobile = $_REQUEST['mobile']; $deh = $_REQUEST['deh']; $message = $_REQUEST['message'] ; mail( "******@*******.gr", "Online paraggelia",$message, "From: $epwnymo" ,$headers); header( "Location: http://www.******.gr" ); ?> onlineform.php > <form method="post" action="sendmail.php"> <p>Όνομα: <input name="name" type="text" /><br /> Επώνυμο: <input name="epwnymo" type="text" /><br /> Διεύθυνση: <input name="address" type="text" /><br /> Πόλη: <input name="town" type="text" /><br /> Τ.Κ.: <input name="tk" type="text" /><br /> Τηλέφωνο: <input name="telephone" type="text" /><br /> Κινητό: <input name="mobile" type="text" /><br /> Κωδικός Δ.Ε.Η.: <input name="deh" type="text" /><br /> Μήνυμα:<br /> <textarea name="message" rows="15" cols="40"> </textarea> <br /> <input type="submit" /> </p> </form> Επίσης να επισημάνω ότι και στον explorer που βλέπω την φόρμα κινέζικα μου τα δείχνει. -------------------------------------------------------------------------------------------------- το διόρθωσα με λίγο παραπάνω επιμονή .. ευχαριστώ
kasiarakos Δημοσ. 17 Σεπτεμβρίου 2010 Δημοσ. 17 Σεπτεμβρίου 2010 δεν είμαι σίγουρος αλλα μήπως αν αλλάξεις τα $_REQUEST σε $_POST δουλέψει?
varemarious Δημοσ. 17 Σεπτεμβρίου 2010 Μέλος Δημοσ. 17 Σεπτεμβρίου 2010 το διόρθωσα τελικά το πρόβλημα .. λειτουργούν όλα οκ . αυτό που θέλω να κάνω είναι όταν πατάει κάποιος στο τέλος υποβολή στοιχείων να μου εμφανίζει τα στοιχεία που μόλις έδωσε ... δοκίμασα την εντολή echo έτσι ώστε να μου εμφανίσει πίσω τα στοιχεία που μόλις δόθηκαν αλλά μου δείχνει το περιεχόμενο σε αλαμπουρνέζικα.. υπάρχει κάποιος άλλος τρόπος να το κάνω αυτό ;
Uberalles_gr Δημοσ. 17 Σεπτεμβρίου 2010 Δημοσ. 17 Σεπτεμβρίου 2010 Στα δείχνει σε αλαμπουρνέζικα γιατί δεν έχεις βάλει στα meta tags το: > <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Βάλτο και στις 2 σελίδες σου και θα είναι κομπλέ
varemarious Δημοσ. 17 Σεπτεμβρίου 2010 Μέλος Δημοσ. 17 Σεπτεμβρίου 2010 όντως αυτό ήταν το πρόβλημα σε ευχαριστώ
varemarious Δημοσ. 21 Σεπτεμβρίου 2010 Μέλος Δημοσ. 21 Σεπτεμβρίου 2010 αντιμετωπίζω ένα νέο πρόβλημα ... τη φόρμα την φτιάχνω μέσα από το dreamweaver .. οπότε αφού την ολοκλήρωσα και δούλευε σωστά ήθελα να ορίσω υποχρεωτικά πεδία ... μέσω της επιλογής behavior πρόσθεσα τα πεδία που θέλω να γίνουν υποχρεωτικά.. στην ουσία όρισα το submit button με εντολή onclick να κάνει έναν έλεγχο .. και το dreamweaver έφτιαξε τον κώδικα και στο head πρόσθεσε ένα script.. το τμήμα υποχρεωτικά πεδία λειτουργεί κανονικά αν δεν έχεις συμπληρώσει κάποιο πεδίο χτυπάει μήνυμα συμπληρώστε το τάδε πεδίο.. αν όμως τώρα συμπληρώσω όλα τα πεδία αυτά που έχουν οριστεί σαν υποχρεωτικά δεν μου έρχονται στο μαιλ και μου βγάζει σφάλμα στην σελίδα sendemail.php π.χ. στις γραμμές που μου δούλευε κανονικά πριν ορίσω τα required. $last_name = $_POST["last_name"]; $name = $_POST["name"]; $address = $_POST["address"]; ο κώδικας που πρόσθεσε στην form.php το dreamweaver είναι : ><script type="text/javascript"> function MM_validateForm() { //v4.0 if (document.getElementById){ var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments; for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=document.getElementById(args[i]); if (val) { nm=val.name; if ((val=val.value)!="") { if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@'); if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n'; } else if (test!='R') { num = parseFloat(val); if (isNaN(val)) errors+='- '+nm+' must contain a number.\n'; if (test.indexOf('inRange') != -1) { p=test.indexOf(':'); min=test.substring(8,p); max=test.substring(p+1); if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n'; } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' απαιτείται.\n'; } } if (errors) alert('The following error(s) occurred:\n'+errors); document.MM_returnValue = (errors == ''); } } </script> και η εντολή onclick >onclick="MM_validateForm('last_name','','R','name','','R','address','','R','number','','R','tk','','R','town','','R','phone','','R','mobile','','R','afm','','R','deh','','R');return document.MM_returnValue"
binary_tron Δημοσ. 21 Σεπτεμβρίου 2010 Δημοσ. 21 Σεπτεμβρίου 2010 αντιμετωπίζω ένα νέο πρόβλημα ... τη φόρμα την φτιάχνω μέσα από το dreamweaver .. οπότε αφού την ολοκλήρωσα και δούλευε σωστά ήθελα να ορίσω υποχρεωτικά πεδία ... μέσω της επιλογής behavior πρόσθεσα τα πεδία που θέλω να γίνουν υποχρεωτικά.. στην ουσία όρισα το submit button με εντολή onclick να κάνει έναν έλεγχο .. και το dreamweaver έφτιαξε τον κώδικα και στο head πρόσθεσε ένα script.. το τμήμα υποχρεωτικά πεδία λειτουργεί κανονικά αν δεν έχεις συμπληρώσει κάποιο πεδίο χτυπάει μήνυμα συμπληρώστε το τάδε πεδίο.. αν όμως τώρα συμπληρώσω όλα τα πεδία αυτά που έχουν οριστεί σαν υποχρεωτικά δεν μου έρχονται στο μαιλ και μου βγάζει σφάλμα στην σελίδα sendemail.php π.χ. στις γραμμές που μου δούλευε κανονικά πριν ορίσω τα required. $last_name = $_POST["last_name"]; $name = $_POST["name"]; $address = $_POST["address"]; ο κώδικας που πρόσθεσε στην form.php το dreamweaver είναι : ><script type="text/javascript"> function MM_validateForm() { //v4.0 if (document.getElementById){ var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments; for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=document.getElementById(args[i]); if (val) { nm=val.name; if ((val=val.value)!="") { if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@'); if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n'; } else if (test!='R') { num = parseFloat(val); if (isNaN(val)) errors+='- '+nm+' must contain a number.\n'; if (test.indexOf('inRange') != -1) { p=test.indexOf(':'); min=test.substring(8,p); max=test.substring(p+1); if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n'; } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' απαιτείται.\n'; } } if (errors) alert('The following error(s) occurred:\n'+errors); document.MM_returnValue = (errors == ''); } } </script> και η εντολή onclick >onclick="MM_validateForm('last_name','','R','name','','R','address','','R','number','','R','tk','','R','town','','R','phone','','R','mobile','','R','afm','','R','deh','','R');return document.MM_returnValue" Προφανώς η φόρμα σου δεν κάνει POST αλλά GET και σου χτυπάει error γιατί πολύ απλά δεν υπάρχουν τα πεδία που ζητάς στον πίνακα POST! Ή στην τελική δε κάνει καν POST και δε φτάνουν ποτέ οι τιμές στον πίνακα!
varemarious Δημοσ. 21 Σεπτεμβρίου 2010 Μέλος Δημοσ. 21 Σεπτεμβρίου 2010 πριν ορίσω τα required fields όμως δούλευε κανονικά..(και το μαιλ μου έρχονταν όλα κομπλέ) ούτε id names άλλαξα ούτε κάτι άλλο. απλά προστέθηκε ο κώδικας που πόσταρα πιο πάνω.. μήπως από αυτά που προστέθηκαν κάτι πρέπει να προσθέσω και εγώ στο sendemail.php
binary_tron Δημοσ. 21 Σεπτεμβρίου 2010 Δημοσ. 21 Σεπτεμβρίου 2010 πριν ορίσω τα required fields όμως δούλευε κανονικά..(και το μαιλ μου έρχονταν όλα κομπλέ) ούτε id names άλλαξα ούτε κάτι άλλο. απλά προστέθηκε ο κώδικας που πόσταρα πιο πάνω.. μήπως από αυτά που προστέθηκαν κάτι πρέπει να προσθέσω και εγώ στο sendemail.php Αν στείλεις συνολικά το κώδικα θα σου πώ...έτσι αποσπασματικά μόνο μάντης πρέπει να είσαι ;-)
varemarious Δημοσ. 21 Σεπτεμβρίου 2010 Μέλος Δημοσ. 21 Σεπτεμβρίου 2010 η φόρμα ><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Untitled Form</title> <link rel="stylesheet" type="text/css" href="view.css" media="all"> <script type="text/javascript" src="view.js"></script> <script type="text/javascript" src="calendar.js"></script> <style type="text/css"> body,td,th { font-size: 12px; } </style> <script type="text/javascript"> function MM_validateForm() { //v4.0 if (document.getElementById){ var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments; for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=document.getElementById(args[i]); if (val) { nm=val.name; if ((val=val.value)!="") { if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@'); if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n'; } else if (test!='R') { num = parseFloat(val); if (isNaN(val)) errors+='- '+nm+' must contain a number.\n'; if (test.indexOf('inRange') != -1) { p=test.indexOf(':'); min=test.substring(8,p); max=test.substring(p+1); if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n'; } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' απαιτείται.\n'; } } if (errors) alert('The following error(s) occurred:\n'+errors); document.MM_returnValue = (errors == ''); } } </script> </head> <body id="main_body" > <img id="top" src="top.png" alt=""> <div id="form_container"> <h1><a>Untitled Form</a></h1> <form id="form_14416" class="appnitro" method="post" action="sendemail.php"> <div class="form_description"> <h2 align="center">Καταχώρηση στοιχείων</h2> </div> <ul > <li id="li_11" > <label class="description" for="element_2"> <center>Στοιχεία Επικοινωνίας</center></label> <span> <input id="last_name" name= "Επώνυμο" class="element text" maxlength="40" size="20" value="Επώνυμο*" onblur="if(this.value.length == 0) this.value='Επώνυμο*';" onclick="if(this.value == 'Επώνυμο*') this.value='';"/> </span> <span> <input id="name" name= "Όνομα" class="element text" maxlength="40" size="20" value="Όνομα*" onblur="if(this.value.length == 0) this.value='Όνομα*';" onclick="if(this.value == 'Όνομα*') this.value='';"/> </span> </li> <li id="li_2" > <span> <input name="Οδός" type="text" class="element text large" id="address" dir="ltr" value="Οδός*" size="20" onblur="if(this.value.length == 0) this.value='Οδός*';" onclick="if(this.value == 'Οδός*') this.value='';"> </span> <span> <input name="Αριθμός" type="text" class="element text small" id="number" onblur="if(this.value.length == 0) this.value='Αριθμός*';" onclick="if(this.value == 'Αριθμός*') this.value='';" value="Αριθμός*" size="8" maxlength="5" /> <input name="Ταχυδρομικός κώδικας" type="text" class="element text small" id="tk" dir="ltr" value="T.K.*" size="5" maxlength="5" onblur="if(this.value.length == 0) this.value='T.K.*';" onclick="if(this.value == 'T.K.*') this.value='';"> </span> </li> <li id="li_3"> <div align="left"> <span> <input name="region" type="text" class="element text medium" id="region" value="Περιοχή" size="12" maxlength="" onblur="if(this.value.length == 0) this.value='Περιοχή';" onclick="if(this.value == 'Περιοχή') this.value='';"> </span> <span> <input name="Πόλη" type="text" class="element text medium" id="town" value="Πόλη*" size="12" maxlength="" onblur="if(this.value.length == 0) this.value='Πόλη*';" onclick="if(this.value == 'Πόλη*') this.value='';"> </span> </div> </li> <li id="li_4" > <span> <input name="mail" type="text" class="element text medium" id="mail" value="Email" size="25" maxlength="40" onblur="if(this.value.length == 0) this.value='Email';" onclick="if(this.value == 'Email') this.value='';"/> </span> </li> <li id="li_5" ><span> <input name="Τηλέφωνο" type="text" class="element text" id="phone" value="Σταθερό*" size="15" onblur="if(this.value.length == 0) this.value='Σταθερό*';" onclick="if(this.value == 'Σταθερό*') this.value='';" maxlength="10"> </span> <span> <input name="Κινητό" type="text" class="element text" id="mobile" value="Κινητό*" size="15" onblur="if(this.value.length == 0) this.value='Κινητό*';" onclick="if(this.value == 'Κινητό*') this.value='';" maxlength="10"> </span> </li> <li id="li_6" > <span> <input name="Α.Φ.Μ." type="text" class="element text medium" id="afm" value="Α.Φ.Μ.*" maxlength="9" onblur="if(this.value.length == 0) this.value='Α.Φ.Μ.*';" onclick="if(this.value == 'Α.Φ.Μ.*') this.value='';"/> </span> <span> <input name="Κωδικός Δ.Ε.Η." type="text" class="element text medium" id="deh" value="Κωδικός Δ.Ε.Η.*" maxlength="12" onblur="if(this.value.length == 0) this.value='Κωδικός Δ.Ε.Η.*';" onclick="if(this.value == 'Κωδικός Δ.Ε.Η.*') this.value='';"/> </span> </li> <li id="li_7" > <label class="description" for="element_10"><center>Λοιπά στοιχεία επικοινωνίας</center></label> <span> <select class="element select medium" id="idiotita" name="idiotita"> <option value="Ιδιότητα" selected="selected">Ιδιότητα </option> <option value="Διαχειριστής" >Διαχειριστής</option> <option value="Ιδιοκτήτης" >Ιδιοκτήτης</option> <option value="Ένοικος" >Ένοικος</option> <option value="Άλλο" >Άλλο</option> </select> </span> <span> <select class="element select medium" id="ktirio" name="ktirio"> <option value="Στοιχεία κτιρίου" selected="selected">Στοιχεία κτιρίου </option> <option value="Πολυκατοικία" >Πολυκατοικία</option> <option value="Μονοκατοικία" >Μονοκατοικία</option> <option value="Επαγγ. Χώρος" >Επαγγ. Χώρος</option> <option value="Άλλο" >Άλλο</option> </select> </span> <span> <select class="element select medium" id="diamerisma" name="diamerisma"> <option value="Διαμερίσματα" selected="selected">Διαμερίσματα</option> <option value="3-10" >3-10</option> <option value="11-15" >11-15</option> <option value="16-20" >16-20</option> <option value="21-25" >21-25</option> <option value="26-30" >26-30</option> <option value="31-35" >31-35</option> <option value="36-40" >36-40</option> <option value="41-45" >41-45</option> <option value="46-50" >46-50</option> <option value="51-άνω" >51-άνω</option> </select> </span> </li> <li id="li_1" > <label class="description" for="element_1">Date </label> <span> <input id="element_1_1" name="element_1_1" class="element text" size="2" maxlength="2" value="HH" type="text"> / </span> <span> <input id="element_1_2" name="element_1_2" class="element text" size="2" maxlength="2" value="MM" type="text"> / </span> <span> <input id="element_1_3" name="element_1_3" class="element text" size="4" maxlength="4" value="EEEE" type="text"> </span> <span id="calendar_1"> <img id="cal_img_1" class="datepicker" src="images/calendar.gif" alt="Pick a date."> </span> <script type="text/javascript"> Calendar.setup({ inputField : "element_1_3", baseField : "element_1", displayArea : "calendar_1", button : "cal_img_1", ifFormat : "%B %e, %Y", onSelect : selectEuropeDate }); </script> <span> <label for="element_1_1, element_1_2, element_1_3"> Επιθυμητή ημερομηνία παραλαβής </label></span> </li> <li id="li_9" > <span> <select class="element select medium" id="hour" name="hour"> <option value="" selected="selected">Επιθυμητή ώρα παραλαβής</option> <option value="7:00π.μ.-10:00π.μ." >7:00π.μ.-10:00π.μ.</option> <option value="8:00π.μ.-11:00π.μ." >8:00π.μ.-11:00π.μ.</option> <option value="9:00π.μ.-12:00μ.μ." >9:00π.μ.-12:00μ.μ.</option> <option value="10:00π.μ.-13:00μ.μ." >10:00π.μ.-13:00μ.μ.</option> <option value="11:00π.μ.-14:00μ.μ." >11:00π.μ.-14:00μ.μ.</option> <option value="12:00μ.μ.-15:00μ.μ." >12:00μ.μ.- 15:00μ.μ.</option> <option value="13:00μ.μ.-16:00μ.μ." >13:00μ.μ.- 16:00μ.μ.</option> <option value="14:00μ.μ.-17:00μ.μ." >14:00μ.μ.- 17:00μ.μ.</option> <option value="15:00μ.μ.-18:00μ.μ." >15:00μ.μ.- 18:00μ.μ.</option> <option value="16:00μ.μ.-19:00μ.μ." >16:00μ.μ.- 19:00μ.μ.</option> <option value="17:00μ.μ.-20:00μ.μ." >17:00μ.μ.- 20:00μ.μ.</option> <option value="18:00μ.μ.-21:00μ.μ." >18:00μ.μ.- 21:00μ.μ.</option> <option value="19:00μ.μ.-22:00μ.μ." >19:00μ.μ.- 22:00μ.μ.</option> </select> </span> <span> <select class="element select medium" id="pay" name="pay"> <option value="Τρόπος πληρωμής" selected="selected">Τρόπος πληρωμής </option> <option value="Αντικαταβολή" >Αντικαταβολή</option> <option value="Πιστωτική" >Πιστωτική</option> <option value="Άλλο" >Άλλο</option> </select> </span> </li> <li id="li_10"> <label for="add_paralavis"></label> <input type="text" name="add_paralavis" id="add_paralavis" value="Διευθ.παραλαβής" onblur="if(this.value.length == 0) this.value='Διευθ.παραλαβής';" onclick="if(this.value == 'Διευθ.παραλαβής') this.value='';"/> <label for="paraliptis"></label> <input type="text" name="paraliptis" id="paraliptis" value="Παραλήπτης" onblur="if(this.value.length == 0) this.value='Παραλήπτης';" onclick="if(this.value == 'Παραλήπτης') this.value='';"/> <span> <label for="add_paralavis, paraliptis">Συμπληρώστε αυτά τα 2 πεδία εαν τα στοιχεία παραλαβής είναι διαφορετικά απο αυτά που έχετε συμπληρώσει παραπάνω.</label></span></li> <li><center><b>Παρατηρήσεις-Επισημάνσεις</b></center> <label for="paratiriseis"></label> <textarea name="paratiriseis" id="paratiriseis" cols="45" rows="5" onblur="if(this.value.length == 0) this.value='Εισάγετε περισσότερες πληροφορίες';" onclick="if(this.value == 'Εισάγετε περισσότερες πληροφορίες') this.value='';" >Εισάγετε περισσότερες πληροφορίες</textarea> </li> <center><li class="buttons"> <input type="hidden" name="form_id" value="14416" /> <input name="submit" type="submit" class="button_text" id="saveForm" onclick="MM_validateForm('last_name','','R','name','','R','address','','R','number','','R','tk','','R','town','','R','phone','','R','mobile','','R','afm','','R','deh','','R');return document.MM_returnValue" value="Υποβολή στοιχείων" /> </li> </center> </ul> </form> </div> <img id="bottom" src="bottom.png" alt=""> </body> </html> ---------- Προσθήκη στις 15:15 ---------- Προηγούμενο μήνυμα στις 15:11 ---------- το sendmail > <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <?php $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/plain; charset=utf-8\r\n"; $to = "******@*******.gr"; $last_name = $_POST["last_name"]; $name = $_POST["name"]; $address = $_POST["address"]; $number = $_POST["number"]; $tk = $_POST["tk"]; $region = $_POST["region"]; $town = $_POST["town"]; $mail = $_POST["mail"]; $phone = $_POST["phone"]; $mobile = $_POST["mobile"]; $afm = $_POST["afm"]; $deh = $_POST["deh"]; $idiotita = $_POST["idiotita"]; $ktirio = $_POST["ktirio"]; $diamerisma = $_POST["diamerisma"]; $element_1_1 = $_POST["element_1_1"]; $element_1_2 = $_POST["element_1_2"]; $element_1_3 = $_POST["element_1_3"]; $hour = $_POST["hour"]; $pay = $_POST["pay"]; $subject = "Online παpαγγελία" ; $message = " Επώνυμο: $last_name - Όνομα: $name Οδός: $address - Αριθμός: $number Πόλη: $town - Περιοχή: $region ΤΚ: $tk Τηλέφωνο: $phone Κινητό: $mobile Email: $mail ΑΦΜ: $afm Κωδικός ΔΕΗ: $deh Ιδιότητα: $idiotita Κτίριο: $ktirio Διαμέρίσματα: $diamerisma Επιθυμητή ημερομηνία παραλαβής: $element_1_1 - $element_1_2 - $element_1_3 Επιθυμητή ώρα παραλαβής: $hour Τρόπος πληρωμής: $pay "; mail( $to, $subject, $message, $headers); echo "<center> Η καταχώρηση σας έγινε με επιτυχία. Ευχαριστούμε για την προτίμησή σας θα επικοινωνήσουμε μαζί σας το συντομότερο δυνατό. <p></p> Τα στοιχεία που καταχωρήσατε είναι τα εξής : <p></p> Επώνυμο: $last_name - Όνομα: $name <br> Οδός: $address - Αριθμός: $number <br> Πόλη: $town - Περιοχή: $region <br> ΤΚ: $tk <br> Τηλέφωνο: $phone <br> Κινητό: $mobile <br> Email: $mail <br> ΑΦΜ: $afm <br> Κωδικός ΔΕΗ: $deh <br> Ιδιότητα: $idiotita <br> Κτίριο: $ktirio <br> Διαμέρίσματα: $diamerisma <br> Επιθυμητή ημερομηνία παραλαβής: $element_1_1 - $element_1_3 - $element_1_3 <br> Επιθυμητή ώρα παραλαβής: $hour <br> Τρόπος πληρωμής: $pay" ; ?></center> ---------- Προσθήκη στις 15:16 ---------- Προηγούμενο μήνυμα στις 15:15 ---------- έχω προσθέσει κάποια πεδία στη φόρμα όπου δεν τα έχω ορίσει ακόμα στο sendmail αλλά αυτό δεν μας εμποδίζει..
binary_tron Δημοσ. 21 Σεπτεμβρίου 2010 Δημοσ. 21 Σεπτεμβρίου 2010 η φόρμα ><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Untitled Form</title> <link rel="stylesheet" type="text/css" href="view.css" media="all"> <script type="text/javascript" src="view.js"></script> <script type="text/javascript" src="calendar.js"></script> <style type="text/css"> body,td,th { font-size: 12px; } </style> <script type="text/javascript"> function MM_validateForm() { //v4.0 if (document.getElementById){ var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments; for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=document.getElementById(args[i]); if (val) { nm=val.name; if ((val=val.value)!="") { if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@'); if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n'; } else if (test!='R') { num = parseFloat(val); if (isNaN(val)) errors+='- '+nm+' must contain a number.\n'; if (test.indexOf('inRange') != -1) { p=test.indexOf(':'); min=test.substring(8,p); max=test.substring(p+1); if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n'; } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' απαιτείται.\n'; } } if (errors) alert('The following error(s) occurred:\n'+errors); document.MM_returnValue = (errors == ''); } } </script> </head> <body id="main_body" > <img id="top" src="top.png" alt=""> <div id="form_container"> <h1><a>Untitled Form</a></h1> <form id="form_14416" class="appnitro" method="post" action="sendemail.php"> <div class="form_description"> <h2 align="center">Καταχώρηση στοιχείων</h2> </div> <ul > <li id="li_11" > <label class="description" for="element_2"> <center>Στοιχεία Επικοινωνίας</center></label> <span> <input id="last_name" name= "Επώνυμο" class="element text" maxlength="40" size="20" value="Επώνυμο*" onblur="if(this.value.length == 0) this.value='Επώνυμο*';" onclick="if(this.value == 'Επώνυμο*') this.value='';"/> </span> <span> <input id="name" name= "Όνομα" class="element text" maxlength="40" size="20" value="Όνομα*" onblur="if(this.value.length == 0) this.value='Όνομα*';" onclick="if(this.value == 'Όνομα*') this.value='';"/> </span> </li> <li id="li_2" > <span> <input name="Οδός" type="text" class="element text large" id="address" dir="ltr" value="Οδός*" size="20" onblur="if(this.value.length == 0) this.value='Οδός*';" onclick="if(this.value == 'Οδός*') this.value='';"> </span> <span> <input name="Αριθμός" type="text" class="element text small" id="number" onblur="if(this.value.length == 0) this.value='Αριθμός*';" onclick="if(this.value == 'Αριθμός*') this.value='';" value="Αριθμός*" size="8" maxlength="5" /> <input name="Ταχυδρομικός κώδικας" type="text" class="element text small" id="tk" dir="ltr" value="T.K.*" size="5" maxlength="5" onblur="if(this.value.length == 0) this.value='T.K.*';" onclick="if(this.value == 'T.K.*') this.value='';"> </span> </li> <li id="li_3"> <div align="left"> <span> <input name="region" type="text" class="element text medium" id="region" value="Περιοχή" size="12" maxlength="" onblur="if(this.value.length == 0) this.value='Περιοχή';" onclick="if(this.value == 'Περιοχή') this.value='';"> </span> <span> <input name="Πόλη" type="text" class="element text medium" id="town" value="Πόλη*" size="12" maxlength="" onblur="if(this.value.length == 0) this.value='Πόλη*';" onclick="if(this.value == 'Πόλη*') this.value='';"> </span> </div> </li> <li id="li_4" > <span> <input name="mail" type="text" class="element text medium" id="mail" value="Email" size="25" maxlength="40" onblur="if(this.value.length == 0) this.value='Email';" onclick="if(this.value == 'Email') this.value='';"/> </span> </li> <li id="li_5" ><span> <input name="Τηλέφωνο" type="text" class="element text" id="phone" value="Σταθερό*" size="15" onblur="if(this.value.length == 0) this.value='Σταθερό*';" onclick="if(this.value == 'Σταθερό*') this.value='';" maxlength="10"> </span> <span> <input name="Κινητό" type="text" class="element text" id="mobile" value="Κινητό*" size="15" onblur="if(this.value.length == 0) this.value='Κινητό*';" onclick="if(this.value == 'Κινητό*') this.value='';" maxlength="10"> </span> </li> <li id="li_6" > <span> <input name="Α.Φ.Μ." type="text" class="element text medium" id="afm" value="Α.Φ.Μ.*" maxlength="9" onblur="if(this.value.length == 0) this.value='Α.Φ.Μ.*';" onclick="if(this.value == 'Α.Φ.Μ.*') this.value='';"/> </span> <span> <input name="Κωδικός Δ.Ε.Η." type="text" class="element text medium" id="deh" value="Κωδικός Δ.Ε.Η.*" maxlength="12" onblur="if(this.value.length == 0) this.value='Κωδικός Δ.Ε.Η.*';" onclick="if(this.value == 'Κωδικός Δ.Ε.Η.*') this.value='';"/> </span> </li> <li id="li_7" > <label class="description" for="element_10"><center>Λοιπά στοιχεία επικοινωνίας</center></label> <span> <select class="element select medium" id="idiotita" name="idiotita"> <option value="Ιδιότητα" selected="selected">Ιδιότητα </option> <option value="Διαχειριστής" >Διαχειριστής</option> <option value="Ιδιοκτήτης" >Ιδιοκτήτης</option> <option value="Ένοικος" >Ένοικος</option> <option value="Άλλο" >Άλλο</option> </select> </span> <span> <select class="element select medium" id="ktirio" name="ktirio"> <option value="Στοιχεία κτιρίου" selected="selected">Στοιχεία κτιρίου </option> <option value="Πολυκατοικία" >Πολυκατοικία</option> <option value="Μονοκατοικία" >Μονοκατοικία</option> <option value="Επαγγ. Χώρος" >Επαγγ. Χώρος</option> <option value="Άλλο" >Άλλο</option> </select> </span> <span> <select class="element select medium" id="diamerisma" name="diamerisma"> <option value="Διαμερίσματα" selected="selected">Διαμερίσματα</option> <option value="3-10" >3-10</option> <option value="11-15" >11-15</option> <option value="16-20" >16-20</option> <option value="21-25" >21-25</option> <option value="26-30" >26-30</option> <option value="31-35" >31-35</option> <option value="36-40" >36-40</option> <option value="41-45" >41-45</option> <option value="46-50" >46-50</option> <option value="51-άνω" >51-άνω</option> </select> </span> </li> <li id="li_1" > <label class="description" for="element_1">Date </label> <span> <input id="element_1_1" name="element_1_1" class="element text" size="2" maxlength="2" value="HH" type="text"> / </span> <span> <input id="element_1_2" name="element_1_2" class="element text" size="2" maxlength="2" value="MM" type="text"> / </span> <span> <input id="element_1_3" name="element_1_3" class="element text" size="4" maxlength="4" value="EEEE" type="text"> </span> <span id="calendar_1"> <img id="cal_img_1" class="datepicker" src="images/calendar.gif" alt="Pick a date."> </span> <script type="text/javascript"> Calendar.setup({ inputField : "element_1_3", baseField : "element_1", displayArea : "calendar_1", button : "cal_img_1", ifFormat : "%B %e, %Y", onSelect : selectEuropeDate }); </script> <span> <label for="element_1_1, element_1_2, element_1_3"> Επιθυμητή ημερομηνία παραλαβής </label></span> </li> <li id="li_9" > <span> <select class="element select medium" id="hour" name="hour"> <option value="" selected="selected">Επιθυμητή ώρα παραλαβής</option> <option value="7:00π.μ.-10:00π.μ." >7:00π.μ.-10:00π.μ.</option> <option value="8:00π.μ.-11:00π.μ." >8:00π.μ.-11:00π.μ.</option> <option value="9:00π.μ.-12:00μ.μ." >9:00π.μ.-12:00μ.μ.</option> <option value="10:00π.μ.-13:00μ.μ." >10:00π.μ.-13:00μ.μ.</option> <option value="11:00π.μ.-14:00μ.μ." >11:00π.μ.-14:00μ.μ.</option> <option value="12:00μ.μ.-15:00μ.μ." >12:00μ.μ.- 15:00μ.μ.</option> <option value="13:00μ.μ.-16:00μ.μ." >13:00μ.μ.- 16:00μ.μ.</option> <option value="14:00μ.μ.-17:00μ.μ." >14:00μ.μ.- 17:00μ.μ.</option> <option value="15:00μ.μ.-18:00μ.μ." >15:00μ.μ.- 18:00μ.μ.</option> <option value="16:00μ.μ.-19:00μ.μ." >16:00μ.μ.- 19:00μ.μ.</option> <option value="17:00μ.μ.-20:00μ.μ." >17:00μ.μ.- 20:00μ.μ.</option> <option value="18:00μ.μ.-21:00μ.μ." >18:00μ.μ.- 21:00μ.μ.</option> <option value="19:00μ.μ.-22:00μ.μ." >19:00μ.μ.- 22:00μ.μ.</option> </select> </span> <span> <select class="element select medium" id="pay" name="pay"> <option value="Τρόπος πληρωμής" selected="selected">Τρόπος πληρωμής </option> <option value="Αντικαταβολή" >Αντικαταβολή</option> <option value="Πιστωτική" >Πιστωτική</option> <option value="Άλλο" >Άλλο</option> </select> </span> </li> <li id="li_10"> <label for="add_paralavis"></label> <input type="text" name="add_paralavis" id="add_paralavis" value="Διευθ.παραλαβής" onblur="if(this.value.length == 0) this.value='Διευθ.παραλαβής';" onclick="if(this.value == 'Διευθ.παραλαβής') this.value='';"/> <label for="paraliptis"></label> <input type="text" name="paraliptis" id="paraliptis" value="Παραλήπτης" onblur="if(this.value.length == 0) this.value='Παραλήπτης';" onclick="if(this.value == 'Παραλήπτης') this.value='';"/> <span> <label for="add_paralavis, paraliptis">Συμπληρώστε αυτά τα 2 πεδία εαν τα στοιχεία παραλαβής είναι διαφορετικά απο αυτά που έχετε συμπληρώσει παραπάνω.</label></span></li> <li><center><b>Παρατηρήσεις-Επισημάνσεις</b></center> <label for="paratiriseis"></label> <textarea name="paratiriseis" id="paratiriseis" cols="45" rows="5" onblur="if(this.value.length == 0) this.value='Εισάγετε περισσότερες πληροφορίες';" onclick="if(this.value == 'Εισάγετε περισσότερες πληροφορίες') this.value='';" >Εισάγετε περισσότερες πληροφορίες</textarea> </li> <center><li class="buttons"> <input type="hidden" name="form_id" value="14416" /> <input name="submit" type="submit" class="button_text" id="saveForm" onclick="MM_validateForm('last_name','','R','name','','R','address','','R','number','','R','tk','','R','town','','R','phone','','R','mobile','','R','afm','','R','deh','','R');return document.MM_returnValue" value="Υποβολή στοιχείων" /> </li> </center> </ul> </form> </div> <img id="bottom" src="bottom.png" alt=""> </body> </html> ---------- Προσθήκη στις 15:15 ---------- Προηγούμενο μήνυμα στις 15:11 ---------- το sendmail > <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <?php $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/plain; charset=utf-8\r\n"; $to = "******@*******.gr"; $last_name = $_POST["last_name"]; $name = $_POST["name"]; $address = $_POST["address"]; $number = $_POST["number"]; $tk = $_POST["tk"]; $region = $_POST["region"]; $town = $_POST["town"]; $mail = $_POST["mail"]; $phone = $_POST["phone"]; $mobile = $_POST["mobile"]; $afm = $_POST["afm"]; $deh = $_POST["deh"]; $idiotita = $_POST["idiotita"]; $ktirio = $_POST["ktirio"]; $diamerisma = $_POST["diamerisma"]; $element_1_1 = $_POST["element_1_1"]; $element_1_2 = $_POST["element_1_2"]; $element_1_3 = $_POST["element_1_3"]; $hour = $_POST["hour"]; $pay = $_POST["pay"]; $subject = "Online παpαγγελία" ; $message = " Επώνυμο: $last_name - Όνομα: $name Οδός: $address - Αριθμός: $number Πόλη: $town - Περιοχή: $region ΤΚ: $tk Τηλέφωνο: $phone Κινητό: $mobile Email: $mail ΑΦΜ: $afm Κωδικός ΔΕΗ: $deh Ιδιότητα: $idiotita Κτίριο: $ktirio Διαμέρίσματα: $diamerisma Επιθυμητή ημερομηνία παραλαβής: $element_1_1 - $element_1_2 - $element_1_3 Επιθυμητή ώρα παραλαβής: $hour Τρόπος πληρωμής: $pay "; mail( $to, $subject, $message, $headers); echo "<center> Η καταχώρηση σας έγινε με επιτυχία. Ευχαριστούμε για την προτίμησή σας θα επικοινωνήσουμε μαζί σας το συντομότερο δυνατό. <p></p> Τα στοιχεία που καταχωρήσατε είναι τα εξής : <p></p> Επώνυμο: $last_name - Όνομα: $name <br> Οδός: $address - Αριθμός: $number <br> Πόλη: $town - Περιοχή: $region <br> ΤΚ: $tk <br> Τηλέφωνο: $phone <br> Κινητό: $mobile <br> Email: $mail <br> ΑΦΜ: $afm <br> Κωδικός ΔΕΗ: $deh <br> Ιδιότητα: $idiotita <br> Κτίριο: $ktirio <br> Διαμέρίσματα: $diamerisma <br> Επιθυμητή ημερομηνία παραλαβής: $element_1_1 - $element_1_3 - $element_1_3 <br> Επιθυμητή ώρα παραλαβής: $hour <br> Τρόπος πληρωμής: $pay" ; ?></center> Θα ήταν πιο εύκολο εάν μου έλεγες τι error σου πετάει.....
varemarious Δημοσ. 21 Σεπτεμβρίου 2010 Μέλος Δημοσ. 21 Σεπτεμβρίου 2010 :-D Notice: Undefined index: και τις γραμμές που αντιστοιχεί 6 , 7, 8, 9, 10, 12, 14, 15, 16, 17, 21, 22, 23. στο sendmail.php στην ουσία είναι τα πεδία που έχω ορίσει σαν required fields
dewn735 Δημοσ. 21 Σεπτεμβρίου 2010 Δημοσ. 21 Σεπτεμβρίου 2010 Η post στέλνει ό,τι βλέπει σαν "name", δηλαδή: ><input name="last_name" id="last_name" /> ενώ εσύ γράφεις ><input name="Επώνυμο" id="last_name" /> Άλλαξέ τα όλα και θα παίξει...
isay Δημοσ. 21 Σεπτεμβρίου 2010 Δημοσ. 21 Σεπτεμβρίου 2010 varemarious έχεις κάνει ένα μικρό αλλά σημαντικό λάθος. Στα πεδία με τα input δεν έχεις ορίσει σωστά τα Names. Π.χ. στο παρακάτω > <input id="last_name" name= "Επώνυμο" class="element text" maxlength="40" size="20" value="Επώνυμο*" onblur="if(this.value.length == 0) this.value='Επώνυμο*';" onclick="if(this.value == 'Επώνυμο*') this.value='';"/> </span> ενω το σωστό είναι το παρακάτω > <input id="last_name" name="last_name" class="element text" maxlength="40" size="20" value="Επώνυμο*" onblur="if(this.value.length == 0) this.value='Επώνυμο*';" onclick="if(this.value == 'Επώνυμο*') this.value='';"/> </span> όπου το name= "Επώνυμο" έχει αντικατασταθεί με το name="last_name" Οπότε, σε όλα τα input: -σβήσε το κενό ανάμεσα στο name= και την επόμενη λέξη -άλλαξε το περιεχόμενο του name βάζοντας ότι γράφει στο id Επίσης, θα σου πρότεινα να κάνεις ελέγχους ΚΑΙ στο sendemail.php, όπως επίσης να ελεγχεις αν έχει φύγει το email και μετά να τυπώνεις το μήνυμα επιβεβαίωσης. Στην παρακάτω sendemail, κάνω υποχρεωτικό έλεγχο για ύπαρξη του last_name Και name και ΑΝ υπάρχουν προσπαθώ να στείλω το email. ΑΝ σταλεί, τυπώνω μήνυμα επιβεβαίωσης > <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <?php $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/plain; charset=utf-8\r\n"; $to = "******@*******.gr"; $last_name = $_POST["last_name"]; $name = $_POST["name"]; $address = $_POST["address"]; $number = $_POST["number"]; $tk = $_POST["tk"]; $region = $_POST["region"]; $town = $_POST["town"]; $mail = $_POST["mail"]; $phone = $_POST["phone"]; $mobile = $_POST["mobile"]; $afm = $_POST["afm"]; $deh = $_POST["deh"]; $idiotita = $_POST["idiotita"]; $ktirio = $_POST["ktirio"]; $diamerisma = $_POST["diamerisma"]; $element_1_1 = $_POST["element_1_1"]; $element_1_2 = $_POST["element_1_2"]; $element_1_3 = $_POST["element_1_3"]; $hour = $_POST["hour"]; $pay = $_POST["pay"]; //EDO I PROTI PROS8IKI $last_name=addslashes($lastname); //POTE XORIS ADDSLASHES $name=addslashes($name); if ($last_name=='' || $name=='') { echo "MISSING INPUTS! Please click back to fill in all required inputs. Thank you"; } else { //EDO TELEIONEI I PROTI PROS8IKI $subject = "Online παpαγγελία" ; $message = " Επώνυμο: $last_name - Όνομα: $name Οδός: $address - Αριθμός: $number Πόλη: $town - Περιοχή: $region ΤΚ: $tk Τηλέφωνο: $phone Κινητό: $mobile Email: $mail ΑΦΜ: $afm Κωδικός ΔΕΗ: $deh Ιδιότητα: $idiotita Κτίριο: $ktirio Διαμέρίσματα: $diamerisma Επιθυμητή ημερομηνία παραλαβής: $element_1_1 - $element_1_2 - $element_1_3 Επιθυμητή ώρα παραλαβής: $hour Τρόπος πληρωμής: $pay "; // EDO I DEUTERI PROS8IKI if(mail( $to, $subject, $message, $headers)) { //pou simainei oti egine i apostoli // TELOS DEUTERI PROS8IKI echo "<center> Η καταχώρηση σας έγινε με επιτυχία. Ευχαριστούμε για την προτίμησή σας θα επικοινωνήσουμε μαζί σας το συντομότερο δυνατό. <p></p> Τα στοιχεία που καταχωρήσατε είναι τα εξής : <p></p> Επώνυμο: $last_name - Όνομα: $name <br> Οδός: $address - Αριθμός: $number <br> Πόλη: $town - Περιοχή: $region <br> ΤΚ: $tk <br> Τηλέφωνο: $phone <br> Κινητό: $mobile <br> Email: $mail <br> ΑΦΜ: $afm <br> Κωδικός ΔΕΗ: $deh <br> Ιδιότητα: $idiotita <br> Κτίριο: $ktirio <br> Διαμέρίσματα: $diamerisma <br> Επιθυμητή ημερομηνία παραλαβής: $element_1_1 - $element_1_3 - $element_1_3 <br> Επιθυμητή ώρα παραλαβής: $hour <br> Τρόπος πληρωμής: $pay" ; // EDO I triti PROS8IKI } else { //stin periptosi pou to email den efige echo "Provlima. To email den efige"; } } //i aggili auti itan ena if an DEN exei kena pedia // TELSO triti PROS8IKI ?></center> Είδες τι παθαίνεις άμα δεν ψωνίζεις απο Δελαπόρτα; (αστειεύομαι στα όρια του γελοίου)
varemarious Δημοσ. 21 Σεπτεμβρίου 2010 Μέλος Δημοσ. 21 Σεπτεμβρίου 2010 όντως παίζει αλλά ο λόγος που το μετονόμασα είναι ότι όταν δεν έχω συμπληρώσει αυτά τα πεδία μου λέει απαιτείται last_name, name κ.ο.κ οπότε εγώ δε θέλω να βλέπει τις ονομασίες των πεδίων που έχω δώσει αλλά επώνυμο, όνομα κτλ. **isay θα το κάνω αυτό που λές στο sendmail ότι χρειάζεται να προστεθεί , θα το προσθέσω. για δώσε μου αυτού του δελαπόρτα το τηλέφωνο να ψωνίσω απο κει την επόμενη φορά.
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.