Probleme d'affichage d'image

Résolu/Fermé
lolo590771 Messages postés 84 Date d'inscription lundi 10 septembre 2012 Statut Membre Dernière intervention 10 juillet 2014 - 26 févr. 2013 à 15:46
lolo590771 Messages postés 84 Date d'inscription lundi 10 septembre 2012 Statut Membre Dernière intervention 10 juillet 2014 - 2 mars 2013 à 13:28
Bonjour,

J'ai un problème. Dans mon code, j'aimerai pouvoir afficher les acteurs/actrices (avec leur prénom et nom en dessous de chaque image) sur un certain nombre de colone que j'ai appelé "nbcol" dans le code PHP.
le souci c'est que les images n'apparaissent pas .
en finalité : pas d'image apparente , ni de nom et prenom en dessous de chaque image


voici le code :

<?php
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
//// affichage des noms dans la cellule de mon tableau acteurs/actrices /////
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////

$ACTORS=$row_Jeux_FILMS_X_sur_CDROM['ACTORS'];
$longueur_ACTORS =strlen($ACTORS);
$ACTORSpresents= 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]."-";
$maxj=$j;
$j++;
}
}
$i++;
}
}
}
?>

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

$NOM = array();
$compteur =0;
$i=0;
$compt=0;
$debutEXTENSION=".";
$image = array ();
$compteur=0;
$comptage=0;
$imageACTORS_sans_extension = array();

// répertoire des images
$dir="../../ADULTE sur CD/Acteurs et Actrices/";
$RepertoireNOM = opendir($dir); // ouverture du repertoire

////////////////////////////////////////////
//// AFFICHAGE des acteurs et actrices /////
////////////////////////////////////////////
while($Nom_ACTORS = readdir($RepertoireNOM))
{
if (!is_file($Nom_ACTORS)&&($nom_ACTORS != "index.php"))
{
//on stocke le nom des fichiers des photos dans un tableau
$tableau[$compt] = $Nom_ACTORS;
// On a stocké un nom, donc on incrémente maintenant
$compt++;
}
}

closedir($RepertoireNOM);

// Ensuite pourquoi compter les photos ? On sait qu'on a $compt //
if ($compt>0)
{
echo '<table>';
// et on fait une boucle d'affichage
for($i=0;$i<$compt;$i++)
{
echo $tableau[$i]."</br>";
}
}

if ($compt>0)
{
$nbcol = 8; // nombre de colonnes (pour les images.... - On compte le nombre de photos qui se trouve dans le dossier
$nbpics = count($tableau);
$dir=opendir($RepertoireNOM);

if ($ACTORS!="")
{
$ACTORSpresents=explode(", ",", ".$ACTORS);
echo "CASTING :<br/>Il y a ".(sizeof($ACTORSpresents)-1)." Acteurs/Actrices";
echo "<table>";

$nbcol=7;
for($i=1;$i<sizeof($ACTORSpresents);$i++)
{
if($i%$nbcol==1)
{
echo "<tr>";
}
$extension="";
if(is_file($RepertoireNOM.$ACTORSpresents[$i].".jpg")){$extension=".jpg";}
elseif(is_file($RepertoireNOM.$ACTORSpresents[$i].".png")){$extension=".png";}
elseif(is_file($RepertoireNOM.$ACTORSpresents[$i].".jpeg")){$extension=".jpeg";}
elseif(is_file($RepertoireNOM.$ACTORSpresents[$i].".gif")){$extension=".gif";}
else{$extension="";}
echo "<td>";

if($extension!="")
{
echo "<img src='".$rep.$ACTORSpresents[$i].$extension."' width=150 height=180>";
}
else
{
echo "Aucune photo pour<br/>";
}
echo "<br/>".$ACTORSpresents[$i]."</td>";


if($i%$nbcol==0)
{
echo "</tr>";
}
}
echo "</table>";
}

//si on a au moins une photo, on les affiche toutes
if ($nbpics != 0)
{
echo '<table>';
}


while ($comptage =! $maxj)
{
echo $ACTORSpresents[$i]."</br>";
echo $tableau[$comptage]."</br>";
if (($ACTORSpresents[$i]) == ($tableau[$compteur]))
{
if ($i%$nbcol != 0)
{
echo '<tr>'
};
{
echo '<img src="../../ADULTE sur CD/Acteurs et Actrices/'.$tableau[$compteur].'"/>';
echo $tableau[$compteur]; // pour voir si il est ok
$comptage=0;
$i++;
}
if($i%$nbcol==($nbcol-1))
{
echo '</tr>';
}
$compteur++;
}
$comptage++;
}

echo '</table>';
}
else
echo 'Aucune image à afficher';
?>


lorsque j'execute ce code, une erreur apparait a la ligne 262 :

Parse error: syntax error, unexpected '}', expecting ',' or ';' in E:\wamp\www\VALM\images\ADULTES sur CD\Pages\ADULTES\OnlyFile_ADULTES_films_sur_CD.php on line 260

voici la ligne 260 :
{echo '<tr>'};


A voir également:

5 réponses

ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 566
26 févr. 2013 à 15:52
le ; doit être à la fin de ta ligne echo '<tr>' :

echo '<tr>';


par contre la ligne d'après il va manquer un truc, soit un if, soit un else, mais y'a un truc qui va merder.
0
lolo590771 Messages postés 84 Date d'inscription lundi 10 septembre 2012 Statut Membre Dernière intervention 10 juillet 2014 1
26 févr. 2013 à 16:20
J'ai modifie legerement le code , tout va bien , plus d'erreur. Mais j'ai TOUTES le images qui apparaissent :

voici le code :

voici mon code :

<?php
////////////////////////////////////////////////
/////////
////affichage des photos des acteurs/actrices ////
////////////////////////////////////////////////
////////
$ACTORS=$row_Only_sur_CD['ACTORS'];
$longueur_ACTORS =strlen($ACTORS);
$ACTORSpresents= array();

echo 'voici la liste des acteurs/actrices (image et nom):'.$ACTORS;
//$Nom_ACTORS="";

$compt=0;
$tableau=array();
// répertoire des images
$dir="../../Acteurs et Actrices/";

$RepertoireNOM=opendir($dir); // ouverture du repertoire

while($Nom_ACTORS = readdir($RepertoireNOM))
{
if (!is_dir($Nom_ACTORS)&&($Nom_ACTORS != "index.php"))
{
$tableau[$compt] = substr($Nom_ACTORS,0,strpos($Nom_ACTORS,"."));
//on stocke le nom des fichiers des photos dans un tableau
$tableau[$compt] = $Nom_ACTORS;
//echo $tableau[$compt];
// On a stocké un nom, donc on incrémente maintenant
$compt++;
}
}

/* Ensuite pourquoi compter les photos ? On sait qu'on en a $compt */
if ($compt>0)
{
//et on fait une boucle d'affichage
for($i=0;$i<$compt;$i++)
{
//echo $tableau[$i]."<br/>";
}
}
?>

<?php
/////////////
/// TEST ///
////////////
while($Nom_ACTORS = readdir($RepertoireNOM))
//while (false!==($Nom_ACTORS = readdir($RepertoireNOM)))
{
if (is_file($dir.$Nom_ACTORS)&&($Nom_ACTORS
!= "index.php"))
{
//on stocke le nom des fichiers des photos dans un tableau
$tableau[$compt] = $Nom_ACTORS;
// On a stocké un nom, donc on incrémente maintenant
$compt++;
}
}
?>

<?php
//si on a au moins une photo, on les affiche toutes
if ($compt> 0)
{
echo '<table>';
// et la suite en reprenant la boucle for...
// en supposant que tu veux afficher les photos sur 6 colonnes
$nbcol = 6;
for($i=0;$i<$compt;$i++)
{
if($i%$nbcol == 0) echo '<tr>';
//echo '<td><img src="'.$tableau[$i]."'></td>';// ne pas enlever les //
echo '<td><img src="'.$dir.$tableau[$i].'">'.$Nom_ACTORS.'</
td>';

if($i%$nbcol == 5) echo '</tr>';
}
echo "</table>";
}
else echo 'Aucune image à afficher';
?>
0
ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 566
26 févr. 2013 à 16:36
là comme ça je vais avoir du mal à trouver sans pouvoir tester...

il doit y avoir une condition imprécise ou une boucle à rajouter
0
lolo590771 Messages postés 84 Date d'inscription lundi 10 septembre 2012 Statut Membre Dernière intervention 10 juillet 2014 1
Modifié par lolo590771 le 26/02/2013 à 16:40
Tu te crees un dossier et tu mets des images quelconque avec le nom et le prenom......tu pourrais pas essayer....cela m'aiderai beaucoup
0
ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 566
26 févr. 2013 à 16:49
Si j'en crois les commentaires, c'est ce qui est attendu par le code.
0
lolo590771 Messages postés 84 Date d'inscription lundi 10 septembre 2012 Statut Membre Dernière intervention 10 juillet 2014 1
26 févr. 2013 à 19:24
non, les commentaires étaient pour moi. C'étaient mes remarques, mes infos personnelles.
0
lolo590771 Messages postés 84 Date d'inscription lundi 10 septembre 2012 Statut Membre Dernière intervention 10 juillet 2014 1
28 févr. 2013 à 23:28
J'ai pas d'erreur dans mon code.
Tous les noms de mes acteurs apparaissent avec "Aucune photo pour" le nom correspondant mais sans image et pourtant les images sont dans le bon dossier, donc le bon répertoire.

Pourriez vous m'aider a trouver cette erreur.
__________
voici le code :

<?php
////////////////////////////////////////////////
/////////////////////////////
////////////////////////////////////////////////
/////////////////////////////
//// affichage des noms dans la cellule de mon tableau acteurs/actrices /////
////////////////////////////////////////////////
/////////////////////////////
////////////////////////////////////////////////
/////////////////////////////
$Nom_ACTORS="";
$ACTORS=$row_Only_sur_CD['ACTORS'];
$longueur_ACTORS =strlen($ACTORS);
$ACTORSpresents= 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]."-";
$maxj=$j;
$j++;
}
}
$i++;
}
}
}
?>

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

$NOM = array();
$compteur =0;
$i=0;
$compt=0;
$debutEXTENSION=".";
$image = array ();
$compteur=0;
$comptage=0;
$imageACTORS_sans_extension = array();

// répertoire des images
$dir="../../../ADULTES sur CD/Acteurs et Actrices/";
$RepertoireNOM = opendir($dir); // ouverture du repertoire

////////////////////////////////////////////
//// AFFICHAGE des acteurs et actrices /////
////////////////////////////////////////////
while($Nom_ACTORS = readdir($RepertoireNOM))
{
if (!is_file($Nom_ACTORS)&&($Nom_ACTORS != "index.php"))
{
//on stocke le nom des fichiers des photos dans un tableau
$tableau[$compt] = $Nom_ACTORS;
// On a stocké un nom, donc on incrémente maintenant
$compt++;
}
}

closedir($RepertoireNOM);

// Ensuite pourquoi compter les photos ? On sait qu'on a $compt //
if ($compt>0)
{
echo '<table>';
// et on fait une boucle d'affichage
for($i=0;$i<$compt;$i++)
{
//echo $tableau[$i]."</br>";
}
}

if ($compt>0)
{
$nbcol = 8; // nombre de colonnes (pour les images.... - On compte le nombre de photos qui se trouve dans le dossier
$nbpics = count($tableau);
//$dir=opendir($RepertoireNOM);

if ($ACTORS!="")
{
$ACTORSpresents=explode(", ",", ".$ACTORS);
echo "CASTING :<br/>Il y a ".(sizeof($ACTORSpresents)-1)." Acteurs/Actrices";
echo "<table>";

$nbcol=7;
for($i=1;$i<sizeof($ACTORSpresents);$i++)
{
if($i%$nbcol==1)
{
echo "<tr>";
}
$extension="";
if(is_file($RepertoireNOM.$ACTORSpresents[$i].".
jpg")){$extension=".jpg";}
elseif(is_file($RepertoireNOM.$ACTORSpresents[$i
].".png")){$extension=".png";}
elseif(is_file($RepertoireNOM.$ACTORSpresents[$i
].".jpeg")){$extension=".jpeg";}
elseif(is_file($RepertoireNOM.$ACTORSpresents[$i
].".gif")){$extension=".gif";}
else{$extension="";}
echo "<td>";

if($extension!="")
{
echo "<img src='".$rep.$ACTORSpresents[$i].$extension."' width=150 height=180>";
}
else
{
echo "Aucune photo pour<br/>";
}
echo "<br/>".$ACTORSpresents[$i]."</td>";

if($i%$nbcol==0)
{
echo "</tr>";
}
}
echo "</table>";
}

//si on a au moins une photo, on les affiche toutes
if ($nbpics != 0)
{
echo '<table>';
}


while ($comptage =! $maxj)
{
echo $ACTORSpresents[$i]."</br>";
echo $tableau[$comptage]."</br>";
if (($ACTORSpresents[$i]) == ($tableau[$compteur]))
{
if ($i%$nbcol != 0)
{echo '<tr>';}
{
echo '<img src="../../ADULTES sur CD/Acteurs et Actrices/'.$tableau[$compteur].'"/>';
echo $tableau[$compteur]; // pour voir si il est ok
$comptage=0;
$i++;
}
if($i%$nbcol==($nbcol-1))
{
echo '</tr>';
}
$compteur++;
}
$comptage++;
}

echo '</table>';
}
else
echo 'Aucune image à afficher';
?>
0
ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 566
Modifié par ThEBiShOp le 1/03/2013 à 08:46
vers le milieu de ton code tu as ça :

if(is_file($RepertoireNOM.$ACTORSpresents[$i].".  
jpg")){$extension=".jpg";}  


tu fais un saut de ligne au milieu de ta chaine de caractère censée vérifier la présence des images, y'a des chances que ça vienne de là.
y'a d'autres sauts de ligne pas très catholiques par ci par là.

D'autre part, un code aussi long, comme ça, paf, c'est imbuvable, essaye au minimum d'utiliser la balise code et au mieux, utilise un site externe qui va colorer le code et donner des numéros de ligne.

Je t'ai réindenté ton code, tu peux le trouver là :
https://pastebin.com/HAnr1tp3

la ligne dont je parlais au début est la ligne 104, et les suivantes étaient aussi coupées par un saut de ligne (même si je pense que c'était moins problématique pour les suivantes)
0
lolo590771 Messages postés 84 Date d'inscription lundi 10 septembre 2012 Statut Membre Dernière intervention 10 juillet 2014 1
Modifié par lolo590771 le 1/03/2013 à 11:36
Même si tu dis et tu crois que les lignes sont passes à la ligne. Ceci n'est pas ma faute. C'est le fait que lorsque je fait un copier/coller de mon code (j'utilise Dreamweaver 8, logiciel permettant de créer un site) pour le mettre ici, le saut de ligne se fait tout seul vu que la largeur de l'emplacement du code est trop ici sur CCM (Comment Ca Marche). D'où le saut de ligne....lol

Donc comme je le disais dans mon poste du 28 février 2013, IL n'y A AUCUNE ERREUR DE CODE sauf que le seul soucis, c'est que les images ne s'affichent pas . A la place, le code met "aucune erreur de code" alors que les images sont bien présentes dans mon dossier.
Moi, tout ce que je veux, c'est qu'elles apparaissent ces images.

tu peux voir un aperçu de ce qui apparait sur mon ecran :

https://www.casimages.com/i/130301112413331327.jpg.html

https://www.casimages.com/i/130301113629767904.jpg.html
0
ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 566
1 mars 2013 à 11:42
Et bien justement, le fait d'utiliser un site comme pastebin permet d'éviter les quiproquo, vu que ce forum est vraiment nullissime pour communiquer du code.

si tu essayes de remplacer $RepertoireNOM par $dir, ça donne quoi ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lolo590771 Messages postés 84 Date d'inscription lundi 10 septembre 2012 Statut Membre Dernière intervention 10 juillet 2014 1
2 mars 2013 à 13:28
j'obtiens ce que je veux. merci ThEBiShOp
0