Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2349 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  impossible d'inserer dans ma base ..

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

impossible d'inserer dans ma base ..

n°1095420
wydook
Posté le 24-05-2005 à 18:29:48  profilanswer
 

bonjour a tous.
 
Tout marche bien sur mon formulaire quand je valide le texte.
 
Mais si je met un mot qui comprend una apostrophe , ca marche pas , rien ne s'insere dans la base.
 
le fichier de validation:
 

Code :
  1. <?php session_start(); ?>
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Language" content="fr">
  5. <title>Waz</title>
  6. <link rel="stylesheet" href="style.css" type="text/css">
  7. </head>
  8.   <body bgcolor="#000055">
  9. <?php
  10.       $host="localhost";
  11.       $user="***";
  12.       $pass="***";
  13.       $base="***";
  14.       $id=$_SESSION['id'];
  15.       $date = time();
  16.       $connection= mysql_connect($host,$user,$pass)
  17.           or die("Impossible de se connecter<br>" );
  18.       $db=mysql_select_db($base)
  19.           or die("Impossible de selectionner la base" );
  20.          
  21.       $query="INSERT INTO comment VALUES('','$id','$comment','$pseudo','$date')";
  22.       $result=mysql_query($query);
  23.       echo " <center>Nouveau commentaire ajouté</center><br>";
  24.       echo "  <hr><br><br>";
  25.       echo "<a href='news.php'> Revenir au News</a>";
  26.       ?>
  27.    <br></br>
  28.       </body>
  29.       </html>


 
 
et le formulaire
 

Code :
  1. <?php
  2. $id = $_GET['id'];
  3. $host = "localhost";
  4. $login = "***";
  5. $pass = "***";
  6. $base = "***";
  7. $_SESSION['id']=$_GET['id'];
  8. $bd=mysql_connect($host , $login , $pass);
  9. $bd=mysql_select_db($base);
  10. $query="SELECT * FROM news1 WHERE id='$id'";
  11. $result=mysql_query($query);
  12. $row = mysql_fetch_array($result);
  13.         $news = nl2br($row[news]);
  14.         $titre = $row[titre];
  15.         $cat = $row[cat];
  16.         $date = $row[date];
  17.         $annee = date("Y", $date);
  18.         $mois = date("m", $date);
  19.         $jour = date("d", $date);
  20.         $heures = date("H", $date);
  21.         $minutes = date("i", $date);
  22.         $date = " Poster le ".$jour."/".$mois."/".$annee." à ".$heures."h".$minutes;
  23.         ?>
  24.         <table border="0" cellspacing="0" cellpadding="5" width="100%" align="center" style="border:1px solid black">
  25.           <form name="register" method="post" action="addcomment.php">
  26.             <tr>
  27.               <td bgcolor="#94BEDA" collspan="2"> <div align="center"> Poster
  28.                   un nouveau commentaire pour la news: <br>
  29.                   <font color="#990000" size="4"><?php
  30.     echo $titre;
  31.    
  32.      ?></font>
  33.                 </div></tr>
  34.             <tr>
  35.               <td bgcolor="#FFFFFF" collspan="2">
  36.                 <div align="center">
  37. <div>
  38.                     <div align="center"><font color="#FF0000">Ne remplissez pas
  39.                       cette case</font> , votre pseudo apparaitra automatiquement
  40.                       quand vous posterais votre commentaire
  41.                       <input type="textaera" name="$_SESSION['pseudo']" maxlenght="25">
  42.                     </div>
  43.                   </div>
  44.                 </div></tr>
  45.             <tr>
  46.               <td collspan="2"> <div align="center">
  47.                   <div align="center">Ajouter un commentaire</div>
  48.                   <textarea name="comment" cols="80" rows="10"></textarea>
  49.                 </div>
  50.             <tr>
  51.               <td colspan="3"> <div align="center">
  52.                   <input type="submit" value="Poster" name="Poster">
  53.                 </div></td>
  54.             </tr>
  55.             <br>
  56.           </form>
  57.         </table>
  58.         <p>&nbsp;</p>
  59.       </div>
  60.       <div align="center">
  61.         <table border="0" cellspacing="0" cellpadding="5" width="100%" align="center" style="border:1px solid black">
  62.           <tr>
  63.             <td bgcolor="#94BEDA">
  64.               <div align="left"> Titre de la news :
  65.                 <?php
  66.     echo $titre;
  67.    
  68.      ?>
  69.               </div></td>
  70.           </tr>
  71.           <tr>
  72.             <td width="100%" align="center" bgcolor="#FFFFFF">
  73.               <?php
  74.         $query='SELECT * FROM comment ORDER BY `idcom` DESC ';
  75.         $result=mysql_query($query);
  76.         while ($row = mysql_fetch_array($result)) {
  77.         $idnews = $row[idnews];
  78.         if ($idnews == $id) {
  79.     $comment = nl2br($row[comment]);
  80.     $pseudo = $row[pseudo];
  81.     $date = $row[date];
  82.         $annee = date("Y", $date);
  83.         $mois = date("m", $date);
  84.         $jour = date("d", $date);
  85.         $heures = date("H", $date);
  86.         $minutes = date("i", $date);
  87.         $date = " Message de ".$pseudo." le ".$jour."/".$mois."/".$annee." à ".$heures."h".$minutes;
  88.         echo $date;
  89.         echo "<br></br>";
  90.         echo $comment;
  91.         echo "<hr>";
  92.         }
  93.         } ?>
  94.             </td>
  95.           </tr>
  96.         </table>


 
 

mood
Publicité
Posté le 24-05-2005 à 18:29:48  profilanswer
 

n°1095432
dandy
Posté le 24-05-2005 à 18:40:51  profilanswer
 

Code :
  1. // Déjà pour reprendre les données du formulaire  
  2. $comment = $_POST['comment'];
  3. // Et ensuite tu met des slash pour que les guillemets soient échappés lors de l'insertion  
  4. $comment = addslashes($comment);


 
Voilà je pense avoir répondu à ton problème[:alexis27].

n°1095439
wydook
Posté le 24-05-2005 à 18:52:19  profilanswer
 

j'ai fait ca  
 
dans le formulaire d'insertion
 
 

Code :
  1. $query="INSERT INTO comment VALUES('','$id','$comment = addslashes($comment);','$pseudo','$date')";


 
 
et ca sur la page d'affichage
 
 

Code :
  1. $comment = $_POST['comment'];


 
 
 
ben ca marche toujours pas


Message édité par wydook le 24-05-2005 à 18:52:38
n°1095494
yoyo354
Yoyo, le roi du ...
Posté le 24-05-2005 à 20:05:58  profilanswer
 

wydook a écrit :

j'ai fait ca  
 
dans le formulaire d'insertion
 
 

Code :
  1. $query="INSERT INTO comment VALUES('','$id','$comment = addslashes($comment);','$pseudo','$date')";


 
 
et ca sur la page d'affichage
 
 

Code :
  1. $comment = $_POST['comment'];


 
 
 
ben ca marche toujours pas


 
Essaye sinon avec :  

Code :
  1. extract($_POST,EXTR_OVERWRITE);
  2. $query="INSERT INTO comment VALUES('','$id','$comment = addslashes($comment);','$pseudo','$date')";


 
Tu as quoi comme message d'erreur ?  
 
 
 

n°1095510
wydook
Posté le 24-05-2005 à 20:21:13  profilanswer
 

aucun message d'erreur , le message n'estpas pris en compte quand il y a une apostrophe , pour le reste ca marche sinon

n°1095526
wydook
Posté le 24-05-2005 à 20:32:54  profilanswer
 

maintenant avec ta methode , meme si j'ecrit par exemple  
 
 
bonjour  
 
ca me met  
 
bonjour = addslashes(bonjour);
 
 
et toujours rien avec un apostrophe
 

n°1095813
yoyo354
Yoyo, le roi du ...
Posté le 25-05-2005 à 07:11:47  profilanswer
 

oups :p

n°1095820
wydook
Posté le 25-05-2005 à 07:40:50  profilanswer
 

Merci beaucoup , ca marche :)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  impossible d'inserer dans ma base ..

 

Sujets relatifs
comment insérer un usercontrol depuis le codebehindinsérer dynamiquement des users controls
Enregistrer des données VB dans une base acces"VIDER" une base SQL
Lire les paramètres d'une base SQLinserer des donnée dans un fichier
[Résolu] formulaire asp et base de données access et iisFonction POS impossible (facile a resoudre je pense)
[html] inserer un bout de code commun dans une autre pagevb.NET: Lire la base de registre côté client
Plus de sujets relatifs à : impossible d'inserer dans ma base ..


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR