Bonsoir,
En parcourant le forum j'ai vu que je n'etais pas le seul a avoir ce problème!!!
Malgrsè tout je n'ai pas réussi a le corriger.
Voila ce que je fais.
J'importe un fichier texte dans ma base, hors dans ce fichier texte il peut y avoir des apostrophes.
Donc cela me provoque une erreur SQL. L'import des données est stopé.

Voici mon codePHP qui importe mon fichier texte:
(l'erreur est pour le champ $texte)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php
/* Connexion bdd */
mysql_connect('','','');
mysql_select_db('');
//On vide la table
mysql_query("TRUNCATE TABLE tableimport");
/* On ouvre le fichier à importer en lecture seulement */
     $fp=fopen("import.txt","r");
    while (!feof($fp)) /* Et Hop on importe */
    { /* Tant qu'on n'atteint pas la fin du fichier */ 
 
       $ligne = fgets($fp,4096); /* On lit une ligne */  
 
       /* On récupère les champs séparés par ; dans liste*/
       $liste = explode( ";",$ligne);  
 
       /* On assigne les variables */ 
 
   $id = $liste[0]; 
   $nom = $liste[1]; 
   $prenom = $liste[2];
   $texte = $liste[3]; 
 
       /* Ajouter un nouvel enregistrement dans la table */ 
 
       $query = "INSERT INTO tableimport VALUES('$id','$nom','$prenom','$texte')";
       $result= MYSQL_QUERY($query); 
 
       if(mysql_error())
        { /* Erreur dans la base de donnees, sûrement la table qu'il faut créer */
           print "Erreur dans la base de données : ".mysql_error();
           print "<br>Importation stoppée.";
           exit();
        } 
       else /* Tout va bien */
         print "Base mise a jour<br>";<br />
     }    
     echo "<br>Importation terminée, avec succès."; 
 
  /* Fermeture */ 
     fclose($fp); 
     MYSQL_CLOSE(); 
    ?>

Que dois-je faire pour eviter cette erreur.

J'ai tenté de rajouter ceci


mais sans résultats.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
chaine = StringReplace(chaine, "'", "''", TReplaceFlags() << rfReplaceAll);
Merci