cs_astien
Messages postés9Date d'inscriptionmercredi 16 janvier 2002StatutMembreDernière intervention23 janvier 2003 22 janv. 2003 à 12:58
astien
g une table image avec un champs binaire et un champs id
je veux creer une page php qui me permet d'ajouter une image dans ma base de donnée. je fait l'upload de l'image sur le serveur a partir de la page d'ajout d'image. je traite l'image et je l'insere dans la base de donnée. le probleme c inserer l'image en binaire. comment je fais ? peut-être que je devrais m'y prendre d0une tout autre façon et peut-être aussi que je devrais utiliser un autre type de champs pour stocker l'image.
revinc
Messages postés385Date d'inscriptionmardi 15 octobre 2002StatutMembreDernière intervention19 décembre 2017 22 janv. 2003 à 13:18
normalement avec un champ MEDIUMBLOB ça devrait marcher (ça marche chez moi).
si ça marche pas vérifie que la variable qui contient l'image contient BIEN l'image.
sinon tu peux toujours enregsitrer l'image dans un répertoire sans passer par une base mysql
cs_astien
Messages postés9Date d'inscriptionmercredi 16 janvier 2002StatutMembreDernière intervention23 janvier 2003 22 janv. 2003 à 13:28
astien
Ok pour le champs je comprends, mais sur la page php,
comment dois-je faire pour traduire l'image au format MEDIUMBLOB et comment je fais pour traduire un MEDIUMBLOB au format image :P
Vous n’avez pas trouvé la réponse que vous recherchez ?
michel_roger
Messages postés60Date d'inscriptionlundi 6 octobre 2003StatutMembreDernière intervention18 août 2006 30 juin 2004 à 15:42
Salut g moi aussi galéré aujourd'hui et je pense avoir un truc qui marche (mais pas super cela dit). Je sais pas comment faire pour supprimer ce fichier. Si je le fais à la fin du script, la page n'affiche plus l'image.
// C $content qu'on va insérer dans le champs mediumblob
$contents = addslashes($contents);
unlink($filename);
fclose ($handle);
$query = "INSERT INTO nom_table (image_id, post_image) VALUES (1,1,'$contents')";
if (!query($query,$forum))
echo mysql_error(). "
";
else
echo "Enregistré.";
Pour afficher l'image :
// Création d'un fichier binaire (sur serveur windows)
$filename = "path/vers/le/fichier";
if (!$handle = fopen("$filename", "wb")) {
print "Impossible d'ouvrir le fichier ($filename)";
exit;
}
// On écrit le contenu binaire du champs récupéré dans $record
if(!fwrite($handle, $record["post_image"])) {
print "Impossible d'écrire dans le fichier ($filename)";
exit;
}
fclose($handle);