Problème avec un code PHP - PHP - Programmation
Marsh Posté le 30-12-2004 à 15:31:06
Quand tu dit que sl_acteurs, sl_persos et sl_series sont des bases de données, tu veux dires des tables ?
Tu pourrais réexpliquer ce que tu veux à l'arriver ?
Marsh Posté le 30-12-2004 à 15:41:00
Si tu veux l'ensemble des rôles joués par chaque acteur, tu pourrais avoir cela :
"Select *
From Acteur a
Left Outer JOIN persos p on a.id_acteur=p.acteur
Where a.idacteur=".$row['id_acteur'];
Et la tu as pour un acteur, l'ensemble des personnages qu'il a joué.
Marsh Posté le 30-12-2004 à 14:37:18
Bonjour,
en fait, j'ai un problème avec un code PHP.
Pour vous expliquer, je préfère vous mettre le code tel qu'il est sur la page.
<?
include "mysql-connect.php";
$sql = "SELECT * FROM acteurs WHERE id_acteur='$id_acteur' ORDER BY id_acteur ASC";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
while($row = mysql_fetch_array($req)) {
$sql2 = "SELECT * FROM persos WHERE acteur=".$row['id_acteur'];
$req2 = mysql_query($sql2) or die('Erreur SQL !<br>'.$sql2.'<br>'.mysql_error());
$row2 = mysql_fetch_array($req2);
$sql3 = "SELECT * FROM series WHERE multipass=".$row2['multipass'];
$req3 = mysql_query($sql3) or die('Erreur SQL !<br>'.$sql3.'<br>'.mysql_error());
while($row3 = mysql_fetch_array($req3)) {
echo '<font face="Tahoma" size="2" color="#003366">> '.$row3['annee_creation'].' : <b>'.$row2['nom_perso'].'</b> ['.$row3['nom_serie'].']<br>
<i>'.$row2['descriptif'].'</i><br>
> <a href="../series/fiche.php?multipass='.$row3['multipass'].'">Plus d\'informations sur la série <b>'.$row3['nom_serie'].'</b> ('.$row3['titre_vo'].')</a>.</font><br><br>';}
}
?>
Pour indication :
sl_acteurs > base de donnée des acteurs
sl_persos > base de donnée des personnages (en relation avec sl_acteurs, chaque acteur pouvant jouer un ou plusieurs personnages)
sl_series > base de donnée des séries (en relation avec sl_persos, chaque perso étant en relation avec une série)
En fait, le but de ce code est de donner des indication sur les différentes personnages joués par un acteur (le code se situant sur la page fiche_acteur.php?id_acteur=$id_acteur).
Mais le problème, c'est qu'il ne donne que le premier rôle de l'acteur. En effet, le sql2 ne prend que le premier perso joué par l'acteur (désigné par sql1) alors que je voudrai qu'il liste l'ensemble des persos joués par sql1 (il devrait donc avoir plusieurs sql2 choisis).
Qqn pourrait-il me dire comment arranger le code pour qu'il fonctionne correctement ?
Merci bcp de votre aide!
@+