12 utilisateurs inconnus

 Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet :

Problème php pour créer un formulaire pour mon site

 
n°391897
jeff_fongu​i
Profil : Inconnu(e)
Posté le 24-01-2007 à 23:06:54  profilanswer
 

Bonjour,  
 
J'ai créé un site internet pour une association qui organise des concerts. J'ai essayé de créer un formulaire permettant de réserver des places en ligne avec une première page html contenant le formulaire, puis une php qui renvoie sur une seconde page avec un message confirmant l'envoi du mail.
 
la première partie fonctionne très bien, nous recevons les mails qui proviennent de ce site. seulement, quand j'essaye de réserver depuis le site, et que j'appuye sur Envoyer, un message d'erreur s'affiche à l'écran car l'ordinateur ne trouve pas la page qui devrait s'afficher avec un message confirmant l'envois du mail. les utilisateurs ne savent donc pas que j'ai bien reçu leur réservation.  
Peut-être est-ce plus simple si j'envoie les pages en code, j'ai du faire une erreur quelque part (en fait, je me suis inspirée d'un conseil sur internet, car je ne maîtrise pas encore très bien le php).
Merci si vous pouvez m'aider !

mood
Publicité
Posté le 24-01-2007 à 23:06:54  profilanswer
 

n°391915
bodbod
Planquez vous, bodbod arrive..
Profil : Star du forum
Posté le 25-01-2007 à 21:54:12  profilanswer
 

As tu verifier la page appelé par le formulaire ?

Code :
  1. <form action="ta_page.php">


 
Si tu passe bien dans la page, as tu verifier la page de redirection ?


---------------
Attention, un petit bodbod est en cours d'assemblage !!!
Il viendra prendre ma place à sa sortie :D
n°392125
jeff_fongu​i
Profil : Inconnu(e)
Posté le 01-02-2007 à 17:13:58  profilanswer
 

bodbod a écrit :

As tu verifier la page appelé par le formulaire ?

Code :
  1. <form action="ta_page.php">


 
Si tu passe bien dans la page, as tu verifier la page de redirection ?


 
Merci pour la réponse, je pense avoir bien tout réverifié, c'est pour ça que je ne comprends pas . voici les trois pages concernées  
 
Page avec le formulaire :  
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>
<meta http-equiv="page-Type" page="text/html; charset=iso-8859-1">  
  <meta content="Geoffroy de Fontgalland" name="author">
  <meta content="R&eacute;sum&eacute; de la formation et des exp&eacute;riences professionnelles de Geoffroy de Fontgalland" name="description">
  <meta name="keywords" content="chant lyrique, baryton, basse, lied, m&amp;eacutelodie francaise, Geoffroy de fontgalland, r&amp;eacutecital, concert">
  <title>Reservations</title>
  <link rel="stylesheet" type="text/css" href="styles_CS.css" />
  <script type="text/javascript">
  <!--
  function getWindowHeight() {
   var windowHeight = 0;
   if (typeof(window.innerHeight) == 'number') {
    windowHeight = window.innerHeight;
   }
   else {
    if (document.documentElement && document.documentElement.clientHeight) {
     windowHeight = document.documentElement.clientHeight;
    }
    else {
     if (document.body && document.body.clientHeight) {
      windowHeight = document.body.clientHeight;
     }
    }
   }
   return windowHeight;
  }
  function setPage()
  {
   if (document.getElementById) {
    var windowHeight = getWindowHeight();
    if (windowHeight > 0) {
     document.getElementById('page').style.height = (windowHeight-30) +'px';
     document.getElementById('image_bas').style.position = 'absolute';
     document.getElementById('image_bas').style.bottom =  40 + 'px';
    }    
   }
  }
 
  function setContent()
  {
   if (document.getElementById) {
    var windowHeight = getWindowHeight();
    if (windowHeight > 0) {
     var pageHeight = document.getElementById('page').offsetHeight;
     var headerHeight = document.getElementById('header').offsetHeight;
     if ( (pageHeight - headerHeight) >= 0) {
      document.getElementById('content').style.height =  (pageHeight - headerHeight-10) +'px';      
      document.getElementById('gauche').style.height =  (pageHeight - headerHeight-10) +'px';
      document.getElementById('droite').style.height =  (pageHeight - headerHeight-10) +'px';
       
     }      
    }
   }
  }
  function setFooter() {
   if (document.getElementById) {
    var windowHeight = getWindowHeight();
    if (windowHeight > 0) {
     var pageHeight = document.getElementById('page').offsetHeight;
     var footerElement = document.getElementById('footer');
     var footerHeight  = footerElement.offsetHeight;
     if (windowHeight - (pageHeight + footerHeight) >= 0) {
      footerElement.style.position = 'relative';
      footerElement.style.top = (windowHeight - (pageHeight + footerHeight)) + ' px';
     }
     else {
      footerElement.style.position = 'static';
     }
    }
   }
  }
  window.onload = function() {
   setPage();
   setContent();
   setFooter();      
  }
  window.onresize = function() {
   setPage();
   setContent();
   setFooter();      
  }
  //-->
  </script></head>
 
 <body>
  <div id="page">
   <div id="header">
    RESERVATIONS
   </div>
   <div id="content">
    <div id="gauche">
      <div id="image_bas" ><img src="images/logo.jpg" /></div>
     </div>
    <div id="droite"><br />
    <div class="titre">Invitation au voyage</div>
    <br />
    <br />
    <br />
<div align=center>
<form method=POST action=formmail.php>  
<input type=hidden name=subject value=formmail>
<table>
<tr><td>Nom et Prenom:</td>
    <td><input type=text name=nom size=30></td></tr>
<tr><td>Email:</td>
    <td><input type=text name=email size=30></td></tr>
<tr><td>Nombres de Places à 16€:</td>
 <td><input type=text name=plein_tarif size=30></td></tr>
<tr><td>Nombres de Places à 12€:</td>
 <td><input type=text name=tarif_reduit size=30></td></tr>  
<tr><td colspan=2>Commentaires:<br>
  <textarea COLS=50 ROWS=6 name=comments></textarea>
</td></tr>
</table>
<br> <input type=submit value=Envoyer> -
     <input type=reset value=Annuler>
</form>
</div>
    </div>
 
 
  <div id="footer">
   <a href="index.html" >Accueil</a>
    <a href="presentation_cs.html" >Pr&eacute;sentation</a>
    <a href="saison_2007_cs.html" >Saison 2007</a>
    <a href="artistes_cs.html" >Artistes</a>
    <a href="audio_cs.html" >Audio</a>
    <a href="photos_cs.html" >Photos</a>
    <a href="votre_concert_cs.html" >Votre concert</a>
    <a href="nous_soutenir_cs.html" >Nous soutenir</a>
    <a href="contact_cs.html" >Contact</a>
  </div>
 </body></html>
 
Page appelée par le formulaire :  
 
<?php
$TO = "conspirito@free.fr";
 
$h  = "From: " . $TO;
 
$message = "";
 
while (list($key, $val) = each($HTTP_POST_VARS)) {
  $message .= "$key : $val\n";
}
 
mail($TO, $subject, $message, $h);
 
Header("Location: http://www.conspirito.asso.fr/rese [...] html&#034; );
 
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>
<meta http-equiv="page-Type" page="text/html; charset=iso-8859-1">  
  <meta content="Geoffroy de Fontgalland" name="author">
  <meta content="Photos de Geoffroy de Fontgalland" name="description">
  <meta name="keywords" content="chant lyrique, baryton, basse, lied, m&amp;eacutelodie francaise, Geoffroy de fontgalland, r&amp;eacutecital, concert">
  <title>Reservation</title>
  <link rel="stylesheet" type="text/css" href="styles.css" />
  <script type="text/javascript">
  <!--
  function getWindowHeight() {
   var windowHeight = 0;
   if (typeof(window.innerHeight) == 'number') {
    windowHeight = window.innerHeight;
   }
   else {
    if (document.documentElement && document.documentElement.clientHeight) {
     windowHeight = document.documentElement.clientHeight;
    }
    else {
     if (document.body && document.body.clientHeight) {
      windowHeight = document.body.clientHeight;
     }
    }
   }
   return windowHeight;
  }
  function setPage()
  {
   if (document.getElementById) {
    var windowHeight = getWindowHeight();
    if (windowHeight > 0) {
     document.getElementById('page').style.height = (windowHeight-30) +'px';
     document.getElementById('image_bas').style.position = 'absolute';
     document.getElementById('image_bas').style.bottom =  40 + 'px';
    }    
   }
  }
 
  function setContent()
  {
   if (document.getElementById) {
    var windowHeight = getWindowHeight();
    if (windowHeight > 0) {
     var pageHeight = document.getElementById('page').offsetHeight;
     var headerHeight = document.getElementById('header').offsetHeight;
     if ( (pageHeight - headerHeight) >= 0) {
      document.getElementById('content').style.height =  (pageHeight - headerHeight-10) +'px';      
      document.getElementById('gauche').style.height =  (pageHeight - headerHeight-10) +'px';
      document.getElementById('droite').style.height =  (pageHeight - headerHeight-10) +'px';
       
     }      
    }
   }
  }
  function setFooter() {
   if (document.getElementById) {
    var windowHeight = getWindowHeight();
    if (windowHeight > 0) {
     var pageHeight = document.getElementById('page').offsetHeight;
     var footerElement = document.getElementById('footer');
     var footerHeight  = footerElement.offsetHeight;
     if (windowHeight - (pageHeight + footerHeight) >= 0) {
      footerElement.style.position = 'relative';
      footerElement.style.top = (windowHeight - (pageHeight + footerHeight)) + ' px';
     }
     else {
      footerElement.style.position = 'static';
     }
    }
   }
  }
  window.onload = function() {
   setPage();
   setContent();
   setFooter();      
  }
  window.onresize = function() {
   setPage();
   setContent();
   setFooter();      
  }
 
  //-->
   
</html>
 
 
et la dernière page  :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>
<meta http-equiv="page-Type" page="text/html; charset=iso-8859-1">  
  <meta content="Geoffroy de Fontgalland" name="author">
  <meta content="R&eacute;sum&eacute; de la formation et des exp&eacute;riences professionnelles de Geoffroy de Fontgalland" name="description">
  <meta name="keywords" content="chant lyrique, baryton, basse, lied, m&amp;eacutelodie francaise, Geoffroy de fontgalland, r&amp;eacutecital, concert">
  <title>Réservation</title>
  <link rel="stylesheet" type="text/css" href="styles_CS.css" />
  <script type="text/javascript">
  <!--
  function getWindowHeight() {
   var windowHeight = 0;
   if (typeof(window.innerHeight) == 'number') {
    windowHeight = window.innerHeight;
   }
   else {
    if (document.documentElement && document.documentElement.clientHeight) {
     windowHeight = document.documentElement.clientHeight;
    }
    else {
     if (document.body && document.body.clientHeight) {
      windowHeight = document.body.clientHeight;
     }
    }
   }
   return windowHeight;
  }
  function setPage()
  {
   if (document.getElementById) {
    var windowHeight = getWindowHeight();
    if (windowHeight > 0) {
     document.getElementById('page').style.height = (windowHeight-30) +'px';
     document.getElementById('image_bas').style.position = 'absolute';
     document.getElementById('image_bas').style.bottom =  40 + 'px';
    }    
   }
  }
 
  function setContent()
  {
   if (document.getElementById) {
    var windowHeight = getWindowHeight();
    if (windowHeight > 0) {
     var pageHeight = document.getElementById('page').offsetHeight;
     var headerHeight = document.getElementById('header').offsetHeight;
     if ( (pageHeight - headerHeight) >= 0) {
      document.getElementById('content').style.height =  (pageHeight - headerHeight-10) +'px';      
      document.getElementById('gauche').style.height =  (pageHeight - headerHeight-10) +'px';
      document.getElementById('droite').style.height =  (pageHeight - headerHeight-10) +'px';
       
     }      
    }
   }
  }
  function setFooter() {
   if (document.getElementById) {
    var windowHeight = getWindowHeight();
    if (windowHeight > 0) {
     var pageHeight = document.getElementById('page').offsetHeight;
     var footerElement = document.getElementById('footer');
     var footerHeight  = footerElement.offsetHeight;
     if (windowHeight - (pageHeight + footerHeight) >= 0) {
      footerElement.style.position = 'relative';
      footerElement.style.top = (windowHeight - (pageHeight + footerHeight)) + ' px';
     }
     else {
      footerElement.style.position = 'static';
     }
    }
   }
  }
  window.onload = function() {
   setPage();
   setContent();
   setFooter();      
  }
  window.onresize = function() {
   setPage();
   setContent();
   setFooter();      
  }
  //-->
  </script></head>
 
 <body>
  <div id="page">
   <div id="header">
    RESERVATION ACCOMPLIE
   </div>
   <div id="content">
    <div id="gauche">
      <img src="images/logo.jpg" id="image_bas"  />
     </div>
    <div id="droite">
     <div class="titre">Merci de votre réservation</em></div>
     
     <p>Les billets seront à retirer au guichet le soir du concert à partir de 19h30. <br />
Votre réservation sera effective lorsque nous aurons reçu votre règlement. Vous recevrez à ce moment une confirmation par mail.</p>
    </div>
   </div>
  </div>
  <div id="footer">
   <a href="index.html" >Accueil</a>
    <a href="presentation_cs.html" >Pr&eacute;sentation</a>
    <a href="saison_2007_cs.html" >Saison 2007</a>
    <a href="artistes_cs.html" >Artistes</a>
    <a href="audio_cs.html" >Audio</a>
    <a href="photos_cs.html" >Photos</a>
    <a href="votre_concert_cs.html" >Votre concert</a>
    <a href="nous_soutenir_cs.html" >Nous soutenir</a>
    <a href="contact_cs.html" >Contact</a>
  </div>
 </body></html>
 
 
un grand merci,  

n°392127
bodbod
Planquez vous, bodbod arrive..
Profil : Star du forum
Posté le 01-02-2007 à 18:12:34  profilanswer
 

Quel est l'utilité du code HTML sous le code PHP dans "Page appelée par le formulaire :" ?
 
En local chez moi, la fonction header me renvoi bien sur ta page.

Code :
  1. Header("Location: http://www.conspirito.asso.fr/rese [...] html&#034; );


---------------
Attention, un petit bodbod est en cours d'assemblage !!!
Il viendra prendre ma place à sa sortie :D
n°392131
jeff_fongu​i
Profil : Inconnu(e)
Posté le 01-02-2007 à 19:25:35  profilanswer
 

bodbod a écrit :

Quel est l'utilité du code HTML sous le code PHP dans "Page appelée par le formulaire :" ?
 
En local chez moi, la fonction header me renvoi bien sur ta page.

Code :
  1. Header("Location: http://www.conspirito.asso.fr/rese [...] html&#034; );



 
en fait j'avais juste fait un copié collé du code php sur une page en oubliant d'enlever le code html, mais même comme ça, chez moi ça ne marche pas. comment se fait-il que ça marche chez toi? cela peut-il être du à un antivirus ou quelque chose comme ça?
 
merci

n°392132
bodbod
Planquez vous, bodbod arrive..
Profil : Star du forum
Posté le 01-02-2007 à 20:16:55  profilanswer
 

Ta page formmail.php est a cote de la page du formulaire ?
Tu recoit quand meme les mails de reservation ?

Message cité 1 fois
Message édité par bodbod le 01-02-2007 à 20:18:19

---------------
Attention, un petit bodbod est en cours d'assemblage !!!
Il viendra prendre ma place à sa sortie :D
n°392138
jeff_fongu​i
Profil : Inconnu(e)
Posté le 01-02-2007 à 23:49:02  profilanswer
 

bodbod a écrit :

Ta page formmail.php est a cote de la page du formulaire ?
Tu recoit quand meme les mails de reservation ?


 
oui, je reçois bien les mails de réservations.
mais quand j'appuie sur "envoyer", j'ai un message d'erreur 404, page non trouvée (l'adresse de la page est à ce moment http://www.conspirito.asso.fr/formmail.php. ça veut bien dire que c'est la page .php qu'il ne trouve pas?)
et la page formmail.php est à côté de la page du formulaire dans la liste de FileZilla (je ne suis pas sur d'avoir compris la question, désolé)
un grand merci

n°392142
bodbod
Planquez vous, bodbod arrive..
Profil : Star du forum
Posté le 02-02-2007 à 11:15:28  profilanswer
 

Essai de remplacer ta page formmail.php par :

Code :
  1. <?php
  2. $TO = "conspirito@free.fr";
  3. $h  = "From: " . $TO;
  4. $message = "";
  5. while (list($key, $val) = each($HTTP_POST_VARS)) {
  6.   $message .= "$key : $val\n";
  7. }
  8. mail($TO, $subject, $message, $h);
  9. Header("Location: reservation_cs.html" );
  10. exit() ;
  11. ?>


---------------
Attention, un petit bodbod est en cours d'assemblage !!!
Il viendra prendre ma place à sa sortie :D
n°392146
jeff_fongu​i
Profil : Inconnu(e)
Posté le 02-02-2007 à 14:39:05  profilanswer
 

ça ne change malheureusement rien. il ne trouve toujours pas la page.  
peut-être serait il plus simple que je recommence tout ?


Aller à :
Ajouter une réponse
 


Hit-Parade des sites francophones