problème d'affichage d'image binaire
Posté : 29 juil. 2013, 14:11
bonjour à tous .
j'ai inséré des images en binaire (je sais que c'est pas la bonne méthode mais le client exige cela) mais je n'arrive pas a les afficher.
quand je veux afficher ça me met comme erreur :
L'mage"http://localhost/xxxxx?page=apercu&id=11" ne peut etre affiché car elle contient des erreurs .
*voici mes 2 codes utilisés pour afficher :
galerie.php
j'ai inséré des images en binaire (je sais que c'est pas la bonne méthode mais le client exige cela) mais je n'arrive pas a les afficher.
quand je veux afficher ça me met comme erreur :
L'mage"http://localhost/xxxxx?page=apercu&id=11" ne peut etre affiché car elle contient des erreurs .
*voici mes 2 codes utilisés pour afficher :
galerie.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<title>Ma galerie d'images</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<style type="text/css">
body {
width: 95%;
}
p {
text-align: left;
}
a {
color: #000000;
text-decoration: none;
}
</style>
</head>
<body>
<h1 style="position:absolute;top:200px; left:350px">FICHIERS NUMERISES</h1>
<?php
include('body/header.php');
include('body/menu.php');
try {
$bdd = new PDO('mysql:host=localhost;dbname=bddgescour', 'root', '');
} catch (Exception $e) {
exit('Erreur : ' . $e->getMessage());
}
if(isset($_GET['id']));
$id = $_GET['id'];
// on crée la requête SQL
$reponse = $bdd->query("SELECT img,id_img,nom,id_victime FROM image WHERE id_victime='".$id."' ");
while($result = $reponse->fetch()) {
echo '<div style="position:relative;top:250px; left:-121px; width: 22%;
float: left;
text-align: center;
border: 1px solid black;
margin: 5px;
padding: 5px">';
echo '<a href="index.php?page=apercu&id_img='.$result['id_victime'].'"><img src="index.php?page=apercu&id_img='.$result['id_victime'].'" alt="'.$result['nom'].'" title="'.$result['nom'].'"/></a>';
echo '</div>';
}
$reponse->closeCursor();
?>
</body>
</html>
ensuite apercu.php<?php
include('body/header.php');
include('body/menu.php');
//si nous avons une image
if(!empty($_GET['id_img'])) {
//connexion à la base de données
try {
$bdd = new PDO('mysql:host=localhost;dbname=bddgescour', 'root', '');
} catch (Exception $e) {
exit('Erreur : ' . $e->getMessage());
}
//on sécurise notre donnée
$idImg = intval($_GET['id_img']);
echo $idImg;
//la requète qui récupère l'image à partir de l'identifiant
$req = $bdd->prepare('SELECT * FROM image WHERE id_victime = ?');
$req->execute(array($idImg));
if($req->rowCount() <1)
echo 'L\'image n\'existe pas !';
else {
//on stocke les données dans un tableau
$donnees = $req->fetch();
//on indique qu'on affiche une image
header ("Content-type: ".$donnees['extension']);
//on affiche l'image en elle même
echo $donnees['img'];
}
$req->closeCursor();
} else
echo 'Vous n avez pas sélectionné d image !';
?>