Formulaire php et MySql

Fermé
Ikarytos Messages postés 35 Date d'inscription mercredi 18 janvier 2012 Statut Membre Dernière intervention 1 décembre 2019 - 8 févr. 2012 à 22:30
 billel.b - 9 févr. 2012 à 20:22
Bonjour,

Je suis bloqué depuis plusieurs jours sur le code sans arriver à savoir d'où vient le problème. Quand je valide le formulaire, je suis redirigé sur la page de confirmation, comme si tout c'était bien dérouler, sauf que justement rien ne s'est passé, aucune inscription dans la base de données, aucun mail envoyé et même pas un message d'erreur. Je ne sais plus quoi faire. SVP aidez-moi...

J'utilise movamp (mais aussi essayé sur easyphp)


include('secret/connect.php');
function getjsredirect($url,$time)
{
        $chaine="<script language=\"javascript\">\n";
        $chaine.="setTimeout(\"window.location='$url'\",$time);\n";
        $chaine.="</script>\n\n";
        return($chaine);
        }
        
        
if (!empty($_POST['submit'])){
  $fichier = date('U');
  $ajout = "INSERT INTO cartes VALUES ( '$fichier' ,'$votrenom' ,'$sonnom' ,'$votremail' ,'$sonmail' ,'$sujet' ,'$message', '$radiobutton' , '$radiobutton2')";
  mysql_query($ajout);
  
  $sql = "SELECT * FROM infos";
  $sql2 = "SELECT * FROM cartes WHERE numero=$fichier";
  $result = mysql_query($sql);
  $result2 = mysql_query($sql2); 
  $remplace = mysql_fetch_array($result);
  $remplace2 = mysql_fetch_array($result2);
  $liencarte = "$remplace[lien] en indiquant le numero $fichier";
  $trans = array("[url]" => $remplace['adresse'] , "[site]" => $remplace['nomsite'], "[valide]" => $remplace['valide'], "[chemin]" => $liencarte, "[nomexp]" => $remplace2['nomexp'], "[nomdest]" => $remplace2['nomdest']);
  $test = strtr($remplace['mail'], $trans);
  $messagemail = htmlspecialchars($test);
  
  $sujetdumail = "Une carte vous a été envoyée par $remplace2[votrenom]";
  $headers = "From: Serveur E-Card PHP\n";
  $headers .= "X-Mailer: PHP\n";                                                                        
  $headers .= "X-Priority: 1\n";                                                                        
  mail($sonmail, $sujetdumail, $messagemail, $headers);
  mail($votremail, $sujetdumail, $messagemail, $headers);
  mysql_query("UPDATE infos SET nombre=nombre+1");
  $musiqueajout = "UPDATE musique SET nombre=nombre+1 WHERE nom=$remplace2[musique]";
  mysql_query("UPDATE images SET nb_util=nb_util+1 WHERE nom='$radiobutton'");
  mysql_query("UPDATE musique SET nb_util=nb_util+1 WHERE nom='$radiobutton2'");
  
  echo(getjsredirect("merci.php",000));
  
}
?>
<br>
<table width="100%" border="2" align="center" cellpadding="0" cellspacing="0" bordercolor="#FF0000">
  <tr>
    <td><strong><em><font size="+1"><u>Création de la carte</u></font></em></strong></td>
  </tr>
  <tr>
    <td><form name="form1" method="POST" action="">
        <p>&nbsp;</p>
        <p><strong><em>Etape n°1 : Le choix de la photo</em></strong></p>
        <p align="center"> 
          <?PHP
$calcul = "1";
$requete1 = "SELECT * FROM images";
$resultat = mysql_query($requete1);
$tableau = "<table border='1'><tr>";
while($reponse  = mysql_fetch_array($resultat)){
$tableau .= "<td align='center'><a href=\"images/".$reponse['nom']."\" target='_blank'><img src=\"miniatures/".$reponse['nom']."\" width='100' height='75' border='0' alt=\"".$reponse['nom']."\"></a>";
$tableau .= "<br><input type='radio' name='radiobutton' value=\"".$reponse['nom']."\"></td>";
$division = $calcul/9;
if ( is_int($division) ) {
$tableau .= "</tr><tr>";
}
$calcul = $calcul+1;
}
$tableau .= "</tr></table>";
echo($tableau);
?>
        </p>
        <p><strong><em>Etape n°2 : Le choix de la musique de fond</em></strong></p>
        <p align="center"> 
          <?PHP
$calcul = "2";
$requete2 = "SELECT * FROM musique";
$resultat2 = mysql_query($requete2);
$tableau2 = "<table border='1'><tr><td><input type='radio' name='radiobutton2' value=\"aucune\" checked></td><td>aucune musique</a></td>";
while($reponse2  = mysql_fetch_array($resultat2)){
$tableau2 .= "<td><input type='radio' name='radiobutton2' value=\"".$reponse2['nom']."\"></td><td><a href=\"musiques/".$reponse2['nom']."\">".$reponse2['nom']."</a></td>";
$division = $calcul/3;
if ( is_int($division) ) {
$tableau2 .= "</tr><tr>";
}
$calcul = $calcul+1;
}
$tableau2 .= "</tr></table>";
echo($tableau2);
?>
        </p>
        <p align="left"><strong><em>Etape n°3 : Taper le message</em></strong></p>
        <p align="center">
          <input name="sujet" type="text" id="sujet" value="Tapez ici le sujet de la carte" size="100" maxlength="100">
          <br>
          <br>
          <textarea name="message" cols="100" rows="8" id="message">Tapez ici le message de la carte !</textarea>
        </p>
        <p align="left"><strong><em>Etape n°4 : Entrer les informations</em></strong></p>
        <table width="75%" border="0" align="center" cellpadding="0" cellspacing="0">
          <tr> 
            <th><div align="center">Expéditeur :</div></th>
            <td><div align="center"> 
                <input name="votrenom" type="text" id="votrenom" value="Votre nom" size="40" maxlength="100">
              </div></td>
            <td><div align="center"> 
                <input name="votremail" type="text" id="votremail" value="Votre email" size="40" maxlength="100">
              </div></td>
          </tr>
          <tr> 
            <th><div align="center"></div></th>
            <td><div align="center"></div></td>
            <td><div align="center"></div></td>
          </tr>
          <tr> 
            <th><div align="center">Destinataire :</div></th>
            <td><div align="center"> 
                <input name="sonnom" type="text" id="sonnom" value="Son nom" size="40" maxlength="100">
              </div></td>
            <td><div align="center"> 
                <input name="sonmail" type="text" id="sonmail" value="Son email" size="40" maxlength="100">
              </div></td>
          </tr>
        </table>
        <p align="left"><strong><em>Etape n°5 : Envoyer la carte !</em></strong></p>
        <p align="center">
          <input name="submit" type="submit" id="submit" value="Envoyer l'eCard">
        </p>
      </form></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
  </tr>
</table>

 



A voir également:

3 réponses

AASPRONI Messages postés 67 Date d'inscription mardi 7 février 2012 Statut Membre Dernière intervention 21 octobre 2013 8
9 févr. 2012 à 08:41
Remplissez l'attribut "action" de ta balise "form" comme ceci:

<form action='<?php $_SERVER["PHP_SELF"] ?>' method="post">


l'attribut "action" prend comme valeur une page et '<?php $_SERVER["PHP_SELF"] ?>' veut dire que c'est la meme page et ' ' te redirige vers ta page de confirmation.


N'oublie pas de me dire si ça a marché ou pas.
1
Ikarytos Messages postés 35 Date d'inscription mercredi 18 janvier 2012 Statut Membre Dernière intervention 1 décembre 2019 12
9 févr. 2012 à 20:00
Grand merci à toi AASPRONI, tout fonctionne, sauf l'envoie du mail mais je suppose que c'est pas possible en localhost ?

Encore merci à toi :)
0
bonsoir,
bain si on peut envoyer des messages en local telecharge le sendmail et ça configuration est facil
en tout cas pour moi ça marche en local :)
0