Problème d'affichage image selon un identifiant unique

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Problème d'affichage image selon un identifiant unique

par charabia » 08 nov. 2008, 15:46

1. Attention à l'injection SQL ! Si ton ID est un entier faire :
$id=intval($_GET['id']);
Si c'est une chaîne :
$id=mysql_real_escape_string(htmlspecialchars($_GET['id']));
2. Il faut éviter d'utiliser le * et privilégier les noms des champs de ta table.

3. Pour respecter sieur w3c :
echo '<img src="'.$photo.'" width="xx" height="xx" alt="xx" />';

par sylvaing26 » 08 nov. 2008, 15:41

mais ya pas de quoi.
T'as vu que c'est + simplement comme ca dans une seule seule table !
si t'as un soucis tu sais ou me trouver ! :D

par matye21 » 08 nov. 2008, 15:36

nickel t'es un as

je te remercie vraiment j'ai bien cru j'allais jamais y arriver.

Bonne journée

par sylvaing26 » 08 nov. 2008, 15:29

]<?php  
mysql_connect('localhost', 'root') OR die('Erreur de connexion à la base');  
mysql_select_db('lacavedezfilles') OR die('Erreur de sélection de la base');  
$id = $_GET['id'];  
$requete = mysql_query("SELECT * FROM boutique_produits WHERE id = '$id'") or die ("Erreur de la requête MySQL");  
mysql_close();  
while($resultat = mysql_fetch_array($requete))  
{  
$photo = $resultat['photo']; 
echo "<img src=$photo>";  

}  
?>

par matye21 » 08 nov. 2008, 15:25

oui

Avec ton code qd je tape ...?id=1001
J'ai le nom de mon article qui s'affiche
mais pour la photo : erreur de requete mysql

Alors qu'avant meme sans taper..?id=1001

j'avais toutes les photos qui s'affichaient

par sylvaing26 » 08 nov. 2008, 15:21

D'acc mais lorsque tu test est ce que dans ta page tu passe la parametre id ?
Du genre tapage.php?id=1003

par Invité » 08 nov. 2008, 15:19

au fait line 198 c'est
$id = $_GET['id'];

par matye21 » 08 nov. 2008, 15:17

Notice: Undefined index: id in c:\program files\easyphp1-8\www\xxxxxxx\champagnes.php on line 198
Erreur de la requête Mysql
Je pense que cela peut t'aider et peut être y-a-t-il une erreur dans ma base de données. ex: index

ps:j'espère que j'ai bien mis en page la "Notice"

par sylvaing26 » 08 nov. 2008, 15:05

]<?php 
mysql_connect('localhost', 'root') OR die('Erreur de connexion à la base'); 
mysql_select_db('lacavedezfilles') OR die('Erreur de sélection de la base'); 
$id = $_GET['id']; 
$requete = mysql_query('SELECT photo FROM boutique_produits WHERE id = $id') OR die('Erreur de la requête MySQL'); 
mysql_close(); 
while($resultat = mysql_fetch_array($requete)) 
{ 
$photo = $resultat['photo'];
echo "<img src=$photo>"; 

} 
?> 
et comme ca ?

par matye21 » 08 nov. 2008, 14:55

Meme en mettant ce code il me dit qu'il y a une erreur

par sylvaing26 » 08 nov. 2008, 14:51

a oui kel abruti c'est
$id = $_GET['id'];
utlise le bouton phjp pour poster ton code !

par matye21 » 08 nov. 2008, 14:40

Bon j'ai une table : boutique_produits
avec les champs suivants:
id
isbn
titre
photo
prix_ht
prix_ttc
commentaires
producteur

Voici le code

[/php]<?php
mysql_connect('localhost', 'root') OR die('Erreur de connexion à la base');
mysql_select_db('lacavedezfilles') OR die('Erreur de sélection de la base');
$id= $_GET['photo'];
$requete = mysql_query('SELECT photo FROM boutique_produits WHERE id = "$photo"') OR die('Erreur de la requête MySQL');
mysql_close();
while($resultat = mysql_fetch_array($requete))
{

echo "<img src=".$resultat['photo'].">";

}
?>

J'ai des erreurs à la ligne mis en gras

par sylvaing26 » 08 nov. 2008, 14:31

Oh que oui bien bien plus simple tu peut me faire confiance ca evitera de jongler entre tes deux tables et de recuperer directement en une seule requete tes infos d'article

par matye21 » 08 nov. 2008, 14:29

Pour simplifier les choses je vais supprimer ma base up_name
et remettre un champ photo avec un lien dans ma base boutique_produits

Ca sera plus simple ?

par sylvaing26 » 08 nov. 2008, 14:29

J'osait pas faire la remarque
Je savais que le tonnère allait fraper Zeus voit tout d'ou il est ! 8-)