Souci traitement de donnée sql

Bonjour,

au connaisseur PHP, je fais appel a vos services pour un problème de traitement de donnée.

J'ai créer un formulaire qui permet d'envoyer tout mes champs input en base de donnée parmi ces input j'ai une :

<textarea rows="9" name="description" id="description"></textarea> 


Avec "ID description" le problème est que quand je mais un certain nombre de caractère celle si ne s'enregistre pas en base de donnée du fait de ça longueur je présume.

voila le fichier qui traite mon formulaire :

<?php  

//Affectation des valeurs saisies dans des variables       
    $societe=$_POST['societe'];  
    $miseajour1=$_POST['miseajour1'];  
    $miseajour=$_POST['miseajour'];  
    $antivirus=$_POST['antivirus'];  
    $datemajav=$_POST['datemajav'];  
    $disquedurecheck=$_POST['disquedurecheck'];  
    $disquedur=$_POST['disquedur'];  
    $ucprocesseurcheck=$_POST['ucprocesseurcheck'];  
    $ucprocesseur=$_POST['ucprocesseur'];  
    $memoirecheck=$_POST['memoirecheck'];  
    $memoire=$_POST['memoire'];  
    $processuscheck=$_POST['processuscheck'];  
    $processus=$_POST['processus'];  
    $Backupcheck=$_POST['Backupcheck'];  
    $Backupcheck1=$_POST['Backupcheck1'];  
    $disquesauvegarde=$_POST['disquesauvegarde'];    
    $disquesauvegarde1=$_POST['disquesauvegarde1'];  
    $onduleur1=$_POST['onduleur1'];  
    $onduleur2=$_POST['onduleur2'];  
    $coupureelec=$_POST['coupureelec'];  
    $nbcoupures=$_POST['nbcoupures'];  
    $description=addslashes($_POST['description']);  
    $intervenant=$_POST['intervenant'];  
// Connexion à la base de données        
    $db=mysql_connect("localhost","root","") or die("Erreur de connexion à MySql !".mysql_error());  
    
    // Ouverture de la base  
    mysql_select_db("ftpmanagement",$db) or die("Erreur lors de la connexion à la base.");  
    
    //Requête d'insertion des valeurs dans la table  
    $sql="INSERT INTO cmclient (societe, miseajour1, miseajour, antivirus, disquedurecheck, disquedur, ucprocesseurcheck, ucprocesseur, memoirecheck, memoire, processuscheck, processus, Backupcheck, Backupcheck1, disquesauvegarde, disquesauvegarde1, onduleur1, onduleur2, coupureelec, nbcoupures, description, intervenant) VALUES('$societe', ' $miseajour1', ' $miseajour', '$antivirus', '$disquedurecheck', '$disquedur', '$ucprocesseurcheck','$ucprocesseur','$memoirecheck','$memoire','$processuscheck','$processus','$Backupcheck','$Backupcheck1','$disquesauvegarde','$disquesauvegarde1','$onduleur1','$onduleur2','$coupureelec','$nbcoupures','$description','$intervenant')";  
                              
// Exécution de la requête INSERT  
    mysql_query($sql);  
    
    // $reponse = mysql_query("SELECT * FROM cmclient") or die('erreur');  
    // echo $reponse;  
      
   
     
    //fermeture de la requete  
    mysql_close($db) or die ("Erreur lors de l'exécution de la requete sql !".mysql_error());  

// Exécution de la requête SELECT  
// $result = mysql_query("SELECT client, ftp, login, mdp, mail  FROM utilisateurs") or die ("Erreur lors de l'exécution de la requete sql !".mysql_error());  

?>  

<?php  
header('Location: ../post.php');  
?>  


Et voici la requête SQL qui permais de créer ma table avec tout les champs:

CREATE TABLE 'CMclient' (
'ID' int(11) NOT NULL auto_increment,
'societe' varchar(100) NOT NULL,
'miseajour1' varchar(100) NOT NULL,
'miseajour' varchar(100) NOT NULL,
'antivirus' varchar(100) NOT NULL,
'datemajav' varchar(100) NOT NULL,
'disquedurecheck' varchar(100) NOT NULL,
'disquedur' varchar(100) NOT NULL,
'ucprocesseurcheck' varchar(100) NOT NULL,
'ucprocesseur' varchar(100) NOT NULL,
'memoirecheck' varchar(100) NOT NULL,
'memoire' varchar(100) NOT NULL,
'processuscheck' varchar(100) NOT NULL,
'processus' varchar(100) NOT NULL,
'Backupcheck' varchar(100) NOT NULL,
'Backupcheck1' varchar(100) NOT NULL,
'disquesauvegarde' varchar(100) NOT NULL,
'disquesauvegarde1' varchar(100) NOT NULL,
'onduleur1' varchar(100) NOT NULL,
'onduleur2' varchar(100) NOT NULL,
'coupureelec' varchar(100) NOT NULL,
'nbcoupures' varchar(100) NOT NULL,
'description' varchar(100) NOT NULL,
'intervenant' varchar(100) NOT NULL,
'date_enregistrement' datetime NOT NULL,
PRIMARY KEY ('ID'),
UNIQUE KEY 'societe' ('societe')
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

J'ai tenter :

'description' LONGTEXT ,

et du coup ça à pour conséquence d'annuler toute ma requête,

3 réponses

  • Votes
  • Date
  • Date décroissante
  1. description en mode 'TEXT' ca donne quoi ? (sans lui préciser le nombre de caractères)
    1. je les fais justement

      'description' LONGTEXT ,
      'description' TEXT ,
      1. et si la description fait 3 lettres ca passe ?

        fais des tests voir si ca un texte s'enregistre avec des guillemts, sans guillemets, avec apostrophes, ...
        je pense pas que ce soit une histoire de longeur, sinon ca aurait enregistrer au moins les X premiers caractères