yoyo1404 Posté 21 Février 2006 Posté 21 Février 2006 voila, je travaille dans un golf et je suis actuellement en train de mettre à jour le site web. J'aimerai pouvoir créer un formulaire afin que les membres puissent faire des demandes de reservation cependant, j'ai deux petites questions: La premiere, lorsque je clique sur valider, je reviens sur la page avec tout les champs qui se sont revidés. Comment puis je rediriger les personnes sur une autre page. La seconde, comment puis je enregistrer les données envoyées car pour l'instant, riun ne se passe et je ne vois pas comment faire sous dreamweaver 2004 je présume qu'il faut passer par le php mais je ne m'y connais pas encore tropp, j'ai bien un bouquin mais il ne donne pas vraiement d'aide à ce sujet merci, toutes les réponses seront le bienvenue. Voila le code de mon formulaire: html<form action="" method="post" name="Contact" id="Contact"> <div align="center"> <table width="710" height="578" border="0" class="test"> <tr class="Style1"> <td width="251" height="135"> </td> <td width="143" align="right"> </td> <td width="8"> </td> <td width="290"><div align="center"></div></td> </tr> <tr class="Style1"> <td width="251" height="111"> </td> <td width="143" align="right" valign="top"><p class="Style1">Name</p> <p class="Style1">Surname</p> <p class="Style1">E-mail</p></td> <td width="8"> </td> <td width="290" valign="top"><p> <span class="Style1"> <input name="Nom" type="text" id="Nom" onBlur="MM_validateForm('Nom','','R');return document.MM_returnValue"> </span></p> <p> <span class="Style1"> <input name="Prénom" type="text" id="Prénom"> </span></p> <p> <input name="email" type="text" id="email" onBlur="MM_validateForm('email','','RisEmail');return document.MM_returnValue"> </p></td> </tr> <tr class="Style1"> <td width="251" height="42"> </td> <td width="143" align="right">You are </td> <td width="8"> </td> <td width="290"> <p> <label> <input name="Member" type="radio" value="bouton radio" checked> a Member </label> <label> <input type="radio" name="Guest" value="bouton radio"> </label> an unaccompanied Guest <br> </p> </td> </tr> <tr class="Style1"> <td width="251" height="26"> </td> <td width="143" align="right">You would like to reserve </td> <td width="8"> </td> <td width="290"><input name="Green Fee" type="checkbox" id="Green Fee" value="checkbox"> a Green Fee <input name="Room" type="checkbox" id="Room" value="checkbox"> a Room </td> </tr> <tr class="Style1"> <td width="251" height="21"> </td> <td width="143" align="right">Arrival Date </td> <td width="8"> </td> <td width="290"><select name="arrival day" id="arrival day"> <option selected>1</option> <option>2</option> <option>3</option> <option>4</option> <option>5</option> <option>6</option> <option>7</option> <option>8</option> <option>9</option> <option>10</option> <option>11</option> <option>12</option> <option>13</option> <option>14</option> <option>15</option> <option>16</option> <option>17</option> <option>18</option> <option>19</option> <option>20</option> <option>21</option> <option>22</option> <option>23</option> <option>24</option> <option>25</option> <option>26</option> <option>27</option> <option>28</option> <option>29</option> <option>30</option> <option>31</option> </select> <select name="Arrival month" id="select"> <option selected>January</option> <option>February</option> <option>March</option> <option>April</option> <option>May</option> <option>Juin</option> <option>July</option> <option>August</option> <option>September</option> <option>October</option> <option>November</option> <option>December</option> </select> <select name="Arrival Year" id="Arrival Year"> <option selected>2006</option> <option>2007</option> </select></td> </tr> <tr class="Style1"> <td width="251" height="29"> </td> <td width="143" align="right">Departure Date </td> <td width="8"> </td> <td width="290"><select name="Departure day" id="Departure day"> <option selected>1</option> <option>2</option> <option>3</option> <option>4</option> <option>5</option> <option>6</option> <option>7</option> <option>8</option> <option>9</option> <option>10</option> <option>11</option> <option>12</option> <option>13</option> <option>14</option> <option>15</option> <option>16</option> <option>17</option> <option>18</option> <option>19</option> <option>20</option> <option>21</option> <option>22</option> <option>23</option> <option>24</option> <option>25</option> <option>26</option> <option>27</option> <option>28</option> <option>29</option> <option>30</option> <option>31</option> </select> <select name="Departure Month" id="Departure Month"> <option selected>January</option> <option>February</option> <option>March</option> <option>April</option> <option>May</option> <option>Juin</option> <option>July</option> <option>August</option> <option>September</option> <option>October</option> <option>November</option> <option>December</option> </select> <select name="Departure Year" id="Departure Year"> <option selected>2006</option> <option>2007</option> </select></td> </tr> <tr class="Style1"> <td width="251" height="29"> </td> <td align="right">Number of Rooms</td> <td> </td> <td><select name="nbre room" id="nbre room"> <option selected>0</option> <option>1</option> <option>2</option> <option>3</option> <option>4</option> <option>5</option> <option>6</option> <option>7</option> <option>8</option> </select></td> </tr> <tr class="Style1"> <td width="251" height="27"> </td> <td align="right">Villa / Appartment </td> <td> </td> <td><select name="Villa" id="Villa"> <option selected>Choose</option> <option>Monte Carlo</option> <option>St Tropez</option> <option>Cannes</option> <option>Ste Maxime</option> <option>St Paul</option> <option>Pagnol</option> <option>Les Arcs Appartment</option> <option>Grimaud Appartment</option> </select></td> </tr> <tr class="Style1"> <td width="251" height="84"> </td> <td width="143" align="right" class="Style1">Comments</td> <td width="8"> </td> <td width="290"><textarea name="Comment" rows="3" class="Style1" id="Comment"></textarea></td> </tr> <tr class="Style1"> <td width="251" height="22"> </td> <td width="143" align="right"> </td> <td width="8"> </td> <td width="290"> </td> </tr> <tr class="Style1"> <td width="251" height="23"> </td> <td width="143" align="right"> </td> <td width="8"> </td> <td width="290"> <a href="#Remerciementformulaire.html"> <input name="imageField" type="image" src="Photos/valider.jpg" width="127" height="38" border="0"> </a></td> </tr> </table> </div></form>
MS-DOS_1991 Posté 21 Février 2006 Posté 21 Février 2006 Salut à toi yoyo1404 La premiere, lorsque je clique sur valider, je reviens sur la page avec tout les champs qui se sont revidés. Comment puis je rediriger les personnes sur une autre page. Utilise l'attribut action de la balise <form>: <form action="ta_page_de_traitement.php" method="post">
yoyo1404 Posté 21 Février 2006 Auteur Posté 21 Février 2006 Utilise l'attribut action de la balise <form>: Je dois la mettre où dans mon code, je dois t'avouer que je ne suis pas trop familiariser avec le code html et encore moins avec le php <form action="ta_page_de_traitement.php" method="post"> comment je peux faire cette fameuse page, j'ai bien créer la base de donnée avec my SQL mais ensuite, l'utiliser, c une autre paire de manche. Je ne m'en sors pas, j'ai passé tout le week end dessus et j'ai vraiement beaucoup de mal
captain_torche Posté 21 Février 2006 Posté 21 Février 2006 Je dois la mettre où dans mon code, je dois t'avouer que je ne suis pas trop familiariser avec le code html et encore moins avec le php Dans dreamweaver, quand tu cliques sur ton formulaire, dans la fenêtre propriétés tu devrais avoir un champ "action", à remplir. Tu peux également activer le mode 'visualisation du code' de dreamweaver (j'me souviens plus de l'icône précisément, mais elle doit se situer en haut à gauche) comment je peux faire cette fameuse page, j'ai bien créer la base de donnée avec my SQL mais ensuite, l'utiliser, c une autre paire de manche. Je ne m'en sors pas, j'ai passé tout le week end dessus et j'ai vraiement beaucoup de mal Là, le souci va être d'apprendre les bases du PHP. Si tu as du temps et que tu es motivé, je te conseille de consulter les tutos du site du zéro, ils sont très bien faits.
robinsonvendredi Posté 21 Février 2006 Posté 21 Février 2006 comment puis je enregistrer les données envoyées MS-DOS t'a indiqué qu'il fallait spécifier la page sur laquelle les données sont postées. (Ceci dit ça peut très bien être la page sur laquelle tu travailles). Le principe c'est que chaque champ du formulaire (comme name="Nom") est une variable qui prend une valeur (ce que la personne saisit dans le champ) et c'est cette valeur qui est récupérée au moyen de code : php, jsp, asp, ....net, tu as le choix. Donc en haut de la page qui recoit le post, tu définis une variable qui grâce à un objet de type "Request", prend la valeur du champ en question. Il est clair que tu auras autant de variables que de champs récupérés. Puis c'est l'insertion dans la base de données qui se fait après s'y être connecté (au moyen d'un autre objet de type "Connection"). Cette étape suppose que tu connaisse un peu de syntaxe SQL. Les valeurs des variables sont passées dans une requête d'insertion sur la base de données. Plonge toi dans ton bouquin et préviens-nous lorsque tu auras réussi tout ça... ,sache que ce n'est que le début de l'aventure !
Dudu Posté 21 Février 2006 Posté 21 Février 2006 Bonjour, bienvenue sur le Hub À mon avis, si tu n'y connais rien ni en HTML ni en PHP ne te lances pas dans cette aventure. Cela impliquerait pour toi l'apprentissage préalable des rudiments élémentaires qui vont t'être nécessaires, et c'est çà qui prendra bien plus de temps que le reste. Le plus simple est d'utiliser quelque chose de "tout fait" et de le copier-coller. Pas besoin d'aller très loin, Webmaster-Hub a ce qu'il te faut: Un "mailer" pour votre site web. Tu te compliqueras moins la vie. Par contre, pour faire tourner ce script, il faut impérativement que ton hébergement supporte le PHP. C'est d'ailleurs valable pour tous les traitements de formulaire quels qu'ils soient. L'HTML n'est qu'un langage de mise en page, et absolument pas de traitement de données. Bon courage, tiens nous au courant
yoyo1404 Posté 24 Février 2006 Auteur Posté 24 Février 2006 Le plus simple est d'utiliser quelque chose de "tout fait" et de le copier-coller. Pas besoin d'aller très loin, Webmaster-Hub a ce qu'il te faut: Un "mailer" pour votre site web. Tu te compliqueras moins la vie. En effet, Merci Dudu, Cependant, j'aimerais savoir si je pouvais modifier ce qu'il y a à l'intérieur de ce code, en effet, malheureusement, celui ci est trop, "simple" pour moi... est ce que, grâce à Dream weaver, je peux le modifier ou est ce qu'il ne faut pas y toucher pour qu'il marche de plus, les parties ecrites en orange à l'intérieur du code, c'est à dire, toutes les petites remarque du webmaster que je remercie par la meme occasion, dois je les supprimer ou est ce qu'ils peuvent rester telles qu'elles. Sinon, pour le PHP, y'a aucun problème, mon hébergeur l'accepte. Merci à toi....
captain_torche Posté 24 Février 2006 Posté 24 Février 2006 Le code, tu peux le modifier à ta guise, puisque je pense que l'auteur le permet (d'ailleurs, il serait sympathique de mettre les conditions d'utilisation des scripts soient précisées dans la page), tant que tu sais ce que tu fais. Sinon, en ce qui concerne les commentaires, tu peux les supprimer, mais je te conseille tout de même de les laisser, ils sont là pour t'aider à comprendre.
yoyo1404 Posté 24 Février 2006 Auteur Posté 24 Février 2006 Sinon, en ce qui concerne les commentaires, tu peux les supprimer, mais je te conseille tout de même de les laisser, ils sont là pour t'aider à comprendre. Mais ils n'apparaitront pas dans ma page web??? De Plus, je suis en train de voir comment les modifier et de comprendre le code de ce formulaire. Je pense que jke suis obligé de créer une base sql pour pouvoir utiliser ce code non???
robinsonvendredi Posté 24 Février 2006 Posté 24 Février 2006 Mais ils n'apparaitront pas dans ma page web??? De Plus, je suis en train de voir comment les modifier et de comprendre le code de ce formulaire. Je pense que jke suis obligé de créer une base sql pour pouvoir utiliser ce code non??? <{POST_SNAPBACK}> ils n'apparaitront pas dans ta page. Tu n'es pas obligé de créer une base sql pour utiliser le code. Ce code envoie le mail de réservation. Cependant, il peut être utile de créer une base web pour enregistrer cette réservation.
yoyo1404 Posté 24 Février 2006 Auteur Posté 24 Février 2006 quelle est la différence entre une base sql et une base web...
robinsonvendredi Posté 24 Février 2006 Posté 24 Février 2006 Oups j'ai écrit "base web". base web = base de données web donc accessible grâce au langage sql bien sûr. Yoyo essaye déjà de faire fonctionner l'envoi d'email à partir de ton formulaire. Tu verras après pour la base de données, tu pourras ajouter cette fonctionnalité après coup
yoyo1404 Posté 25 Février 2006 Auteur Posté 25 Février 2006 Bon voila ce que j'ai fait: j'ai repris mon formulaire dont voici le code: <form name="form1" method="post" action="reservation.php"> <div align="center"> <table width="710" height="578" border="0" class="test"> <tr class="Style1"> <td width="251" height="135"> </td> <td width="143" align="right"> </td> <td width="8"> </td> <td width="290"><div align="center"></div></td> </tr> <tr class="Style1"> <td width="251" height="111"> </td> <td width="143" align="right" valign="top"><p class="Style1">Name</p> <p class="Style1">Surname</p> <p class="Style1">E-mail</p></td> <td width="8"> </td> <td width="290" valign="top"><p> <span class="Style1"> <input name="nom" type="text" id="Nom"> </span></p> <input name="prenom" type="text" id="Prenom"> </span></p> <p> <input name="email" type="text" id="email"> </p></td> </tr> <tr class="Style1"> <td width="251" height="42"> </td> <td width="143" align="right">You are </td> <td width="8"> </td> <td width="290"> <p> <label> <input type="radio" name="member" value="member">A member</label> <br> <label> <input type="radio" name="guests" value="guest">An unaccompanied guest</label> <br> </p> </td> </tr> <tr class="Style1"> <td width="251" height="26"> </td> <td width="143" align="right">You would like to reserve </td> <td width="8"> </td> <td width="290"><input name="greenfee" type="checkbox" id="greenfee" value="greenfee"> a Green Fee <input name="room" type="checkbox" id="room" value="room"> a Room </td> </tr> <tr class="Style1"> <td width="251" height="21"> </td> <td width="143" align="right">Arrival Date </td> <td width="8"> </td> <td width="290"><select name="arrivalday" id="arrivalday"> <option selected>1</option> <option>2</option> <option>3</option> <option>4</option> <option>5</option> <option>6</option> <option>7</option> <option>8</option> <option>9</option> <option>10</option> <option>11</option> <option>12</option> <option>13</option> <option>14</option> <option>15</option> <option>16</option> <option>17</option> <option>18</option> <option>19</option> <option>20</option> <option>21</option> <option>22</option> <option>23</option> <option>24</option> <option>25</option> <option>26</option> <option>27</option> <option>28</option> <option>29</option> <option>30</option> <option>31</option> </select> <select name="arrivalmonth" id="arrivalmonth"> <option selected>January</option> <option>February</option> <option>March</option> <option>April</option> <option>May</option> <option>Juin</option> <option>July</option> <option>August</option> <option>September</option> <option>October</option> <option>November</option> <option>December</option> </select> <select name="arrivalyear" id="arrivalyear"> <option selected>2006</option> <option>2007</option> </select></td> </tr> <tr class="Style1"> <td width="251" height="29"> </td> <td width="143" align="right">Departure Date </td> <td width="8"> </td> <td width="290"><select name="departureday" id="departureday"> <option selected>1</option> <option>2</option> <option>3</option> <option>4</option> <option>5</option> <option>6</option> <option>7</option> <option>8</option> <option>9</option> <option>10</option> <option>11</option> <option>12</option> <option>13</option> <option>14</option> <option>15</option> <option>16</option> <option>17</option> <option>18</option> <option>19</option> <option>20</option> <option>21</option> <option>22</option> <option>23</option> <option>24</option> <option>25</option> <option>26</option> <option>27</option> <option>28</option> <option>29</option> <option>30</option> <option>31</option> </select> <select name="departuremonth" id="departuremonth"> <option selected>January</option> <option>February</option> <option>March</option> <option>April</option> <option>May</option> <option>Juin</option> <option>July</option> <option>August</option> <option>September</option> <option>October</option> <option>November</option> <option>December</option> </select> <select name="departureyear" id="departureyear"> <option selected>2006</option> <option>2007</option> </select></td> </tr> <tr class="Style1"> <td width="251" height="29"> </td> <td align="right">Number of Rooms</td> <td> </td> <td><select name="nbreroom" id="nbreroom"> <option selected>0</option> <option>1</option> <option>2</option> <option>3</option> <option>4</option> <option>5</option> <option>6</option> <option>7</option> <option>8</option> </select></td> </tr> <tr class="Style1"> <td width="251" height="27"> </td> <td align="right">Villa / Appartment </td> <td> </td> <td><select name="Villa" id="Villa"> <option selected>Choose</option> <option>Monte Carlo</option> <option>St Tropez</option> <option>Cannes</option> <option>Ste Maxime</option> <option>St Paul</option> <option>Pagnol</option> <option>Les Arcs Appartment</option> <option>Grimaud Appartment</option> </select></td> </tr> <tr class="Style1"> <td width="251" height="84"> </td> <td width="143" align="right" class="Style1">Comments</td> <td width="8"> </td> <td width="290"><textarea name="comment" rows="3" class="Style1" id="comment"></textarea></td> </tr> <tr class="Style1"> <td width="251" height="22"> </td> <td width="143" align="right"> </td> <td width="8"> </td> <td width="290"> </td> </tr> <tr class="Style1"> <td width="251" height="23"> </td> <td width="143" align="right"> </td> <td width="8"> </td> <td width="290"> <input type="submit" name="Submit" value="Envoyer"></td> </tr> </table> </div></form> et j'ai egalement repris la page php de l'ancienne version du site: <?php if (isset($_POST['Submit'])) { $nom = $_POST['nom'] ; $prenom = $_POST['prenom'] ; $email = $_POST['email'] ; $member = $_POST['member'] ; $guest = $_POST['guests'] ; $greenfee = $_POST['greenfee'] ; $room = $_POST['room'] ; $arrivalday = $_POST['arrivalday'] ; $departureday = $_POST['departurday'] ; $arrivalmonth = $_POST['arrivalmonth'] ; $departuremonth = $_POST['departuremonth'] ; $nbreroom = $_POST['nbreroom'] ; $villa = $_POST['villa'] ; $comment = $_POST['comment'] ; $message = "Nouvelle réservation,Nom : $nomPrénom : $prenomEmail : $emailMember : $memberGuest : $guestGreen Fee : $greenfeeStay : $roomDu $arrivalday du mois : $arrivalmonth Au jour : $departureday mois : $departuremonthNbre de chambre : $nbreroomVilla principale désirée : $villaRenseignements : $comment " ;$envoi = mail("pia_AT_leprince.fr","Réservation",$message) ;print "<br><br><h3><font color=red>";if ($envoi)print "Remerciementformulaire.html";elseprint "Désolé, votre demande n'a pu aboutir, veuillez la renouveler" ;print "</font></h3>" ; }?> en le modifiant avec les nouvelles id de variables. sans pouir autant modifier la base de donner en elle-meme. Cependant, lorsque je recois le mail, seul quelques elements s'affichent et d'autrres sont "oublier". Dois je toucher au sql??? et dans ce cas, ou est ce que je le trouve
yoyo1404 Posté 25 Février 2006 Auteur Posté 25 Février 2006 Merci à tous, je viens enfin de trouver toutes les reponses à mes questions. une seule subsiste néamoins. quelle ligne de code dois je introduire dans ma page php pour rediriger les visiteurs vers une page de mon choix, comme la page d'accueil par exemple???
MS-DOS_1991 Posté 25 Février 2006 Posté 25 Février 2006 Utilise la fonction header() de PHP exemple: header('Location: http://www.tonsite.com/tapageweb.php'); :!: Cette fonction doit être utilisée avant tout retour au navigateur, que ce soit de la forme d'un texte et même d'un espace :!: pas bon: echo 'test'; header('Location: pagedetest.php');
yoyo1404 Posté 25 Février 2006 Auteur Posté 25 Février 2006 Et ce ci, je le met à la fin de toutes les dernieres lignes et je les effacent: print "<br><br><h3><font color=red>";if ($envoi)print "Remerciementformulaire.html";elseprint "Désolé, votre demande n'a pu aboutir, veuillez la renouveler" ;print "</font></h3>" ;}?> c'est ca ce que tu veux dire. J'ai un peu de mal à te suivre.
MS-DOS_1991 Posté 25 Février 2006 Posté 25 Février 2006 Si tu dois absolument envoyer du code html avant de rediriger le visiteur, tu peux par exemple utiliser une balise meta et/ou du javascript au lieu de header(): <?php...if(blablabla){?><html><head><meta http-equiv="refresh" content="0;http://www.tonsite.com/index.php" /></head><body><p>Vous allez être redirigé vers l'accueil du site.</p></body></html><?php}...?>
yoyo1404 Posté 25 Février 2006 Auteur Posté 25 Février 2006 print "<br><br><h3><font color=red>";if ($envoi)print "Remerciementformulaire.html";elseprint "Désolé, votre demande n'a pu aboutir, veuillez la renouveler" ;print "</font></h3>" ;}?> <html><head><meta http-equiv="refresh" content="0;http://www.tonsite.com/index.php" /></head><body><p>Vous allez être redirigé vers l'accueil du site.</p></body></html><?php}...?> Je ne sais pas ou tu veux que je le mette, si je fais comme ca, j'obtiens un message d'erreur...
MS-DOS_1991 Posté 25 Février 2006 Posté 25 Février 2006 <?php[...]?><html><head><meta http-equiv="refresh" content="0;http://www.tonsite.com/index.php" /></head><body><h3 style="color: red;"><?phpif ($envoi) echo 'Remerciementformulaire.html';else echo 'Désolé, votre demande n\'a pu aboutir, veuillez la renouveler';?></h3><p>Vous allez être redirigé vers l'accueil du site.</p></body></html><?php[...]?>
yoyo1404 Posté 25 Février 2006 Auteur Posté 25 Février 2006 Parse error: syntax error, unexpected $end in /home/vid/www/reservation.php on line 57 Je ne sais pas ce qu'il me fait à chaque fois, il me dit que la syntaxe est mauvaise sur la derniere ligne.
Dudu Posté 26 Février 2006 Posté 26 Février 2006 echo 'Remerciementformulaire.html'; J'ai beau être une buse en PHP, mais çà je suis désolé çà ne veut rien dire. Rien, vraiment rien. Je ne sais pas s'il est vraiment nécessaire que je me répète mais un script tout fait fera amplement l'affaire. Essayer d'expliquer des notions telles que celles-ci a un débutant (avec tout le respect qu'on lui doit bien sûr) c'est perdre du temps, ce n'est pas le faire avancer. http://www.comscripts.com/scripts/php.formulaires.sc8.html par exemple Cordialement
yoyo1404 Posté 26 Février 2006 Auteur Posté 26 Février 2006 A Y'EST, je viens enfin de réussir à faire quelque chose d'assez bien, je tenait à tous vous remercier pour votre aide... Merci beaucoup.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant