Commentaire

Fermé
Allahryck Messages postés 20 Date d'inscription jeudi 31 décembre 2015 Statut Membre Dernière intervention 21 janvier 2016 - Modifié par baladur13 le 31/12/2015 à 10:11
Allahryck Messages postés 20 Date d'inscription jeudi 31 décembre 2015 Statut Membre Dernière intervention 21 janvier 2016 - 5 janv. 2016 à 14:59
slt! j'ai de problem sur mon Forum en php, le but de mon script ce d'avoir afficher sur mon forum le commentaire des membre qui visite de mon site; à chaque fois je appuie sur le bouton Envoyer il affiche le proble suivant:

( ! ) SCREAM: Error suppression ignored for

( ! ) Fatal error: Call to a member function fetch() on a non-object in C:\wamp\www\MY SITE WEB 11DECEMBRE 2\forum.php on line 6.

voici mon script:

== commentaire.php==

<?php
$bdd= new PDO('mysql:host=localhost;dbname=commentaire', 'root', '');
if (isset ($_POST['submit']))
{
 $datedenvoyemessage = date("d-m-Y H:i");
    $date = date("d-m-Y H:i");
 $pseudo= htmlspecialchars ($_POST['pseudo']); 
 $email= htmlspecialchars ($_POST['email']);
 $sujet= htmlspecialchars ($_POST['sujet']);
 $message = htmlspecialchars($_POST['message']);
 
 if   (!empty($_POST['pseudo'])
    AND !empty($_POST['email'])
      AND !empty($_POST['sujet'])) 
   {
  $pseudo= htmlspecialchars ($_POST['pseudo']);
  $pseudolength=strlen ($pseudo);
    if ($pseudolength>=5)
     {
        $email= htmlspecialchars ($_POST['email']);
        if (filter_var($email, FILTER_VALIDATE_EMAIL))
         {
        $requser=$bdd->prepare("SELECT * FROM membres WHERE pseudo=? AND email=?");
           $requser->execute(array($pseudo, $email));
           $userexist= $requser->rowCount();
            if ($userexist==1)
          {
    
         $datedenvoyemessage = date("d-m-Y H:i");
                  $date = date("d-m-Y H:i");
                  $pseudo = htmlspecialchars($_POST['pseudo']);
                  $sujet = htmlspecialchars($_POST['sujet']);
                  $email = htmlspecialchars($_POST['email']);
                  $message = htmlspecialchars($_POST['message']);
                  $sql="INSERT INTO commentaire SET 
                          datedenvoyemessage='".$datedenvoyemessage."',
         date='".$date."',
         pseudo='".$pseudo."',
         email='".$email."',
         sujet='".$sujet."',
         message='".$message."' 
         ";
       $insertion=$bdd->exec($sql);
                  include('forum.php');
          }
         else
          {
           $erreur="l'Adresse Email ou bien le Pseudo que vous avez saisir n'existe pas, s'il vous plait veilliez verifier sur vos profil et resaisir les aprés!!!";
          }  
      
         }
         else
         {
       $erreur="Votre adresse email est invalide!";
         }
     }
     else
     {
      $erreur="Votre pseudo ne doit pas inférieure à 5 caractère!";
     }
 }
 else
 {
   $erreur="Tous les champs doivent être complétés!";
 }
}
<form method="post" action="">
      
     <table STYLE="background-image: url(images/rgegeg.jpg)" border="0" cellspacing="20%">
              <h1><font size="5%">ENVOYER DES COMMENTAIRE</font></h1>
           </table>
      <br/>
     <table width="100%" border="0"  cellspacing="5%">
             <tr>
           <td  width="50%"class="titre_form1" aligne="center" colspan="20"><center> <?php if (isset($erreur)){echo '<font color="#000000">'.$erreur."</font>";}?></center></td>
             </tr>
           </table>
                 <table>
                    <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Pseudo</center></b></td>
                       <td style="width:250px"><input type="text" name="pseudo" placeholder="Saisir içi votre Pseudo..." /></td>
                    </tr>
                    <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>E-Mail</center></b></td>
                       <td style="width:250px"><input type="text" name="email" placeholder="Votre Adresse E-mail" /></td>
                    </tr>
        <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Sujet</center></b></td>
                       <td style="width:250px"><input type="text" name="sujet" placeholder="Le Sujet de votre commentaire " /></td>
                    </tr>
      </table>
       <br/>
      <table width="100%" border="0"  cellspacing="0%">
                    <tr> 
                     <td>
                      <textarea name="message" wrap="VIRTUAL" cols="70" rows="10" placeholder="Taper içi votre commentaire "></textarea>
                     </td>
                    </tr>
                    <tr> 
                     <td colspan="2" style="text-align:center"><input type="submit" name="submit" value="ENVOYER" /></td>
                    </tr>
                  </table> 
    
            </form> 
jusque içi il n'y a pas de problem
 mais c'est içi je crois peut être


==forum.php==

<?php
$bdd= new PDO('mysql:host=localhost;dbname=harenaBu', 'root', '');
$req= "SELECT * FROM membres WHERE reponse_id ='' Order by date_verif Desc Limit 0, 50 ";
$query=$bdd->query($req);

while($forum=$query->fetch(PDO::FETCH_OBJ))
{

print '<a href="lecture.php?id='.$forum->id .'">'.$forum->sujet.'</a> -Auteur: <a href="mailto:'.$forum->email.'">'.$forum->pseudo.'</a> posté le: '.$forum->date.'<br />';
print '<hr />';

}



include('commentaire.php'); 

?>

EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.

4 réponses

Mimiste Messages postés 1149 Date d'inscription samedi 17 mai 2008 Statut Membre Dernière intervention 6 mars 2016 206
31 déc. 2015 à 09:06
Bonjour

Très certainement un problème dans la requête

Tu pourrais ajouter après le "query"

print_r($bdd->errorInfo());

Pour afficher les infos de la dernière erreur si il y a

--
0
Allahryck Messages postés 20 Date d'inscription jeudi 31 décembre 2015 Statut Membre Dernière intervention 21 janvier 2016
4 janv. 2016 à 10:01
merci beaucoup! je l'avais fait comme vous le dit est il affiche:Array ( [0] => 42S22 [1] => 1054 [2] => Unknown column 'date_verif' in 'order clause' ). Maintenant je commprend bien, aprés ça j'actualise est il affiche le resultat que j'aimerai avoir. Mer6
0
Utilisateur anonyme
31 déc. 2015 à 09:49
Bonjour

Est-ce normal que ta base de données s'appelle "commentaire" dans commentaire.php et "harenaBu" dans forum.php ?
0
Allahryck Messages postés 20 Date d'inscription jeudi 31 décembre 2015 Statut Membre Dernière intervention 21 janvier 2016
4 janv. 2016 à 09:54
Bnjr, Mer6!! je crois c'est une gros erreur! mais je l'avais changer mais ce la même chose que je reçois
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
4 janv. 2016 à 10:18
Bonjour,

Ajoutes du debug en utilisant des blocs try/catch

Passes aux requêtes préparées

0
Allahryck Messages postés 20 Date d'inscription jeudi 31 décembre 2015 Statut Membre Dernière intervention 21 janvier 2016
4 janv. 2016 à 14:42
merci
0
Allahryck Messages postés 20 Date d'inscription jeudi 31 décembre 2015 Statut Membre Dernière intervention 21 janvier 2016
Modifié par jordane45 le 4/01/2016 à 14:46
mer6, mais il sont déjà fonctionné mais en tous une autre problème je obtient: quand je envoie du commentaire, et oui le commentaire s'affiche bien mais le problème si je actualise mon site le commentaire que je l'avais envoyé affiche encore même si le champ est vide, que je doit faire pour stoper ça?svp
voile mon script, je un peut modifier pas comme avant mais je suivi vos conseil:
//==commentaire.php===

   <article>
   <table>
   <tr>
   <td>
   <?php
   
           $bdd= new PDO('mysql:host=localhost;dbname=harenaBu', 'root', '');
           $req= "SELECT * FROM commentaire WHERE reponse_id ='' Order by datedenvoyemessage Desc Limit 0, 50 ";
           $query=$bdd->query($req);

          while($forum=$query->fetch(PDO::FETCH_OBJ))
           {
         
         print '<a href="lecture.php?id='.$forum->id .'">'.$forum->sujet.'</a> -Auteur: <a href="mailto:'.$forum->email.'">'.$forum->pseudo.'</a> posté le: '.$forum->date.'<br />';
         print '<hr />';

          }
         ?>
   </td>
   </tr>
   </table>
   <form method="post" action="">
      
     <table STYLE="background-image: url(images/rgegeg.jpg)" border="0" cellspacing="20%">
              <h1><font size="5%">ENVOYER DES COMMENTAIRE</font></h1>
           </table>
      <br/>
     <table width="100%" border="0"  cellspacing="5%">
             <tr>
           <td  width="50%"class="titre_form1" aligne="center" colspan="20"><center> <?php if (isset($erreur)){echo '<font color="#000000">'.$erreur."</font>";}?></center></td>
             </tr>
           </table>
                 <table>
                    <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Pseudo</center></b></td>
                       <td style="width:250px"><input type="text" name="pseudo" placeholder="Taper votre Pseudo..." /></td>
                    </tr>
                    <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>E-Mail</center></b></td>
                       <td style="width:250px"><input type="text" name="email" placeholder="Votre Adresse E-mail" /></td>
                    </tr>
        <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Sujet</center></b></td>
                       <td style="width:250px"><input type="text" name="sujet" placeholder="Le Sujet de votre commentaire " /></td>
                    </tr>
      </table>
       <br/>
      <table width="100%" border="0"  cellspacing="0%">
                    <tr> 
                     <td>
                      <textarea name="message" wrap="VIRTUAL" cols="70" rows="10" placeholder="Taper votre commentaire "></textarea>
                     </td>
                    </tr>
                    <tr> 
                     <td colspan="2" style="text-align:center"><input type="submit" name="submit" value="ENVOYER" /></td>
                    </tr>
                  </table> 
    
            </form> 


//==lecture.php===
<?php
$bdd= new PDO('mysql:host=localhost;dbname=harenaBu', 'root', '');
//----------------------------------------------------------------
if (isset ($_POST['submit']))
{
 $pseudo= htmlspecialchars ($_POST['pseudo']); 
 $email= htmlspecialchars ($_POST['email']);
 $sujet= htmlspecialchars ($_POST['sujet']);
 if   (!empty($_POST['pseudo'])
    AND !empty($_POST['email'])
      AND !empty($_POST['sujet'])) 
    {
  $pseudo= htmlspecialchars ($_POST['pseudo']);
  $pseudolength=strlen ($pseudo);
  if ($pseudolength>=5)
  {
    $email= htmlspecialchars ($_POST['email']);
    if (filter_var($email, FILTER_VALIDATE_EMAIL))
    {
    $requser=$bdd->prepare("SELECT * FROM membres WHERE pseudo=? AND email=?");
       $requser->execute(array($pseudo, $email));
       $userexist= $requser->rowCount();
         if ($userexist==1)
      {
    
      $datedenvoyemessage = date("d-m-Y H:i");
               $date = date("d-m-Y H:i");
               $pseudo = AddSlashes (htmlspecialchars($_POST['pseudo']));
               $sujet = AddSlashes (htmlspecialchars($_POST['sujet']));
               $email = AddSlashes (htmlspecialchars($_POST['email']));
               $message = AddSlashes (htmlspecialchars($_POST['message']));
               $sql="INSERT Into commentaire SET datedenvoyemessage='" . $datedenvoyemessage ."',
         date='".$date."',
         pseudo='".$pseudo."',
         email='".$email."',
         sujet='".$sujet."',
         message='".$message."' 
         ";
    $insertion=$bdd->exec($sql);
                
      }
      else
      {
       $erreur="l'Adresse Email ou bien le Pseudo que vous avez saisir n'existe pas, s'il vous plait veilliez verifier sur vos profil et resaisir les aprés!!!";
      }  
      
    }
    else
    {
  $erreur="Votre adresse email est invalide!";
    }
  }
  else
  {
   $erreur="Votre pseudo ne doit pas inférieure à 5 caractère!";
  }
 }
 else
 {
   $erreur="Tous les champs doivent être complétés!";
 }
}


?> 
<article>
   <table>
   <tr>
   <td>
   <?php
   $req = "SELECT id,datedenvoyemessage,pseudo,email,sujet,message FROM commentaire WHERE id ='".$_GET['id']."' ";
            $query = $bdd->query($req);
            $original=$query->fetch(PDO::FETCH_OBJ);
            print $original->sujet.'<br / >';
            print'Auteur: <a href="mailto:'.$original->email.'">'.$original->pseudo.'</a> date: '.$original->datedenvoyemessage.'<br />';
            print 'message: <br />';
            print $original->message;

            print '<hr />'; 
            $rep = "SELECT id,datedenvoyemessage,pseudo,email,sujet,message FROM commentaire WHERE reponse_id ='".$_GET['id']."' ";
            $queryrep = $bdd->query($rep);

            while ( $reponse =$queryrep->fetch(PDO::FETCH_OBJ) )
           {
           print $reponse->sujet.'<br />';
           print'Auteur : <a href="mailto:'.$reponse->email.'">'.$reponse->pseudo.'</a> posté le: '.$reponse->date.'<br />';
           print 'message: <br />';
           print $reponse->message;
           print '<hr />';
           }
           ?>
   </td>

<form method="post" action="">
     <input type="hidden" name="reponse_id" value="<?php print $_GET['id']; ?>" />
     <table STYLE="background-image: url(images/rgegeg.jpg)" border="0" cellspacing="20%">
              <h1><font size="5%">ENVOYER DES COMMENTAIRE</font></h1>
           </table>
      <br/>
     <table width="100%" border="0"  cellspacing="5%">
             <tr>
           <td  width="50%"class="titre_form1" aligne="center" colspan="20"><center> <?php if (isset($erreur)){echo '<font color="#000000">'.$erreur."</font>";}?></center></td>
             </tr>
           </table>
                 <table>
                    <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Pseudo</center></b></td>
                       <td style="width:250px"><input type="text" name="pseudo" placeholder="Taper votre Pseudo..." /></td>
                    </tr>
                    <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>E-Mail</center></b></td>
                       <td style="width:250px"><input type="text" name="email" placeholder="Votre Adresse E-mail" /></td>
                    </tr>
        <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Sujet</center></b></td>
                       <td style="width:250px"><input type="text" name="sujet" value="<?php print $original->sujet ; ?>"/></td>
                    </tr>
      </table>
       <br/>
      <table width="100%" border="0"  cellspacing="0%">
                    <tr> 
                     <td>
                      <textarea name="message" wrap="VIRTUAL" cols="70" rows="10" placeholder="Taper votre commentaire "></textarea>
                     </td>
                    </tr>
                    <tr> 
                     <td colspan="2" style="text-align:center"><input type="submit" name="submit" value="ENVOYER" /></td>
                    </tr>
                  </table> 
    
            </form> 


//==reponse.php==

<?php
$bdd= new PDO('mysql:host=localhost;dbname=harenaBu', 'root', '');
if (isset ($_POST['submit']))
{
 $pseudo= htmlspecialchars ($_POST['pseudo']); 
 $email= htmlspecialchars ($_POST['email']);
 $sujet= htmlspecialchars ($_POST['sujet']);
 if   (!empty($_POST['pseudo'])
    AND !empty($_POST['email'])
      AND !empty($_POST['sujet'])) 
    {
  $pseudo= htmlspecialchars ($_POST['pseudo']);
  $pseudolength=strlen ($pseudo);
  if ($pseudolength>=5)
  {
    $email= htmlspecialchars ($_POST['email']);
    if (filter_var($email, FILTER_VALIDATE_EMAIL))
    {
    $requser=$bdd->prepare("SELECT * FROM membres WHERE pseudo=? AND email=?");
       $requser->execute(array($pseudo, $email));
       $userexist= $requser->rowCount();
         if ($userexist==1)
      {
    
      $datedenvoyemessage = date("d-m-Y H:i");
               $date = date("d-m-Y H:i");
               $pseudo = htmlspecialchars($_POST['pseudo']);
               $sujet = htmlspecialchars($_POST['sujet']);
               $email = htmlspecialchars($_POST['email']);
               $message = htmlspecialchars($_POST['message']);
               $sql="INSERT Into commentaire SET datedenvoyemessage='" . $datedenvoyemessage ."',
         date='".$date."',
         pseudo='".$pseudo."',
         email='".$email."',
         sujet='".$sujet."',
         message='".$message."' 
         ";
    $insertion=$bdd->exec($sql);
                
      }
      else
      {
       $erreur="l'Adresse Email ou bien le Pseudo que vous avez saisir n'existe pas, s'il vous plait veilliez verifier sur vos profil et resaisir les aprés!!!";
      }  
      
    }
    else
    {
  $erreur="Votre adresse email est invalide!";
    }
  }
  else
  {
   $erreur="Votre pseudo ne doit pas inférieure à 5 caractère!";
  }
 }
 else
 {
   $erreur="Tous les champs doivent être complétés!";
 }
}
?>
<article>
   <table>
   <tr>
   <td>
   <?php
   
           $bdd= new PDO('mysql:host=localhost;dbname=harenaBu', 'root', '');
           $req= "SELECT * FROM commentaire WHERE reponse_id ='' Order by datedenvoyemessage Desc Limit 0, 50 ";
           $query=$bdd->query($req);

          while($forum=$query->fetch(PDO::FETCH_OBJ))
           {
         
         print '<a href="lecture.php?id='.$forum->id .'">'.$forum->sujet.'</a> -Auteur: <a href="mailto:'.$forum->email.'">'.$forum->pseudo.'</a> posté le: '.$forum->date.'<br />';
         print '<hr />';

          }
         ?>
   </td>
   </tr>
   </table>
   <form method="post" action="">
      <input type="hidden" name="reponse_id" value="<?php print $_GET['id']; ?>"/>
     <table STYLE="background-image: url(images/rgegeg.jpg)" border="0" cellspacing="20%">
              <h1><font size="5%">ENVOYER DES COMMENTAIRE</font></h1>
           </table>
      <br/>
     <table width="100%" border="0"  cellspacing="5%">
             <tr>
           <td  width="50%"class="titre_form1" aligne="center" colspan="20"><center> <?php if (isset($erreur)){echo '<font color="#000000">'.$erreur."</font>";}?></center></td>
             </tr>
           </table>
                 <table>
                    <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Pseudo</center></b></td>
                       <td style="width:250px"><input type="text" name="pseudo" placeholder="Taper votre Pseudo..." /></td>
                    </tr>
                    <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>E-Mail</center></b></td>
                       <td style="width:250px"><input type="text" name="email" placeholder="Votre Adresse E-mail" /></td>
                    </tr>
        <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Sujet</center></b></td>
                       <td style="width:250px"><input type="text" name="sujet" placeholder="Le Sujet de votre commentaire " /></td>
                    </tr>
      </table>
       <br/>
      <table width="100%" border="0"  cellspacing="0%">
                    <tr> 
                     <td>
                      <textarea name="message" wrap="VIRTUAL" cols="70" rows="10" placeholder="Taper votre commentaire "></textarea>
                     </td>
                    </tr>
                    <tr> 
                     <td colspan="2" style="text-align:center"><input type="submit" name="submit" value="ENVOYER" /></td>
                    </tr>
                  </table> 
    
            </form> 



mer6, mais il sont déjà fonctionné mais en tous une autre problème je obtient: quand je envoie du commentaire, et oui le commentaire s'affiche bien mais le problème si je actualise mon site le commentaire que je l'avais envoyé affiche encore même si le champ est vide, que je doit faire pour stoper ça?svp
voile mon script, je un peut modifier pas comme avant mais je suivi vos conseil:

//==commentaire.php===

   <article>
   <table>
   <tr>
   <td>
   <?php
   
           $bdd= new PDO('mysql:host=localhost;dbname=harenaBu', 'root', '');
           $req= "SELECT * FROM commentaire WHERE reponse_id ='' Order by datedenvoyemessage Desc Limit 0, 50 ";
           $query=$bdd->query($req);

          while($forum=$query->fetch(PDO::FETCH_OBJ))
           {
         
         print '<a href="lecture.php?id='.$forum->id .'">'.$forum->sujet.'</a> -Auteur: <a href="mailto:'.$forum->email.'">'.$forum->pseudo.'</a> posté le: '.$forum->date.'<br />';
         print '<hr />';

          }
         ?>
   </td>
   </tr>
   </table>
   <form method="post" action="">
      
     <table STYLE="background-image: url(images/rgegeg.jpg)" border="0" cellspacing="20%">
              <h1><font size="5%">ENVOYER DES COMMENTAIRE</font></h1>
           </table>
      <br/>
     <table width="100%" border="0"  cellspacing="5%">
             <tr>
           <td  width="50%"class="titre_form1" aligne="center" colspan="20"><center> <?php if (isset($erreur)){echo '<font color="#000000">'.$erreur."</font>";}?></center></td>
             </tr>
           </table>
                 <table>
                    <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Pseudo</center></b></td>
                       <td style="width:250px"><input type="text" name="pseudo" placeholder="Taper votre Pseudo..." /></td>
                    </tr>
                    <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>E-Mail</center></b></td>
                       <td style="width:250px"><input type="text" name="email" placeholder="Votre Adresse E-mail" /></td>
                    </tr>
        <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Sujet</center></b></td>
                       <td style="width:250px"><input type="text" name="sujet" placeholder="Le Sujet de votre commentaire " /></td>
                    </tr>
      </table>
       <br/>
      <table width="100%" border="0"  cellspacing="0%">
                    <tr> 
                     <td>
                      <textarea name="message" wrap="VIRTUAL" cols="70" rows="10" placeholder="Taper votre commentaire "></textarea>
                     </td>
                    </tr>
                    <tr> 
                     <td colspan="2" style="text-align:center"><input type="submit" name="submit" value="ENVOYER" /></td>
                    </tr>
                  </table> 
    
            </form> 


//==lecture.php===
<?php
$bdd= new PDO('mysql:host=localhost;dbname=harenaBu', 'root', '');
//----------------------------------------------------------------
if (isset ($_POST['submit']))
{
 $pseudo= htmlspecialchars ($_POST['pseudo']); 
 $email= htmlspecialchars ($_POST['email']);
 $sujet= htmlspecialchars ($_POST['sujet']);
 if   (!empty($_POST['pseudo'])
    AND !empty($_POST['email'])
      AND !empty($_POST['sujet'])) 
    {
  $pseudo= htmlspecialchars ($_POST['pseudo']);
  $pseudolength=strlen ($pseudo);
  if ($pseudolength>=5)
  {
    $email= htmlspecialchars ($_POST['email']);
    if (filter_var($email, FILTER_VALIDATE_EMAIL))
    {
    $requser=$bdd->prepare("SELECT * FROM membres WHERE pseudo=? AND email=?");
       $requser->execute(array($pseudo, $email));
       $userexist= $requser->rowCount();
         if ($userexist==1)
      {
    
      $datedenvoyemessage = date("d-m-Y H:i");
               $date = date("d-m-Y H:i");
               $pseudo = AddSlashes (htmlspecialchars($_POST['pseudo']));
               $sujet = AddSlashes (htmlspecialchars($_POST['sujet']));
               $email = AddSlashes (htmlspecialchars($_POST['email']));
               $message = AddSlashes (htmlspecialchars($_POST['message']));
               $sql="INSERT Into commentaire SET datedenvoyemessage='" . $datedenvoyemessage ."',
         date='".$date."',
         pseudo='".$pseudo."',
         email='".$email."',
         sujet='".$sujet."',
         message='".$message."' 
         ";
    $insertion=$bdd->exec($sql);
                
      }
      else
      {
       $erreur="l'Adresse Email ou bien le Pseudo que vous avez saisir n'existe pas, s'il vous plait veilliez verifier sur vos profil et resaisir les aprés!!!";
      }  
      
    }
    else
    {
  $erreur="Votre adresse email est invalide!";
    }
  }
  else
  {
   $erreur="Votre pseudo ne doit pas inférieure à 5 caractère!";
  }
 }
 else
 {
   $erreur="Tous les champs doivent être complétés!";
 }
}


?> 
<article>
   <table>
   <tr>
   <td>
   <?php
   $req = "SELECT id,datedenvoyemessage,pseudo,email,sujet,message FROM commentaire WHERE id ='".$_GET['id']."' ";
            $query = $bdd->query($req);
            $original=$query->fetch(PDO::FETCH_OBJ);
            print $original->sujet.'<br / >';
            print'Auteur: <a href="mailto:'.$original->email.'">'.$original->pseudo.'</a> date: '.$original->datedenvoyemessage.'<br />';
            print 'message: <br />';
            print $original->message;

            print '<hr />'; 
            $rep = "SELECT id,datedenvoyemessage,pseudo,email,sujet,message FROM commentaire WHERE reponse_id ='".$_GET['id']."' ";
            $queryrep = $bdd->query($rep);

            while ( $reponse =$queryrep->fetch(PDO::FETCH_OBJ) )
           {
           print $reponse->sujet.'<br />';
           print'Auteur : <a href="mailto:'.$reponse->email.'">'.$reponse->pseudo.'</a> posté le: '.$reponse->date.'<br />';
           print 'message: <br />';
           print $reponse->message;
           print '<hr />';
           }
           ?>
   </td>

<form method="post" action="">
     <input type="hidden" name="reponse_id" value="<?php print $_GET['id']; ?>" />
     <table STYLE="background-image: url(images/rgegeg.jpg)" border="0" cellspacing="20%">
              <h1><font size="5%">ENVOYER DES COMMENTAIRE</font></h1>
           </table>
      <br/>
     <table width="100%" border="0"  cellspacing="5%">
             <tr>
           <td  width="50%"class="titre_form1" aligne="center" colspan="20"><center> <?php if (isset($erreur)){echo '<font color="#000000">'.$erreur."</font>";}?></center></td>
             </tr>
           </table>
                 <table>
                    <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Pseudo</center></b></td>
                       <td style="width:250px"><input type="text" name="pseudo" placeholder="Taper votre Pseudo..." /></td>
                    </tr>
                    <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>E-Mail</center></b></td>
                       <td style="width:250px"><input type="text" name="email" placeholder="Votre Adresse E-mail" /></td>
                    </tr>
        <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Sujet</center></b></td>
                       <td style="width:250px"><input type="text" name="sujet" value="<?php print $original->sujet ; ?>"/></td>
                    </tr>
      </table>
       <br/>
      <table width="100%" border="0"  cellspacing="0%">
                    <tr> 
                     <td>
                      <textarea name="message" wrap="VIRTUAL" cols="70" rows="10" placeholder="Taper votre commentaire "></textarea>
                     </td>
                    </tr>
                    <tr> 
                     <td colspan="2" style="text-align:center"><input type="submit" name="submit" value="ENVOYER" /></td>
                    </tr>
                  </table> 
    
            </form> 



//==reponse.php==

<?php
$bdd= new PDO('mysql:host=localhost;dbname=harenaBu', 'root', '');
if (isset ($_POST['submit']))
{
 $pseudo= htmlspecialchars ($_POST['pseudo']); 
 $email= htmlspecialchars ($_POST['email']);
 $sujet= htmlspecialchars ($_POST['sujet']);
 if   (!empty($_POST['pseudo'])
    AND !empty($_POST['email'])
      AND !empty($_POST['sujet'])) 
    {
  $pseudo= htmlspecialchars ($_POST['pseudo']);
  $pseudolength=strlen ($pseudo);
  if ($pseudolength>=5)
  {
    $email= htmlspecialchars ($_POST['email']);
    if (filter_var($email, FILTER_VALIDATE_EMAIL))
    {
    $requser=$bdd->prepare("SELECT * FROM membres WHERE pseudo=? AND email=?");
       $requser->execute(array($pseudo, $email));
       $userexist= $requser->rowCount();
         if ($userexist==1)
      {
    
      $datedenvoyemessage = date("d-m-Y H:i");
               $date = date("d-m-Y H:i");
               $pseudo = htmlspecialchars($_POST['pseudo']);
               $sujet = htmlspecialchars($_POST['sujet']);
               $email = htmlspecialchars($_POST['email']);
               $message = htmlspecialchars($_POST['message']);
               $sql="INSERT Into commentaire SET datedenvoyemessage='" . $datedenvoyemessage ."',
         date='".$date."',
         pseudo='".$pseudo."',
         email='".$email."',
         sujet='".$sujet."',
         message='".$message."' 
         ";
    $insertion=$bdd->exec($sql);
                
      }
      else
      {
       $erreur="l'Adresse Email ou bien le Pseudo que vous avez saisir n'existe pas, s'il vous plait veilliez verifier sur vos profil et resaisir les aprés!!!";
      }  
      
    }
    else
    {
  $erreur="Votre adresse email est invalide!";
    }
  }
  else
  {
   $erreur="Votre pseudo ne doit pas inférieure à 5 caractère!";
  }
 }
 else
 {
   $erreur="Tous les champs doivent être complétés!";
 }
}
?>
<article>
   <table>
   <tr>
   <td>
   <?php
   
           $bdd= new PDO('mysql:host=localhost;dbname=harenaBu', 'root', '');
           $req= "SELECT * FROM commentaire WHERE reponse_id ='' Order by datedenvoyemessage Desc Limit 0, 50 ";
           $query=$bdd->query($req);

          while($forum=$query->fetch(PDO::FETCH_OBJ))
           {
         
         print '<a href="lecture.php?id='.$forum->id .'">'.$forum->sujet.'</a> -Auteur: <a href="mailto:'.$forum->email.'">'.$forum->pseudo.'</a> posté le: '.$forum->date.'<br />';
         print '<hr />';

          }
         ?>
   </td>
   </tr>
   </table>
   <form method="post" action="">
      <input type="hidden" name="reponse_id" value="<?php print $_GET['id']; ?>"/>
     <table STYLE="background-image: url(images/rgegeg.jpg)" border="0" cellspacing="20%">
              <h1><font size="5%">ENVOYER DES COMMENTAIRE</font></h1>
           </table>
      <br/>
     <table width="100%" border="0"  cellspacing="5%">
             <tr>
           <td  width="50%"class="titre_form1" aligne="center" colspan="20"><center> <?php if (isset($erreur)){echo '<font color="#000000">'.$erreur."</font>";}?></center></td>
             </tr>
           </table>
                 <table>
                    <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Pseudo</center></b></td>
                       <td style="width:250px"><input type="text" name="pseudo" placeholder="Taper votre Pseudo..." /></td>
                    </tr>
                    <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>E-Mail</center></b></td>
                       <td style="width:250px"><input type="text" name="email" placeholder="Votre Adresse E-mail" /></td>
                    </tr>
        <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Sujet</center></b></td>
                       <td style="width:250px"><input type="text" name="sujet" placeholder="Le Sujet de votre commentaire " /></td>
                    </tr>
      </table>
       <br/>
      <table width="100%" border="0"  cellspacing="0%">
                    <tr> 
                     <td>
                      <textarea name="message" wrap="VIRTUAL" cols="70" rows="10" placeholder="Taper votre commentaire "></textarea>
                     </td>
                    </tr>
                    <tr> 
                     <td colspan="2" style="text-align:center"><input type="submit" name="submit" value="ENVOYER" /></td>
                    </tr>
                  </table> 
    
            </form> 



mer6, mais il sont déjà fonctionné mais en tous une autre problème je obtient: quand je envoie du commentaire, et oui le commentaire s'affiche bien mais le problème si je actualise mon site le commentaire que je l'avais envoyé affiche encore même si le champ est vide, que je doit faire pour stoper ça?svp
voile mon script, je un peut modifier pas comme avant mais je suivi vos conseil:

//==commentaire.php===

   <article>
   <table>
   <tr>
   <td>
   <?php
   
           $bdd= new PDO('mysql:host=localhost;dbname=harenaBu', 'root', '');
           $req= "SELECT * FROM commentaire WHERE reponse_id ='' Order by datedenvoyemessage Desc Limit 0, 50 ";
           $query=$bdd->query($req);

          while($forum=$query->fetch(PDO::FETCH_OBJ))
           {
         
         print '<a href="lecture.php?id='.$forum->id .'">'.$forum->sujet.'</a> -Auteur: <a href="mailto:'.$forum->email.'">'.$forum->pseudo.'</a> posté le: '.$forum->date.'<br />';
         print '<hr />';

          }
         ?>
   </td>
   </tr>
   </table>
   <form method="post" action="">
      
     <table STYLE="background-image: url(images/rgegeg.jpg)" border="0" cellspacing="20%">
              <h1><font size="5%">ENVOYER DES COMMENTAIRE</font></h1>
           </table>
      <br/>
     <table width="100%" border="0"  cellspacing="5%">
             <tr>
           <td  width="50%"class="titre_form1" aligne="center" colspan="20"><center> <?php if (isset($erreur)){echo '<font color="#000000">'.$erreur."</font>";}?></center></td>
             </tr>
           </table>
                 <table>
                    <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Pseudo</center></b></td>
                       <td style="width:250px"><input type="text" name="pseudo" placeholder="Taper votre Pseudo..." /></td>
                    </tr>
                    <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>E-Mail</center></b></td>
                       <td style="width:250px"><input type="text" name="email" placeholder="Votre Adresse E-mail" /></td>
                    </tr>
        <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Sujet</center></b></td>
                       <td style="width:250px"><input type="text" name="sujet" placeholder="Le Sujet de votre commentaire " /></td>
                    </tr>
      </table>
       <br/>
      <table width="100%" border="0"  cellspacing="0%">
                    <tr> 
                     <td>
                      <textarea name="message" wrap="VIRTUAL" cols="70" rows="10" placeholder="Taper votre commentaire "></textarea>
                     </td>
                    </tr>
                    <tr> 
                     <td colspan="2" style="text-align:center"><input type="submit" name="submit" value="ENVOYER" /></td>
                    </tr>
                  </table> 
    
            </form> 



//==lecture.php===
<?php
$bdd= new PDO('mysql:host=localhost;dbname=harenaBu', 'root', '');
//----------------------------------------------------------------
if (isset ($_POST['submit']))
{
 $pseudo= htmlspecialchars ($_POST['pseudo']); 
 $email= htmlspecialchars ($_POST['email']);
 $sujet= htmlspecialchars ($_POST['sujet']);
 if   (!empty($_POST['pseudo'])
    AND !empty($_POST['email'])
      AND !empty($_POST['sujet'])) 
    {
  $pseudo= htmlspecialchars ($_POST['pseudo']);
  $pseudolength=strlen ($pseudo);
  if ($pseudolength>=5)
  {
    $email= htmlspecialchars ($_POST['email']);
    if (filter_var($email, FILTER_VALIDATE_EMAIL))
    {
    $requser=$bdd->prepare("SELECT * FROM membres WHERE pseudo=? AND email=?");
       $requser->execute(array($pseudo, $email));
       $userexist= $requser->rowCount();
         if ($userexist==1)
      {
    
      $datedenvoyemessage = date("d-m-Y H:i");
               $date = date("d-m-Y H:i");
               $pseudo = AddSlashes (htmlspecialchars($_POST['pseudo']));
               $sujet = AddSlashes (htmlspecialchars($_POST['sujet']));
               $email = AddSlashes (htmlspecialchars($_POST['email']));
               $message = AddSlashes (htmlspecialchars($_POST['message']));
               $sql="INSERT Into commentaire SET datedenvoyemessage='" . $datedenvoyemessage ."',
         date='".$date."',
         pseudo='".$pseudo."',
         email='".$email."',
         sujet='".$sujet."',
         message='".$message."' 
         ";
    $insertion=$bdd->exec($sql);
                
      }
      else
      {
       $erreur="l'Adresse Email ou bien le Pseudo que vous avez saisir n'existe pas, s'il vous plait veilliez verifier sur vos profil et resaisir les aprés!!!";
      }  
      
    }
    else
    {
  $erreur="Votre adresse email est invalide!";
    }
  }
  else
  {
   $erreur="Votre pseudo ne doit pas inférieure à 5 caractère!";
  }
 }
 else
 {
   $erreur="Tous les champs doivent être complétés!";
 }
}


?> 
<article>
   <table>
   <tr>
   <td>
   <?php
   $req = "SELECT id,datedenvoyemessage,pseudo,email,sujet,message FROM commentaire WHERE id ='".$_GET['id']."' ";
            $query = $bdd->query($req);
            $original=$query->fetch(PDO::FETCH_OBJ);
            print $original->sujet.'<br / >';
            print'Auteur: <a href="mailto:'.$original->email.'">'.$original->pseudo.'</a> date: '.$original->datedenvoyemessage.'<br />';
            print 'message: <br />';
            print $original->message;

            print '<hr />'; 
            $rep = "SELECT id,datedenvoyemessage,pseudo,email,sujet,message FROM commentaire WHERE reponse_id ='".$_GET['id']."' ";
            $queryrep = $bdd->query($rep);

            while ( $reponse =$queryrep->fetch(PDO::FETCH_OBJ) )
           {
           print $reponse->sujet.'<br />';
           print'Auteur : <a href="mailto:'.$reponse->email.'">'.$reponse->pseudo.'</a> posté le: '.$reponse->date.'<br />';
           print 'message: <br />';
           print $reponse->message;
           print '<hr />';
           }
           ?>
   </td>

<form method="post" action="">
     <input type="hidden" name="reponse_id" value="<?php print $_GET['id']; ?>" />
     <table STYLE="background-image: url(images/rgegeg.jpg)" border="0" cellspacing="20%">
              <h1><font size="5%">ENVOYER DES COMMENTAIRE</font></h1>
           </table>
      <br/>
     <table width="100%" border="0"  cellspacing="5%">
             <tr>
           <td  width="50%"class="titre_form1" aligne="center" colspan="20"><center> <?php if (isset($erreur)){echo '<font color="#000000">'.$erreur."</font>";}?></center></td>
             </tr>
           </table>
                 <table>
                    <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Pseudo</center></b></td>
                       <td style="width:250px"><input type="text" name="pseudo" placeholder="Taper votre Pseudo..." /></td>
                    </tr>
                    <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>E-Mail</center></b></td>
                       <td style="width:250px"><input type="text" name="email" placeholder="Votre Adresse E-mail" /></td>
                    </tr>
        <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Sujet</center></b></td>
                       <td style="width:250px"><input type="text" name="sujet" value="<?php print $original->sujet ; ?>"/></td>
                    </tr>
      </table>
       <br/>
      <table width="100%" border="0"  cellspacing="0%">
                    <tr> 
                     <td>
                      <textarea name="message" wrap="VIRTUAL" cols="70" rows="10" placeholder="Taper votre commentaire "></textarea>
                     </td>
                    </tr>
                    <tr> 
                     <td colspan="2" style="text-align:center"><input type="submit" name="submit" value="ENVOYER" /></td>
                    </tr>
                  </table> 
    
            </form> 


//==reponse.php==

<?php
$bdd= new PDO('mysql:host=localhost;dbname=harenaBu', 'root', '');
if (isset ($_POST['submit']))
{
 $pseudo= htmlspecialchars ($_POST['pseudo']); 
 $email= htmlspecialchars ($_POST['email']);
 $sujet= htmlspecialchars ($_POST['sujet']);
 if   (!empty($_POST['pseudo'])
    AND !empty($_POST['email'])
      AND !empty($_POST['sujet'])) 
    {
  $pseudo= htmlspecialchars ($_POST['pseudo']);
  $pseudolength=strlen ($pseudo);
  if ($pseudolength>=5)
  {
    $email= htmlspecialchars ($_POST['email']);
    if (filter_var($email, FILTER_VALIDATE_EMAIL))
    {
    $requser=$bdd->prepare("SELECT * FROM membres WHERE pseudo=? AND email=?");
       $requser->execute(array($pseudo, $email));
       $userexist= $requser->rowCount();
         if ($userexist==1)
      {
    
      $datedenvoyemessage = date("d-m-Y H:i");
               $date = date("d-m-Y H:i");
               $pseudo = htmlspecialchars($_POST['pseudo']);
               $sujet = htmlspecialchars($_POST['sujet']);
               $email = htmlspecialchars($_POST['email']);
               $message = htmlspecialchars($_POST['message']);
               $sql="INSERT Into commentaire SET datedenvoyemessage='" . $datedenvoyemessage ."',
         date='".$date."',
         pseudo='".$pseudo."',
         email='".$email."',
         sujet='".$sujet."',
         message='".$message."' 
         ";
    $insertion=$bdd->exec($sql);
                
      }
      else
      {
       $erreur="l'Adresse Email ou bien le Pseudo que vous avez saisir n'existe pas, s'il vous plait veilliez verifier sur vos profil et resaisir les aprés!!!";
      }  
      
    }
    else
    {
  $erreur="Votre adresse email est invalide!";
    }
  }
  else
  {
   $erreur="Votre pseudo ne doit pas inférieure à 5 caractère!";
  }
 }
 else
 {
   $erreur="Tous les champs doivent être complétés!";
 }
}
?>
<article>
   <table>
   <tr>
   <td>
   <?php
   
           $bdd= new PDO('mysql:host=localhost;dbname=harenaBu', 'root', '');
           $req= "SELECT * FROM commentaire WHERE reponse_id ='' Order by datedenvoyemessage Desc Limit 0, 50 ";
           $query=$bdd->query($req);

          while($forum=$query->fetch(PDO::FETCH_OBJ))
           {
         
         print '<a href="lecture.php?id='.$forum->id .'">'.$forum->sujet.'</a> -Auteur: <a href="mailto:'.$forum->email.'">'.$forum->pseudo.'</a> posté le: '.$forum->date.'<br />';
         print '<hr />';

          }
         ?>
   </td>
   </tr>
   </table>
   <form method="post" action="">
      <input type="hidden" name="reponse_id" value="<?php print $_GET['id']; ?>"/>
     <table STYLE="background-image: url(images/rgegeg.jpg)" border="0" cellspacing="20%">
              <h1><font size="5%">ENVOYER DES COMMENTAIRE</font></h1>
           </table>
      <br/>
     <table width="100%" border="0"  cellspacing="5%">
             <tr>
           <td  width="50%"class="titre_form1" aligne="center" colspan="20"><center> <?php if (isset($erreur)){echo '<font color="#000000">'.$erreur."</font>";}?></center></td>
             </tr>
           </table>
                 <table>
                    <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Pseudo</center></b></td>
                       <td style="width:250px"><input type="text" name="pseudo" placeholder="Taper votre Pseudo..." /></td>
                    </tr>
                    <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>E-Mail</center></b></td>
                       <td style="width:250px"><input type="text" name="email" placeholder="Votre Adresse E-mail" /></td>
                    </tr>
        <tr>
                       <td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Sujet</center></b></td>
                       <td style="width:250px"><input type="text" name="sujet" placeholder="Le Sujet de votre commentaire " /></td>
                    </tr>
      </table>
       <br/>
      <table width="100%" border="0"  cellspacing="0%">
                    <tr> 
                     <td>
                      <textarea name="message" wrap="VIRTUAL" cols="70" rows="10" placeholder="Taper votre commentaire "></textarea>
                     </td>
                    </tr>
                    <tr> 
                     <td colspan="2" style="text-align:center"><input type="submit" name="submit" value="ENVOYER" /></td>
                    </tr>
                  </table> 
    
            </form>




EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :ICI

Merci d'y penser dans tes prochains messages.
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
4 janv. 2016 à 14:47

mais il sont déjà fonctionné mais en tous une autre problème je obtient: quand je envoie du commentaire, et oui le commentaire s'affiche bien mais le problème si je actualise mon site le commentaire que je l'avais envoyé affiche encore même si le champ est vide, que je doit faire pour stoper ça?svp

Heu..... tu peux reformuler ?
Là .. je ne comprend rien......
0
Allahryck Messages postés 20 Date d'inscription jeudi 31 décembre 2015 Statut Membre Dernière intervention 21 janvier 2016
4 janv. 2016 à 15:26
Ok! mon problème,sur mon site quand je envoyé comme un exemple un commentaire:"Test commentaire", bien sur que le commentaire sont bien reçu dans mon base mais quand je actualise(j’appuie sur touche F5) le même commentaire:"Test commentaire" affiche encore sur mon base encore
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649 > Allahryck Messages postés 20 Date d'inscription jeudi 31 décembre 2015 Statut Membre Dernière intervention 21 janvier 2016
4 janv. 2016 à 15:33
Tu veux dire que quand tu fais un Refresh (via F5) ça refet un SUBMIT ?
C'est le fonctionnement normal ....
Tu peux contourner ça en utilisant un système de token (jetons )

https://stackoverflow.com/questions/15626868/prevent-double-form-submit-using-tokens
0
Allahryck Messages postés 20 Date d'inscription jeudi 31 décembre 2015 Statut Membre Dernière intervention 21 janvier 2016
4 janv. 2016 à 15:38
aaa ok! mer6, je veux essayer alors
0
Allahryck Messages postés 20 Date d'inscription jeudi 31 décembre 2015 Statut Membre Dernière intervention 21 janvier 2016
5 janv. 2016 à 14:19
slt....! je l'avais essayer mais le même résultat comme avant que obtenu(comme je fait Refresh(via F5) le commentaire que j'avais envoyé sont encore envoyé sur mon base et sur mon site), je l'avais appliquer sur mon script le Jeton Token, peut être je sais pas comment utiliser cette Jeton! à l'aideeeeeeeeeee!!! help
voila mon script

commentaire.php

$bdd= new PDO('mysql:host=localhost;dbname=harenaBu', 'root', '');
$token= uniqid(rand(),true);
$_SESSION['token']=$token;
$_SESSION['token_time']=time();
if (isset ($_POST['submit']))
{
if(isset($_SESSION['token']) && isset($_SESSION['token']) && isset($_POST['token']))
{
$datedenvoyemessage = date("d-m-Y H:i");
$date = date("d-m-Y H:i");
$pseudo= htmlspecialchars ($_POST['pseudo']);
$email= htmlspecialchars ($_POST['email']);
$sujet= htmlspecialchars ($_POST['sujet']);
$message = htmlspecialchars($_POST['message']);

if (!empty($_POST['pseudo'])
AND !empty($_POST['email'])
AND !empty($_POST['sujet']))
{
$pseudo= htmlspecialchars ($_POST['pseudo']);
$pseudolength=strlen ($pseudo);
if ($pseudolength>=5)
{
$email= htmlspecialchars ($_POST['email']);
if (filter_var($email, FILTER_VALIDATE_EMAIL))
{
$requser=$bdd->prepare("SELECT * FROM membres WHERE pseudo=? AND email=?");
$requser->execute(array($pseudo, $email));
$userexist= $requser->rowCount();
if ($userexist==1)
{

$datedenvoyemessage = date("d-m-Y H:i");
$date = date("d-m-Y H:i");
$pseudo = htmlspecialchars($_POST['pseudo']);
$sujet = htmlspecialchars($_POST['sujet']);
$email = htmlspecialchars($_POST['email']);
$message = htmlspecialchars($_POST['message']);
$sql="INSERT INTO commentaire SET
datedenvoyemessage='".$datedenvoyemessage."',
date='".$date."',
pseudo='".$pseudo."',
email='".$email."',
sujet='".$sujet."',
message='".$message."'
";
$insertion=$bdd->exec($sql);

}
else
{
$erreur="l'Adresse Email ou bien le Pseudo que vous avez saisir n'existe pas, s'il vous plait veilliez verifier sur vos profil et resaisir les aprés!!!";
}

}
else
{
$erreur="Votre adresse email est invalide!";
}
}
else
{
$erreur="Votre pseudo ne doit pas inférieure à 5 caractère!";
}
}
else
{
$erreur="Tous les champs doivent être complétés!";
}
}
}
?>
<form method="post" action="">

<table STYLE="background-image: url(images/rgegeg.jpg)" border="0" cellspacing="20%">
<h1><font size="5%">ENVOYER DES COMMENTAIRE</font></h1>
</table>
<br/>
<table width="100%" border="0" cellspacing="5%">
<tr>
<td width="50%"class="titre_form1" aligne="center" colspan="20"><center> <?php if (isset($erreur)){echo '<font color="#000000">'.$erreur."</font>";}?></center></td>
</tr>
</table>
<table>
<tr>
<td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Pseudo</center></b></td>
<td style="width:250px"><input type="text" name="pseudo" placeholder="Taper votre Pseudo..." /></td>
</tr>
<tr>
<td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>E-Mail</center></b></td>
<td style="width:250px"><input type="text" name="email" placeholder="Votre Adresse E-mail" /></td>
</tr>
<tr>
<td STYLE="background-image: url(images/fond2.jpg)" width="50%" class="titre_form" aligne="center" colspan="1"><center><b>Sujet</center></b></td>
<td style="width:250px"><input type="text" name="sujet" placeholder="Le Sujet de votre commentaire " /></td>
</tr>
</table>
<br/>
<table width="100%" border="0" cellspacing="0%">
<tr>
<td>
<textarea name="message" wrap="VIRTUAL" cols="70" rows="10" placeholder="Taper votre commentaire "></textarea>
</td>
</tr>
<tr>
<td colspan="2" style="text-align:center"><input type="submit" name="submit" value="ENVOYER" /></td>
</tr>
</table>
<input STYLE="background-image: url(images/fond2.jpg)" type="hiden" name="token" value="<?php echo $token; ?>" />

</form>
0