Erreur de code en PHP

Bonjour,

j'ai du code en PHP et j'ai une erreur qui s'est glissé mais alors où cela ?
Pöuvez vous m'aider (ce serait gentil) ?

code PHP

<?php
/////////////////////////////////////////////////////////
//affichage des photos des acteurs/actrices //
/////////////////////////////////////////////////////////

echo "Voici le casting des personnages \n";
echo "Il y a ".$j." acteurs/actrices dans le film "."'".$row_jeu_['ORIGINALTITLE']."' \n";

$NOM = array();
$compteur =0;
$i=0;
$compt=0;
$debutEXTENSION=".";
$image = array ();
$compteur=0;
// on ouvre notre dossier contenant TOUTES les photos
$RepertoireNOM = opendir("F:\wamp\www\VALM\ADULTES\Adultes sur CD-ROM\");

// $position = strpos($NOM[$k],$debutEXTENSION);
// $image[] = substr($NOM[$k],0,$debutEXTENSION);

while($Nom_ACTORS = readdir($RepertoireNOM))
{
if ($Nom_ACTORS != '.' && $Nom_ACTORS != '..' && $Nom_ACTORS != 'index.php')
{
// on stocke le nom des fichiers des photos dans un tableau
$ACTORS=(substr($ACTORS,0,0));
$tableau[$compt] = $Nom_ACTORS ;
}
$compt++;
}
closedir($RepertoireNOM);

$nbcol = 6;
// on compte le nombre de photos qui se trouve dans le dossier
$nbpics = count($tableau);

// si on a au moins une photo, on les affiche toutes
if ($nbpics != 0)
{
echo '<table>';
for ($i=0; $i<$maxVIRGULE; $i++)
{
if ($ACTORSpresents[$i]==$tableau[$compteur])
{
if($i%$nbcol==0) echo '<tr>';
echo '<img src="/monsitevideo/images/ACTRICES/',$ACTORSpresents[$i] ,'"/><echo $tableau[$compteur]/';
$compteur=0;
if($i%$nbcol==($nbcol-1)) echo '</tr>';
}
$compteur++;
}
echo '</table>';
}
else echo 'Aucune image à afficher';
?>

5 réponses

  1. Ben oui, c'est normal.
    Je ne sais pas où vous avez été pêcher ce code, mais il est cousu d'erreurs.

    146 - Si les variables ne sont pas instanciées, ça ne va pas fonctionner.

    156 - Après pour le OpenDir, le chemin disque que vous lui donnez ne semble pas exister sur votre machine alors bon...

    162 - c'est du à l'échec du opendir

    172 - idem

    et enfin en 176, $tableau n'est pas instanciée avant non plus donc crash.

    Vous devriez repartir de zéro à mon avis.
    1
    1. Ici :

      $RepertoireNOM = opendir("F:\wamp\www\VALM\ADULTES\Adultes sur CD-ROM\");
      \" c'est le caractère " , pas un \ suivit de "

      Mettez
      $RepertoireNOM = opendir("F:/wamp/www/VALM\ADULTES/Adultes sur CD-ROM/");

      Ca doit fonctionner aussi.

      Et utilisez plutôt la fonction !i_dir() que les tests sur . et ..
      Zébulon
      0
      1. le probleme est toujours present.
        J'ai publie de vous donner le type d'erreur :

        Parse error: syntax error, unexpected ']', expecting T_STRING or T_VARIABLE or T_NUM_STRING in F:\wamp\www\VALM\pages\Adultes CD\OnlyFile_ADULTE.php on line 159

        la ligne 159 est celle-ci :

        // $image[] = substr($NOM[$k],0,$debutEXTENSION);

        a moins que l'erreur se trouve bien avant cette ligne!!!
        0
        1. Oui elle se trouve avant, forcément, c'est une ligne avec un commentaire...
          0
        2. $k ça correspond a quoi
          0
        3. Aucune idée, dans l'exemple que vous donnez la ligne 159 n'existe pas... mais ça ressemble furieusement à une erreur de syntaxe, côte mal fermée ou point virgule manquant
          0
        4. peux tu poster ton fichier (complet) sur cijoint ?
          0
        5. voici le code complet en php :

          <?php require_once('../../Connections/Bdd_videos_et_audios.php'); ?>
          <?php
          mysql_select_db($database_Bdd_videos_et_audios, $Bdd_videos_et_audios);
          $query_ADULTES_CD_only = "SELECT * FROM adultes_cd";
          $ADULTES_CD_only = mysql_query($query_ADULTES_CD_only, $Bdd_videos_et_audios) or die(mysql_error());
          $row_ADULTES_CD_only = mysql_fetch_assoc($ADULTES_CD_only);
          $totalRows_ADULTES_CD_only = mysql_num_rows($ADULTES_CD_only);
          ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
          <html xmlns="http://www.w3.org/1999/xhtml">
          <head>
          <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
          <title>Document sans titre</title>
          <style type="text/css">
          <!--
          body,td,th {
          color: #000000;
          }
          body {
          background-color: #00FF00;
          }
          .Style1 {font-size: 36px}
          .Style3 {
          font-size: 24px;
          font-weight: bold;
          }
          .Style5 {
          font-size: 16px;
          font-weight: bold;
          }
          -->
          </style></head>

          <body>
          <div align="center" class="Style1"><?php echo $row_ADULTES_CD_only['ORIGINALTITLE']; ?></div>
          <div align="center"></div>
          <table width="100%" border="1">
          <tr>
          <td rowspan="15"><div align="center"><img src="..\..\VALM\images\ADULTES\Adultes sur CD-ROM\<?php echo $row_ADULTES_CD_only['PICTURENAME']; ?>" width="200" height="250" /></div></td>
          <td rowspan="15"><div align="center"><img src="..\..\VALM\images\ADULTES\Adultes sur CD-ROM\verso_\<?php echo $row_ADULTES_CD_only['PICTURENAME']; ?>" width="200" height="250" /></div></td>
          <td class="Style3"><div align="center" class="Style5">Titres</div></td>
          <td><?php echo $row_ADULTES_CD_only['ORIGINALTITLE']; ?></td>
          </tr>
          <tr>
          <td class="Style3"><div align="center" class="Style5">Catégorie</div></td>
          <td><strong><?php echo $row_ADULTES_CD_only['CATEGORY']; ?></strong></td>
          </tr>
          <tr>
          <td><div align="center" class="Style5">Réalisateur</div></td>
          <td><?php echo $row_ADULTES_CD_only['DIRECTOR']; ?></td>
          </tr>
          <tr>
          <td><div align="center" class="Style5"><strong>Producteur</strong></div></td>
          <td><?php echo $row_ADULTES_CD_only['PRODUCER']; ?></td>
          </tr>
          <tr>
          <td class="Style3"><div align="center" class="Style5">Pays</div></td>
          <td><?php echo $row_ADULTES_CD_only['COUNTRY']; ?></td>
          </tr>
          <tr>
          <td class="Style3"><div align="center" class="Style5">Acteurs/Actrices</div></td>
          <td><?php echo $row_ADULTES_CD_only['ACTORS']; ?></td>
          </tr>
          <tr>
          <td><div align="center"></div></td>
          <td> </td>
          </tr>
          <tr>
          <td><div align="center"></div></td>
          <td> </td>
          </tr>
          <tr>
          <td><div align="center"></div></td>
          <td> </td>
          </tr>
          <tr>
          <td><div align="center"></div></td>
          <td> </td>
          </tr>
          <tr>
          <td><div align="center"></div></td>
          <td> </td>
          </tr>
          <tr>
          <td><div align="center"></div></td>
          <td> </td>
          </tr>
          <tr>
          <td><div align="center"></div></td>
          <td> </td>
          </tr>
          <tr>
          <td><div align="center"></div></td>
          <td> </td>
          </tr>
          <tr>
          <td><div align="center"></div></td>
          <td> </td>
          </tr>
          </table>
          <br />
          <?php
          ////////////////////////////////////////////////
          ///////////////////////////////////
          // affichages des noms dans la cellule de mon tableau acteurs/actrices //
          ////////////////////////////////////////////////
          ///////////////////////////////////
          $ACTORS=$row_ADULTES_CD_only['ACTORS'];
          $longueur_ACTORS =strlen($ACTORS);

          $ACTORSpresents= array();
          $ACTORS_avec_jpg=array();
          $i=0;
          $j=0;
          $maxVIRGULE=0;
          $maxj=0;
          $maxVIRGULE = count((explode(",",$ACTORS)));
          //affiche tous les acteurs/actrices sans leur extension
          if ($longueur_ACTORS>0)
          {
          while($i<$longueur_ACTORS)
          {
          if (isset($ACTORS))
          {
          if (explode(",",$ACTORS))
          {
          if ($maxVIRGULE != $j)
          {
          $ACTORSpresents=(explode(",",$ACTORS));
          echo $ACTORSpresents[$j]."-";
          $j++;
          }

          }
          $i++;
          }
          }
          }
          ?>

          <?php
          //////////////////////////////////////////////
          //affichage des photos des acteurs/actrices //
          //////////////////////////////////////////////

          echo "Voici le casting des personnages \n";
          echo "Il y a ".$j." acteurs/actrices dans le film "."'".$row_jeu_['ORIGINALTITLE']."' \n";

          $NOM = array();
          $compteur =0;
          $i=0;
          $compt=0;
          $debutEXTENSION=".";
          $image = array ();
          $compteur=0;
          // on ouvre notre dossier contenant TOUTES les photos
          $RepertoireNOM = opendir("F:\wamp\www\VALM\ADULTES\Adultes sur CD-ROM\");

          // $position = strpos($NOM[$k],$debutEXTENSION);
          // $image[] = substr($NOM[$k],0,$debutEXTENSION);

          while($Nom_ACTORS = readdir($RepertoireNOM))
          {
          if ($Nom_ACTORS != '.' && $Nom_ACTORS != '..' && $Nom_ACTORS != 'index.php')
          {
          // on stocke le nom des fichiers des photos dans un tableau
          $ACTORS=(substr($ACTORS,0,0));
          $tableau[$compt] = $Nom_ACTORS ;
          }
          $compt++;
          }
          closedir($RepertoireNOM);

          $nbcol = 6;
          // on compte le nombre de photos qui se trouve dans le dossier
          $nbpics = count($tableau);

          // si on a au moins une photo, on les affiche toutes
          if ($nbpics != 0)
          {
          echo '<table>';
          for ($i=0; $i<$maxVIRGULE; $i++)
          {
          if ($ACTORSpresents[$i]==$tableau[$compteur])
          {
          if($i%$nbcol==0) echo '<tr>';
          echo '<img src="/monsitevideo/images/ACTRICES/',$ACTORSpresents[$i] ,'"/><echo $tableau[$compteur]/';
          $compteur=0;
          if($i%$nbcol==($nbcol-1)) echo '</tr>';
          }
          $compteur++;
          }
          echo '</table>';
          }
          else echo 'Aucune image à afficher';
          ?>

          <p><u>Impression de la jaquette </u></p>
          <p><img src="..\..\VALM\images\ADULTES\Adultes sur CD-ROM\<?php echo $row_ADULTES_CD_only['PICTURENAME']; ?>" width="86" height="113" /><img src="..\..\VALM\images\ADULTES\Adultes sur CD-ROM\verso_\<?php echo $row_ADULTES_CD_only['PICTURENAME']; ?>" width="86" height="113" /></p>
          </body>
          </html>
          <?php
          mysql_free_result($ADULTES_CD_only);
          ?>
          0
      2. C'est fait.

        Excusez moi pour le scipt que j'ai oublie de corriger...
        0
        1. et ça marche ?
          0
      3. je n'ai que corriger cette ligne :

        $RepertoireNOM = opendir("F:\wamp\www\VALM\ADULTES\Adultes sur CD-ROM\");

        en

        $RepertoireNOM = opendir("F:/www/VALM/images/ADULTES/Adultes sur CD-ROM/");

        mais cela fonctionne qu'à 80% du script. Pas tout helas.

        J'ai eu d'autres erreur comme celles-ci :

        Undefined variable: row_jeu_ in F:\wamp\www\VALM\pages\Adultes CD\OnlyFile_ADULTE.php on line 146

        Warning: opendir(F:/www/VALM/images/ADULTES/Adultes sur CD-ROM/,F:/www/VALM/images/ADULTES/Adultes sur CD-ROM/) [function.opendir]: Le chemin d'accès spécifié est introuvable. (code: 3) in F:\wamp\www\VALM\pages\Adultes CD\OnlyFile_ADULTE.php on line 156
        Call Stack

        Warning: opendir(F:/www/VALM/images/ADULTES/Adultes sur CD-ROM/) [function.opendir]: failed to open dir: No such file or directory in F:\wamp\www\VALM\pages\Adultes CD\OnlyFile_ADULTE.php on line 156

        Warning: readdir() expects parameter 1 to be resource, boolean given in F:\wamp\www\VALM\pages\Adultes CD\OnlyFile_ADULTE.php on line 162

        Warning: closedir() expects parameter 1 to be resource, boolean given in F:\wamp\www\VALM\pages\Adultes CD\OnlyFile_ADULTE.php on line 172

        Notice: Undefined variable: tableau in F:\wamp\www\VALM\pages\Adultes CD\OnlyFile_ADULTE.php on line 176

        la ligne 146 est :
        echo "Il y a ".$j." acteurs/actrices dans le film "."'".$row_jeu_['ORIGINALTITLE']."' \n";

        la ligne 156 est :
        $RepertoireNOM = opendir("F:/www/VALM/images/ADULTES/Adultes sur CD-ROM/");

        la ligne 162 est :
        while($Nom_ACTORS = readdir($RepertoireNOM))

        la ligne 172 est :
        closedir($RepertoireNOM);

        la ligne 176 est :
        $nbpics = count($tableau);
        0