[PHP] Sqlite 3 et Blob

Sqlite 3 et Blob [PHP] - PHP - Programmation

Marsh Posté le 21-04-2008 à 11:43:45    

Salut à tous,
 
Je cherche à rentrer des données binaire dans une BDD Sqlite 3. J'ai donc créer un champ de type BLOB, mais lorsque j'essaie d'insérer des données, il m'envoie balader à cause de caractère interdit dans la chaine binaire.
J'ai essayer la fonction sqlite_udf_encode_binary() initialement prévu pour sqlite1, ça fonctionne pour la plupart des fichiers, mais certain ne passe pas (unrecognized token: + un caractère). J'ai aussi essayé addslashe(), mais ça ne marche pas du tous. Par contre avec les fonctions base64 ou bin2hex, pas de problème, mais j'ai une perte de place importante (33% minimum pour le base64).
 
Une idée ?
 

Reply

Marsh Posté le 21-04-2008 à 11:43:45   

Reply

Marsh Posté le 18-12-2008 à 17:54:30    

Salut, j'ai essayé sqlite, meme problème pour importer mes bases de données,  
j'ai toujours l'erreur "sqlite unrecognized token", malgré 2 heures de tests, j'ai toujours pas trouvé


Message édité par grosbin le 18-12-2008 à 17:54:40

---------------
Photos Panoramiques Montagnes Haute Savoie
Reply

Marsh Posté le 18-12-2008 à 17:59:35    

Si qq'un a la liste des caractères à échapper ou supprimer, ce serait sympa  
.. le sqlite est très flou sur ce sujet .. ( pour l'instant j'essaye de faire passer des INSERT format mysql dedans, ça en zape la moitié )


Message édité par grosbin le 18-12-2008 à 18:01:48

---------------
Photos Panoramiques Montagnes Haute Savoie
Reply

Marsh Posté le 18-12-2008 à 19:29:45    

Si tu veux mettre du binaire dans un champ, le seul moyen vraiment efficace c'est les requètes préparées (donc uniquement via un langage de prog). Si tu veux passer par l'interface texte, à priori tout ce que tu as à faire, c'est un échappement du caractère ' (apostrophe, ASCII 39, en doublant l'apostrophe donc). Du genre :

Code :
  1. 'abc ''def'' ijk'

pour encoder la chaine

Code :
  1. abc 'def' ijk


 
J'ai fait quelque tests à l'arrache et à priori, ça ne pose pas de problème avec les \r et \n.

Reply

Marsh Posté le 18-12-2008 à 21:35:30    

arf merki
je partais de la base d'importer un fichier sql, à ce jour pour évader les caractères à problèmes

Code :
  1. $x=ereg_replace("`|!|#|@|\^|’"," ",trim($x));
  2. $x=str_replace("\'","''",$x);


Message édité par grosbin le 18-12-2008 à 21:35:58

---------------
Photos Panoramiques Montagnes Haute Savoie
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed