Page 1 sur 3
image n'apparait pas
Posté : 05 sept. 2005, 12:53
par 001cod10
Mon problème affichage d'image n'est pas résolu.Dans le champ de ma table j'ai toto.jpg et l'image à le même nom dans le répertoire.
Si quelqu'un peut m'aider ce sera génial.
J'aimerai que dans la section membre de mon site quand l'utilisateur tape le pseudo d'un membre sa fiche puisse s'afficher. Ce que j'arrive à faire mais la photo n'apparait pas.
Voici le bout de code que j'ai mis dans mon script qui affiche toutes les données du membre.
echo '<td><img src="
http://localhost/www/site/affiche.php?p ... o."/"></td>';
affichage.php
<?php
header('content-type: image/jpeg');
readfile('
http://localhost/site/dossier');
?>
Posté : 05 sept. 2005, 13:28
par charabia
<td><img src="http://127.0.0.1/www/site/affiche.php?pseudo=<?php echo $pseudo; ?>"></td>
Donnes nous un code un peu plus complet.
Re: image n'apparait pas
Posté : 05 sept. 2005, 13:28
par Toitoine
Tu ne mets pas de variable dans readfile ?
Code : Tout sélectionner
<?php
header('content-type: image/jpeg');
readfile('http://127.0.0.1/site/dossier/' . $_GET['pseudo']);
?>
image n'apparait pas
Posté : 05 sept. 2005, 13:45
par 001cod10
Fiche.htm
Code : Tout sélectionner
<html>
<body>
<form action="fiche.php" method="post">
<table>
<tr>
<td>Pseudo:</td>
<td><input type="text" name="pseudo" maxlength="6"/><br /></td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="Rechercher"/></td>
</tr>
</table>
</form>
</body>
</html>
Fiche.php
Code : Tout sélectionner
<?
$pseudo = isset($_POST["pseudo"]) ? $_POST["pseudo"] : "";
// information pour la connection à le DB
$host = 'localhost';
$user = 'root';
$pass = '';
$db = 'nombase';
// connection à la DB
$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
mysql_select_db($db) or die ('Erreur :'.mysql_error());
// requête SQL qui compte le nombre total d'enregistrement dans la table et qui
//récupère tous les enregistrements
$select = "SELECT * FROM Table WHERE pseudo='$pseudo'";
$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($result);
// si on a récupéré un résultat on l'affiche.
if($total) {
// debut du tableau
echo '<table border="0" bgcolor="">'."\n";
echo '<tr>';
echo '<td><img src="http://localhost/www/site/affiche.php?pseudo=<?php echo $pseudo; ?>"></td>';
echo'</tr>';
// lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.
while ($row = mysql_fetch_array($result)) {
$age = date("Y-m-d") - $row["datenaissance"];
echo '<tr>';
echo '<td><font color="#023161"><b>'.$row["pseudo"].'</font></b> ';
echo '<td>souhaite rencontrer</td>'; echo'<td>'.$row["jerecherche"].'</td>';
echo '</tr>';
echo '<tr>';
echo '<td></td>';
echo '<td><font color="#023161"><b>VILLE</font></b></td>'; echo '<td>'.$row["ville"].'</td>';
echo'</tr>';
echo '<tr>';
echo '<td></td>';
echo '<td><font color="#023161"><b>PAYS</font></b></td>'; echo '<td>'.$row["pays"].'</td>';
echo '</tr>'."\n";
echo '</table>'."\n";
// fin du tableau.
}}
else
{
echo 'Pas d\'enregistrements dans cette table...';
}
// on libère le résultat
mysql_free_result($result);
mysql_close();
?>
Posté : 05 sept. 2005, 13:49
par charabia
et le code de ton affiche.php ? C'est sans doute de là que provient le problème.
Posté : 05 sept. 2005, 13:52
par 001cod10
affichage.php
Code : Tout sélectionner
<?php
header('content-type: image/jpeg');
readfile('http://localhost/site/dossier/' . $_GET['pseudo']);
?>
Posté : 05 sept. 2005, 13:56
par charabia
même en rajoutant le $_GET['pseudo'] dans ton readfile comme le dit Toitoine ça ne fonctionne pas ?
Posté : 05 sept. 2005, 13:57
par chrileb
petits conseils:
faire attention a la casse entre le nom de ton image dans la bdd et le nom de ton fichier.
ex si dans bdd le nom est toto.jpg et que ton image s'appelle Toto.jpg l'image ne va pas s'afficher.
faire attention également au " ' "
Posté : 05 sept. 2005, 13:57
par 001cod10
oui cela ne fonctionne pas
Posté : 05 sept. 2005, 14:06
par Toitoine
Essaye un var_dump($_GET['pseudo']) pour tester ta variable.
Posté : 05 sept. 2005, 14:36
par 001cod10
je n'ai aucune idée sur comment je vais testre la variable.
Posté : 05 sept. 2005, 15:06
par HD
Posté : 05 sept. 2005, 16:12
par 001cod10
J'ai été sur le lien mais je n'arrive pas me concentrer à tel point que je ne comprend pas ce qu'il faut faire.
Posté : 05 sept. 2005, 17:04
par Truc
slt, tu va t'amuser (une fois le site en ligne)si tu met ts les liens comme ca,
http://127.0.0.1/.....:
de plus pourquoi tu n'affiche pas ton image de tel manière:
<img src="site/<?echo $pseudo.'.jpg';?>">
sinon j'ai pas trop compri (ni cherché a comprendre

) ce que fait header combiné au readfile, mais essai tjs comme ca (une précission de plus)
<?php
header('content-type: image/jpeg');
readfile('http://127.0.0.1/site/dossier/' . $_GET['pseudo'].'.jpg');
?>
Posté : 05 sept. 2005, 17:19
par 001cod10
Je t'explique mon probleme: Dans le champ photo de ma table j'ai 14.jpg comme étant le nom de la photo envoyée par l'utilisateur. La photo porte bien ce nom dans mon répertoire. Mon gros problème c'est l'affichage de l'image dans la fiche du membre. Ce que je constate le lien entre photo ne s'est pas fait entre le répertoire et ma table.