Erreur de artiste.php

Bonjour,
Je suis en train de creer un site de musiques, et enfaite dans la page artiste.php j'ai rencontré un probleme, quand j'ouvre la page http://topmusic.free-hosting.fr/artiste.php?id=1, il affiche une message d'erreur:

Parse error: syntax error, unexpected $end in /var/www/virtual/topmusic.free-hosting.fr/htdocs/artiste.php on line 54

En, faite je veux sur la page ajout_artiste.php, ajouter des artistes et dans la page artiste.php recuperer les infos a part ca afficher tous les titres des clips concerné quand je rajoute, et a la fin afficher tous les concerts des artistes concerné que je rajoute, j'ai beaucoup cherché l'erreur mais je ne trouve pas, et donc je fais appelle a vous, si vous pouvez m'aider a trouver l'erreur ce serait jentille de votre part.
Pour cela je vous envoye le code de la page artiste.php

<?php

if(!isset($_GET['id']))
{
header("Location: index.php");
}
elseif(!is_numeric($_GET['id']))
{
header("Location: index.php");
}
else
{include("./includes/haut.php");
?>

<div id="artiste">
<?php
mysql_connect("", "", "");
mysql_select_db("");
?>
<p><?php $requete="SELECT * FROM artiste WHERE ID='".$_GET['id']."'";
$result=mysql_query($requete); $artiste=mysql_fetch_array($result);
echo "Nom : ".$artiste['nom']." photo : ".$artiste['photo']." Biographie : ".$artiste['biographie']; ?></p>
</div>

<div id="clips">
<p><?php $requete="SELECT * FROM clips WHERE ID_nom='".$artiste['nom']."' ORDER BY id DESC";
while ($donnees = mysql_fetch_array($retour))
{
$selection_clips = mysql_query("SELECT * FROM `clip` WHERE artiste = '".$nom."'");
while($affiche_clips = mysql_fetch_array($selection_clips))

$result=mysql_query($requete); $clip=mysql_fetch_array($result); ?></p>
</div>

<div id="concert">
<p><?php
$retour = mysql_query('SELECT * FROM concert ORDER BY id DESC');
while ($donnees = mysql_fetch_array($retour))
{
$selection_date_de_concert = mysql_query("SELECT * FROM `concert` WHERE artiste = '".$nom."'");
while($affiche_date_de_concert = mysql_fetch_array($selection_date_de_concert))
{
$date_de_concert = $affiche_date_de_concert['date'];
$id_de_concert = $affiche_date_de_concert['id'];

}

}
?></p>
</div>
<?php
}
include("./includes/bas.php");
?>

Je vous remercie par avance de votre aide.

16 réponses

  1. alors là je vois pas du tout d'où l'erreur vient... désoler, je vais reregarder ton code dans la soiré, et je post si je trouve...
    0
    1. et pour les guillemets simple autour de $nom_artiste ?
      0
      1. nn je ne crois pas, j'ai regardé plusieurs fois
        0
        1. alors là je vois pas trop... tu n'as pas fait d'érreurs dans un des champs ( id / ID_nom ) ou dans le nom de la table ( clips ) ?

          EDIT>> si $artiste['nom'] contient un chiffre, enlève les ' dans la requète autour de $nom_artiste
          0
          1. Essai comme ceci :

            $nom_artiste = $artiste['nom'];
            $retour = mysql_query("SELECT * FROM clips WHERE ID_nom='$nom_artiste' ORDER BY id DESC"); 
            while( $donnees = mysql_fetch_array($retour) ){
            
            0
            1. while ($donnees = mysql_fetch_array($retour))
              c'est ca la ligne 28

              desolé pour cet reponse tardive, j'avais quelque problemes.
              0
              1. tu peu préciser quelle est la ligne 28 dans ton code s'il te plait ?
                0
                1. maintenant il marque ca:

                  Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/virtual/topmusic.free-hosting.fr/htdocs/artiste.php on line 28
                  0
                  1. Donc, je dois remplacer le code par ca: ?
                    <?php
                    $requete="SELECT * FROM clips WHERE ID_nom='".$artiste['nom']."' ORDER BY id DESC";
                    $retour = mysql_query($requete);
                    while ($donnees = mysql_fetch_array($retour))

                    C'est ca?
                    0
                    1. Pour l"rreur, ça vient de là :

                      <?php $requete="SELECT * FROM clips WHERE ID_nom='".$artiste['nom']."' ORDER BY id DESC";
                      while ($donnees = mysql_fetch_array($retour)) 
                      


                      "$retour" n'existe pas donc forcément...

                      <?php 
                      $requete="SELECT * FROM clips WHERE ID_nom='".$artiste['nom']."' ORDER BY id DESC";
                      $retour = mysql_query($requete);
                      while ($donnees = mysql_fetch_array($retour)) 
                      
                      0
                      1. bonjour,

                        maintenant, ca marche, mais il marque aussi (apres la bio) ca:

                        Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/virtual/topmusic.free-hosting.fr/htdocs/artiste.php on line 27

                        et aussi j'ai ajouté un clip de cet artiste, mais pourquoi le titre n'est pas affiché?

                        Merci par avance,
                        0
                        1. il te manque un "}" à la fin de ton code (celui du else il me semble)
                          0