PHP

Résolu
cs_nino69 Messages postés 29 Date d'inscription mardi 19 avril 2005 Statut Membre Dernière intervention 8 juillet 2005 - 19 avril 2005 à 19:46
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 - 20 avril 2005 à 13:18
Bonjour, j'ai un problème avec mon script:

Ma requête:
$query "SELECT jet_clients.*, jet_photos.* FROM jet_clients LEFT JOIN jet_photos ON (jet_clients.id_clients jet_photos.id_clients) WHERE jet_photos.id_clients =" .$_SESSION["id_clients"]." ORDER BY num_affichage ASC LIMIT 0,5" ;

me permet de faire une jointure entre deux tables, la table d'un utilisateur et la table avec les photo de l'utilisateur.

Ensuite je veux récuprérer certaine valeur des deux table. les donnée de l'utilisateur, je les récupère avec succès. cependant les valeur représantant les nom des photos ne sont pas toutes récupérées (seulement le dernier nom est récupéré.) Comment faire pour récupérer toutes les photos ?

while ($row = mysql_fetch_array($result)) {

$nom = $row["nom"];
$prenom = $row["prenom"];
$sujet = $row["sujet"];



//$sujet = array();
$petite_photo = array();
$grande_photo = array();



for ($i=0;$i<5;$i++)
{
//$sujet[$i] = $row["sujet"];
$petite_photo[$i] = $row["petite_photo"];
$grande_photo[$i] = $row["grande_photo"];


}

}

Table photos:

CREATE TABLE `jet_photos` (
`id_photos` mediumint(8) NOT NULL auto_increment,
`id_clients` mediumint(8) NOT NULL default '0',
`sujet` varchar(50) NOT NULL default '',
`petite_photo` varchar(50) NOT NULL default '',
`grande_photo` varchar(50) NOT NULL default '',
`num_affichage` mediumint(8) NOT NULL default '0',
PRIMARY KEY (`id_photos`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=11 ;


--
-- Contenu de la table `jet_photos`
--


INSERT INTO `jet_photos` VALUES (6, 141, 'Votre réalisation', 'gp1p01.jpg', 'gp1g01.jpg', 1);
INSERT INTO `jet_photos` VALUES (7, 141, 'Votre réalisation', 'gp1p02.jpg', 'gp1g02.jpg', 2);
INSERT INTO `jet_photos` VALUES (8, 141, 'Votre réalisation', 'gp1p03.jpg', 'gp1g03.jpg', 3);
INSERT INTO `jet_photos` VALUES (9, 141, 'Votre réalisation', 'gp1p04.jpg', 'gp1g04.jpg', 4);
INSERT INTO `jet_photos` VALUES (10, 141, 'Votre réalisation', 'gp1p05.jpg', 'gp1g05.jpg', 5);

4 réponses

cs_nino69 Messages postés 29 Date d'inscription mardi 19 avril 2005 Statut Membre Dernière intervention 8 juillet 2005
20 avril 2005 à 12:50
Merci, en enlevant le for() cela fonctionne. Je ferai un effort lors d'une prochaine annonce pour mettre un titre un peut mieux.
3
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
20 avril 2005 à 13:00
Ok merci :-)



Valide une reponse que l'on ferme ce thread alors.
3
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
20 avril 2005 à 13:18
Autre chose au passage : il est inutile de passer par une variable
intermediaire avec les $_row[], tu peux utiliser ces derniers
directement...

Mais si tu tiens absolument a creer une variable intermediaire, utilise ca :

extract($row);

ca te facilitera la vie ;-)
3
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
20 avril 2005 à 09:33
Hello,



c'est quoi ce titre a deux balles lol ? Tu aurais pu faire un effort de description courte du probleme...



Si je comprends bien, plusieurs photos par utilisateur, d'ou la boucle for(), c'est ca ?



Vire le for () dans un premier temps :

gharde juste tes $row['petite_photo'] etc...

et affiche tout ca.
0
Rejoignez-nous