Bonjour,
Voilà le souci,
Je souhaite insérer des images dans ma BDD MySQL, jusque là, tout va bien.
Enfin, ça dépend....
Si le titre de l'image ne comporte pas d'apostrophes ou guillemets, ça marche très bien... dans le cas contraire, ça me donne ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ame.jpg', '10776', 'image/jpeg', 'ÿØÿà\0JFIF\0\0\0d\0d\0\0ÿì\0Ducky\0\0\0\' at line 1
L'apostrophe quand je tente d'ajouter cette image provient de l'apostrophe.
J'aimerais savoir comment faire pour transformer cette apostrophe pour qu'elle ne pose plus de problème et qu'on puisse la voir par la suite (j'ai le même souci avec une partie que j'intitule résumé et qui comportera également des apostrophes).
Voici ma fonction de transfert d'image :
Et mon formulaire pour l'envoi :
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 function transfert () { $ret = false; $img_blob = ''; $img_taille = 0; $img_nom= ''; $taille_max = 250000; $ret = is_uploaded_file ($_FILES['fic']['tmp_name']); if(!$ret) { echo"Problème de transfert"; return false; } else { //le fichier a bien été reçu $img_taille = $_FILES['fic']['size']; if($img_taille > $taille_max) { echo "Fichier trop volumineux!"; return false; } $img_type = $_FILES['fic']['type']; $img_nom1 = $_FILES['fic']['name']; $img_nom = htmlspecialchars($img_nom1); $img_blob = file_get_contents ($_FILES['fic']['tmp_name']); $req = "insert into image ("."image_nom, image_taille,image_type, image_blob".") values ("."'".$img_nom."', "."'".$img_taille."', "."'".$img_type."', "."'".addslashes($img_blob)."')"; $ret = mysql_query ($req) or die (mysql_error()); return true; } };
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 if (isset($_FILES['fic'])) { transfert(); } echo"<form enctype='multipart/form-data' action='#' method='POST'> <input type='hidden' name='max_file_size' value='250000'> <input type='file' name='fic' size=50> <input type='submit' value='Envoyer'> </form>
Qu'en pensez-vous ??
Il me semble que l'utilisation de htlmspecialchars ou htmlentities soit nécessaire non ?? Par contre je ne vois pas comment le mettre en oeuvre...
Un p'tit coup de main serait pas de refus
Partager