Probleme opendir,readdir,closedir

Résolu/Fermé
Utilisateur anonyme - Modifié par lolo590807 le 4/08/2011 à 12:36
 Utilisateur anonyme - 13 sept. 2011 à 11:22
Bonjour,

j'ai 3 erreurs.
voici le code PHP:

<?php
/////////////////////////////////////////////////////////////////////////
// affichages des noms dans la cellule de mon tableau acteurs/actrices //
/////////////////////////////////////////////////////////////////////////
$ACTORS=$row_JEU_XXX_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 //
//////////////////////////////////////////////

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


$NOM = array();
$compteur =0;
$i=0;
$compt=0;
$debutEXTENSION=".";
$image = array ();
$compteur=0;
$comptage=0;
$imageACTORS_sans_extension = array();
// on ouvre notre dossier contenant TOUTES les photos
$dir="/../../images/ADULTES/Adultes sur CDROM";
//opendir($dir);



// Ouvre un dossier bien connu, et liste tous les fichiers
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
echo "fichier : $file : type : " . filetype($dir . $file) . "\n";
}
closedir($dh);
}
}



$RepertoireNOM = opendir("\..\..\VALM\images\ADULTES\Adultes sur CDROM");

while($Nom_ACTORS = readdir($RepertoireNOM))
{
echo "nom_actors=".$Nom_ACTORS."<br/>";

if ($Nom_ACTORS != '.' && $Nom_ACTORS != '..' && $Nom_ACTORS != 'index.php')
{
//on stocke le nom des fichiers des photos dans un tableau
$tableau[$compt] = substr($Nom_ACTORS,0,strpos($Nom_ACTORS,"."));
echo $imageACTORS_sans_extension[$compt];
echo $tableau[$compt]."</br>";

}
$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>';


while ($comptage =! $maxj)
{
echo $ACTORSpresents[$i]."</br>";
echo $tableau[$comptage]."</br>";
if (($ACTORSpresents[$i]) == ($tableau[$compteur]))
{

echo "tableau[compteur] a pour compteur=".$comptage." qui est representé par :".$tableau[$comptage]."</br>";
if($i%$nbcol != 0) echo '<tr>';
echo '<img src="../../images/ADULTES/Adultes sur CDROM',$tableau[$compteur],'"/><echo $tableau[$compteur]/';
$comptage=0;
$i++;
if($i%$nbcol==($nbcol-1)) echo '</tr>';
$compteur++;
}
$comptage++;
}

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

voici mes 4 erreurs :

Warning: opendir(\..\..\VALM\images\ADULTES\Adultes sur CDROM) [function.opendir]: failed to open dir: No error in F:\EasyPHP5.2.10\www\VALM\PAGES\Adulte\OnlyFile_FILMSsurCD.php on line 183

Warning: readdir(): supplied argument is not a valid Directory resource in F:\EasyPHP5.2.10\www\VALM\PAGES\Adulte\OnlyFile_FILMSsurCD.php on line 185

Warning: closedir(): supplied argument is not a valid Directory resource in F:\EasyPHP5.2.10\www\VALM\PAGES\Adulte\OnlyFile_FILMSsurCD.php on line 199

Notice: Undefined variable: tableau in F:\EasyPHP5.2.10\www\VALM\PAGES\Adulte\OnlyFile_FILMSsurCD.php on line 203

18 réponses

Utilisateur anonyme
2 juil. 2011 à 13:35
mes lignes d'erreur :

ligne 181 :
$RepertoireNOM = opendir("\..\..\VALM\images\ADULTES\Adultes sur CDROM");

ligne 183 :
while($Nom_ACTORS = readdir($RepertoireNOM))

ligne 197:
closedir($RepertoireNOM);

ligne 201 :
$nbpics = count($tableau);
0
Utilisateur anonyme
4 juil. 2011 à 20:40
personne pour m'aider !
je desespere
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
4 juil. 2011 à 20:48
Salut !

Quelques idées :

- Dans tes chemins (comme "\..\..\VALM\images\ADULTES\Adultes sur CDROM"), remplace tous tes backslashes ("\") par des doubles ("\\"), ou alors par des slaahes simples ("/"). Ça ne peut pas te faire de mal. Aussi, termine ton path par un slash/backslash ; exemple : "../../VALM/images/ADULTES/Adultes sur CDROM/"
Dernière chose : je ne sais pas si c'était voulu, mais tu devrais éviter de commencer un path par un slash. Au lieu de "/path/", mets "path/" ou "./path/", sinon le programme va chercher un chemin à partir du dossier racine de PHP, et non pas à partir de l'emplacement du fichier qui l'appelle.

- Ton $RepertoireNOM, tu devrais le soumettre à une vérification par file_exists() avant de le passer dans un opendir(). Parce que si le chemin n'existe pas, et que tu passes ce chemin dans ton opendir(), il ne va pas te sortir une erreur ; il va te faire poirotter pendant dix minutes à chercher un dossier invisible.

Probablement que quand tu auras réglé ton problème de $RepertoireNOM, ton problème de $tableau va suivre.

Dis-moi si ça t'aide !
0
bonjour coeus,

Pour commencer, je te remercie de m'aider à resoudre mon probleme de code.

J'ai effectué un file_exists avec le repertoire en question :

$filename = '/../../images/ADULTES/AdultesSurCDROM/';
if (file_exists($filename))
{
print "Le fichier $filename existe";}
else
{
print "Le fichier $filename n'existe pas";
}

comme tu dois le savoir, j'ai un dossier 'easyPHP5.10.2" pour d'abord travailler sur mon pc avant de mettre le site en ligne (logique, non ?)
dans ce dossier, j'ai ceci : www\VALM\images\ADULTES\AdultesSurCDROM

mais j'ai pas saisi ce que tu voulais exactement que je fasse

citation :
"je ne sais pas si c'était voulu, mais tu devrais éviter de commencer un path par un slash. Au lieu de "/path/", mets "path/" ou "./path/", sinon le programme va chercher un chemin à partir du dossier racine de PHP, et non pas à partir de l'emplacement du fichier qui l'appelle.


j'ai toujours les meme erreurs :

-Le fichier /../../images/ADULTES/AdultesSurCDROM/ n'existe pas

-Warning: opendir(/../../VALM/images/ADULTES/AdultesSurCDROM/) [function.opendir]: failed to open dir: No error in F:\EasyPHP5.2.10\www\VALM\PAGES\Adulte\OnlyFile_FILMSsurCD.php on line 192

-Warning: readdir(): supplied argument is not a valid Directory resource in F:\EasyPHP5.2.10\www\VALM\PAGES\Adulte\OnlyFile_FILMSsurCD.php on line 194

-Warning: closedir(): supplied argument is not a valid Directory resource in F:\EasyPHP5.2.10\www\VALM\PAGES\Adulte\OnlyFile_FILMSsurCD.php on line 208

-Notice: Undefined variable: tableau in F:\EasyPHP5.2.10\www\VALM\PAGES\Adulte\OnlyFile_FILMSsurCD.php on line 212
Aucune image à afficher
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
5 juil. 2011 à 14:42
Ok, je vais essayer d'être plus clair... Pas toujours évident par écrit héhéhé...

Tu as :

opendir("/../../VALM/images/ADULTES/AdultesSurCDROM/")

Il faudrait que ce soit :

opendir("../../VALM/images/ADULTES/AdultesSurCDROM/")


Presque pas de différence, juste un "/" de moins au début du path. Comme j'essayais de t'expliquer, si tu mets un / au début, il va faire sa recherche à partir du dossier www, et non pas à partir du dossier où se trouve ton fichier. Normal alors qu'il ne trouve pas le path ! ;-)

Essaie ça, on verra ce que ça donne avec tout le reste !
0

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

Posez votre question
Utilisateur anonyme
5 juil. 2011 à 15:20
j'ai fais ce que tu m'a demandé de faire (donc ecrire ceci) :

$RepertoireNOM = opendir("../../VALM/images/ADULTES/AdultesSurCDROM/");

et malheureusement, les erreurs sont toujours là

par contre avec file_exist il me dit ceci (ce qui est deja cela) :

Le fichier ../../images/ADULTES/AdultesSurCDROM/ existe
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
5 juil. 2011 à 15:28
Mmmmmmm bizarre ça... Le dossier existe mais il refuse de l'ouvrir ?
Et si tu essaies d'enlever le "/" à la fin du path ? Des fois... :-S

Remarque : tu fais ton file_exists() sur $RepertoireNOM, et non sur $filename comme dans ton autre exemple, vrai ?

Si ça ne marche pas, peux-tu me reposter ton code mis à jour ?
0
Utilisateur anonyme
5 juil. 2011 à 16:19
J'ai enlevé le dernier "/".
J'ai fais mon file_exists sur $repertoireNom et non sur $filename.

C'est vrai que c'est etrange , le dossier existe mais ,comme tu dis, il refuse de l'ouvrir.

voici tout le code entier :

<?php require_once('../../Connections/Bdd_valm.php'); ?>
<?php
mysql_select_db($database_Bdd_valm, $Bdd_valm);
$query_JEU_XXX_sur_CD = "SELECT * FROM films_xxx_sur_cdrom";
$JEU_XXX_sur_CD = mysql_query($query_JEU_XXX_sur_CD, $Bdd_valm) or die(mysql_error());
$row_JEU_XXX_sur_CD = mysql_fetch_assoc($JEU_XXX_sur_CD);
$totalRows_JEU_XXX_sur_CD = mysql_num_rows($JEU_XXX_sur_CD);
?><!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">
<!--
.Style1 {
font-size: 36px;
font-weight: bold;
}
.Style2 {font-size: 36px}
-->
</style>
</head>

<body>
<form id="form1" name="form1" method="post" action="">
<div align="center" class="Style1"><?php echo $row_JEU_XXX_sur_CD['ORIGINALTITLE']; ?></div>
</form>
<form id="form2" name="form2" method="post" action="">
<table width="100%" border="1">
<tr>
<td rowspan="16"><div align="center"><img src="/../../VALM/images/ADULTES/Adultes sur CDROM/<?php echo $row_JEU_XXX_sur_CD['PICTURENAME']; ?>" width="200" height="250" /></div></td>
<td rowspan="16"><div align="center"><img src="/../../VALM/images/ADULTES/Adultes sur CDROM/verso_<?php echo $row_JEU_XXX_sur_CD['PICTURENAME']; ?>" width="200" height="250" /></div></td>
<td><div align="center">Titre</div></td>
<td><?php echo $row_JEU_XXX_sur_CD['ORIGINALTITLE']; ?></td>
</tr>
<tr>
<td><div align="center">Support</div></td>
<td><?php echo $row_JEU_XXX_sur_CD['MEDIATYPE']; ?></td>
</tr>
<tr>
<td><div align="center">Réalisateur</div></td>
<td><?php echo $row_JEU_XXX_sur_CD['DIRECTOR']; ?></td>
</tr>
<tr>
<td><div align="center">Producteur</div></td>
<td><?php echo $row_JEU_XXX_sur_CD['PRODUCER']; ?></td>
</tr>
<tr>
<td><div align="center">Pays</div></td>
<td><?php echo $row_JEU_XXX_sur_CD['COUNTRY']; ?></td>
</tr>
<tr>
<td><div align="center">Catégorie</div></td>
<td><?php echo $row_JEU_XXX_sur_CD['CATEGORY']; ?></td>
</tr>
<tr>
<td><div align="center">Année </div></td>
<td><?php echo $row_JEU_XXX_sur_CD['YEAR']; ?></td>
</tr>
<tr>
<td><div align="center">Durée</div></td>
<td><?php echo $row_JEU_XXX_sur_CD['LENGTH']; ?></td>
</tr>
<tr>
<td><div align="center">Acteurs/Actrices</div></td>
<td><label>
<textarea name="textfield" cols="70" rows="5"><?php echo $row_JEU_XXX_sur_CD['ACTORS']; ?></textarea>
</label></td>
</tr>
<tr>
<td><div align="center">Description</div></td>
<td><?php echo $row_JEU_XXX_sur_CD['DESCRIPTION']; ?></td>
</tr>
<tr>
<td><div align="center">Commentaire</div></td>
<td><label>
<textarea name="textfield2" cols="60" rows="5"></textarea>
</label></td>
</tr>
<tr>
<td><div align="center">format Vidéo </div></td>
<td><?php echo $row_JEU_XXX_sur_CD['VIDEOFORMAT']; ?></td>
</tr>
<tr>
<td><div align="center">Format Audio </div></td>
<td><?php echo $row_JEU_XXX_sur_CD['AUDIOFORMAT']; ?></td>
</tr>
<tr>
<td><div align="center">Langue</div></td>
<td><?php echo $row_JEU_XXX_sur_CD['LANGUAGES']; ?></td>
</tr>
<tr>
<td><div align="center">nombre de disuqes </div></td>
<td><?php echo $row_JEU_XXX_sur_CD['DISKS']; ?></td>
</tr>
<tr>
<td><div align="center">Taille (en Mo) </div></td>
<td><?php echo $row_JEU_XXX_sur_CD['FILESIZE']; ?></td>
</tr>
</table>
</form>
<form id="form3" name="form3" method="post" action="">
<div align="center" class="Style2">
<p><?php echo $row_JEU_XXX_sur_CD['ORIGINALTITLE']; ?></p>
</div>
</form>
<p> </p>

<?php
/////////////////////////////////////////////////////////////////////////
// affichages des noms dans la cellule de mon tableau acteurs/actrices //
/////////////////////////////////////////////////////////////////////////
$ACTORS=$row_JEU_XXX_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 //
//////////////////////////////////////////////

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


$NOM = array();
$compteur =0;
$i=0;
$compt=0;
$debutEXTENSION=".";
$image = array ();
$compteur=0;
$comptage=0;
$imageACTORS_sans_extension = array();
// on ouvre notre dossier contenant TOUTES les photos
$dir="/../../images/ADULTES/AdultesSurCDROM";
//opendir($dir);

$filename = '../../images/ADULTES/AdultesSurCDROM';
if (file_exists($filename))
{
print "Le fichier $filename existe";}
else
{
print "Le fichier $filename n'existe pas";
}





// Ouvre un dossier bien connu, et liste tous les fichiers
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
echo "fichier : $file : type : " . filetype($dir . $file) . "\n";
}
closedir($dh);
}
}



$RepertoireNOM = opendir("../../VALM/images/ADULTES/AdultesSurCDROM");

while($Nom_ACTORS = readdir($RepertoireNOM))
{
echo "nom_actors=".$Nom_ACTORS."<br/>";

if ($Nom_ACTORS != '.' && $Nom_ACTORS != '..' && $Nom_ACTORS != 'index.php')
{
//on stocke le nom des fichiers des photos dans un tableau
$tableau[$compt] = substr($Nom_ACTORS,0,strpos($Nom_ACTORS,"."));
echo $imageACTORS_sans_extension[$compt];
echo $tableau[$compt]."</br>";

}
$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>';


while ($comptage =! $maxj)
{
echo $ACTORSpresents[$i]."</br>";
echo $tableau[$comptage]."</br>";
if (($ACTORSpresents[$i]) == ($tableau[$compteur]))
{

echo "tableau[compteur] a pour compteur=".$comptage." qui est representé par :".$tableau[$comptage]."</br>";
if($i%$nbcol != 0) echo '<tr>';
echo '<img src="../../images/ADULTES/Adultes sur CDROM',$tableau[$compteur],'"/><echo $tableau[$compteur]/';
$comptage=0;
$i++;
if($i%$nbcol==($nbcol-1)) echo '</tr>';
$compteur++;
}
$comptage++;
}

echo '</table>';
}
else echo 'Aucune image à afficher';
?>
</body>
</html>
<?php
mysql_free_result($JEU_XXX_sur_CD);
?>

et j'aurai une autre question a te poser....bien sur resoudre d'abord ces erreurs de code incomprehensible. Je reste, comme toi, sans voix........
0
bonjour coeus,

J'ai repondu a tes questions...
As tu au une idee ou solutions sur mes problemes de code à ce jour ?

amicalement
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
6 juil. 2011 à 14:35
Salut !

Je pense avoir trouvé. De ce que je comprends, tu vérifies si c'est $filename qui existe, avant de faire un opendir() sur $RepertoireNOM, et c'est ce dernier qui te pose problème ?
Mais les deux variables ne contiennent pas le même chemin ! Donc il est très probable que l'un existe et pas l'autre.

Considère ce bout de ton code :

$RepertoireNOM = opendir("../../VALM/images/ADULTES/AdultesSurCDROM");

while($Nom_ACTORS = readdir($RepertoireNOM)) {
	echo "nom_actors=".$Nom_ACTORS."<br/>";

	if ($Nom_ACTORS != '.' && $Nom_ACTORS != '..' && $Nom_ACTORS != 'index.php') {
		[...]
	}
	$compt++;
}

Tu devrais faire :

$RepertoireNOM = opendir("../../VALM/images/ADULTES/AdultesSurCDROM");

if (file_exists($RepertoireNOM)) {
	while($Nom_ACTORS = readdir($RepertoireNOM)) {
		echo "nom_actors=".$Nom_ACTORS."<br/>";

		if ($Nom_ACTORS != '.' && $Nom_ACTORS != '..' && $Nom_ACTORS != 'index.php') {
			[...]
		}
		$compt++;
	}
} else {
echo 'Erreur : le dossier n'existe pas.';
}


Comme ça au moins, si le chemin n'existe pas, ça te sortira une erreur et tu sauras à quoi t'en tenir. Dis-moi si ça règle le problème.
Maintenant quelques petite considérations à-côté... C'est bien le code présent, corrigé et tout ?
Parce que je vois ça :

// on ouvre notre dossier contenant TOUTES les photos
$dir="/../../images/ADULTES/AdultesSurCDROM"; 

Ça ne me semble pas lié à ton problème original, mais quand même, faudrait enlever le premier "/" dans le path.

Ensuite, pour tes readdir(), tu as une syntaxe comme :

while ($Nom_ACTORS = readdir($RepertoireNOM)) {

Je t'encouragerais à opter pour :

while (($Nom_ACTORS = readdir($RepertoireNOM)) !== false) {

qui est plus solide.


Voilà ! Donne-m'en des nouvelles !!!
0
Utilisateur anonyme
8 juil. 2011 à 17:28
bonjour coeus,

desole du retard mais j'ai ces erreurs ci :

Warning: filetype() [function.filetype]: Lstat failed for ../../images/ADULTES/AdultesSurCDROM1 cock is not enough 2.jpg in F:\EasyPHP5.2.10\www\VALM\PAGES\Adulte\OnlyFile_FILMSsurCD.php on line 187
fichier :xxxxxxxx.jpg: type :
...
...
...
...
...
pour toutes donnees de la table

et

Warning: opendir(../../VALM/images/ADULTES/AdultesSurCDROM/) [function.opendir]: failed to open dir: No error in F:\EasyPHP5.2.10\www\VALM\PAGES\Adulte\OnlyFile_FILMSsurCD.php on line 193

et

Erreur : le dossier n'existe pas.

et

Warning: closedir(): supplied argument is not a valid Directory resource in F:\EasyPHP5.2.10\www\VALM\PAGES\Adulte\OnlyFile_FILMSsurCD.php on line 218

et

Notice: Undefined variable: tableau in F:\EasyPHP5.2.10\www\VALM\PAGES\Adulte\OnlyFile_FILMSsurCD.php on line 222
Aucune image à afficher

ligne 187 :
echo "fichier :".$file.": type : " . filetype($dir . $file) . "\n"

ligne 193 :
$RepertoireNOM = opendir("../../VALM/images/ADULTES/AdultesSurCDROM");

ligne 218 :
closedir($RepertoireNOM);
0
Utilisateur anonyme
12 juil. 2011 à 08:30
bonjour coeus,


Je n'ai pas de nouvelle de ta part.
Aurais-tu une journee ou des heures disponibles afin que je puisse te joindre dans ce creneau.

Peut-etre que tu n'as pas trouve de solution ?

J'attends de tes nouvelles patiemment.
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
Modifié par coeus le 12/07/2011 à 14:41
Salut !

Désolé, zavions pas vu (ou oublié) ta dernière question... :-(

Ça va être un peu dur, vu que je n'ai pas de vue d'ensemble de ton projet, mais je vais tenter...

Ligne 187 :
Es-tu SÛR que ton $dir se finit par un "/" ?
Parce que je pense que si on traduit les variables, tu devrais avoir :

filetype(chemin/vers/dossier/fichier.jpg)

Mais en ce moment, tu as :

filetype(chemin/vers/dossierfichier.jpg)

Remarque la différence. Peut-être que je me trompe... Si c'est le cas, enlève tout simplement le filetype, à moins que ce soit vraiment nécessaire.


Ligne 193 :
Tout ce que je verrais comme solution, c'est que ton path est invalide. opendir() ne semble pas trouver le dossier. Si tu as des doutes, dans le path, ajoute ou enlève des "../" au début, jusqu'à ce que le path soit trouvable... Là je peux plus ou moins t'aider, je ne connais pas ton arborescence de dossier... :-(


Ligne 218 :
Même chose ; le path ne me semble pas valide.
Personnellement, je n'utilise jamais de closedir(). C'est utile seulement quand tu veux, dans un même script, ouvrir et fermer le même dossier plusieurs fois, ou attribuer plus d'un dossier tour à tour à une même variable, ou quand tu ouvres des milliers de dossiers dans un seul chargement. Autrement, PHP est rendu intelligent : à la fin de ton script, il s'occupe de fermer tous tes dossiers.
Bref, je pense que tu peux écarter le closedir(). Ça te fera une erreur potentielle de moins ! ;-)


Donne-m'en des nouvelles !!!
0
je te donne encore ce bout de 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_XXX_sur_CD['ORIGINALTITLE']."'"."</br>";


$NOM = array();
$compteur =0;
$i=0;
$compt=0;
$debutEXTENSION=".";
$image = array ();
$compteur=0;
$comptage=0;
$imageACTORS_sans_extension = array();
// on ouvre notre dossier contenant TOUTES les photos

$dir="../../images/ADULTES/AdultesSurCDROM/"; // le code se trouve sur le f: donc f:/easyphp 5.2.10/www/VALM/images/ADULTES/AdultesSurCDROM
d'ou l'ecriture du code $dir="../../images/ADULTES/AdultesSurCDROM/";
../.../ veut dire que l'on remonte de deux dossiers

//opendir($dir);

$filename = '../../images/ADULTES/AdultesSurCDROM/';
if (file_exists($filename))
{
print "Le fichier $filename existe";
}
else
{
print "Le fichier ".$filename." n'existe pas";
}

// Ouvre un dossier bien connu, et liste tous les fichiers
if (is_dir($dir))
{
if ($dh = opendir($dir))
{
while (($file = readdir($dh) !== false)
{
echo "fichier :".$file.": type : " . filetype($dir . $file) . "\n";
}
closedir($dh);
}
}

$RepertoireNOM = opendir("../../VALM/images/ADULTES/AdultesSurCDROM");

if (file_exists($RepertoireNOM))
{
//while($Nom_ACTORS = readdir($RepertoireNOM))
while ((($Nom_ACTORS = readdir($RepertoireNOM)) !== false)
{
echo "nom_actors=".$Nom_ACTORS."<br/>";

if ($Nom_ACTORS != '.' && $Nom_ACTORS != '..' && $Nom_ACTORS != 'index.php')
{
//on stocke le nom des fichiers des photos dans un tableau
$tableau[$compt] = substr($Nom_ACTORS,0,strpos($Nom_ACTORS,"."));
echo $imageACTORS_sans_extension[$compt];
echo $tableau[$compt]."</br>";
}
$compt++;
}
}
else
{
echo 'Erreur : le dossier n\'existe pas.';
}



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>';


while ($comptage =! $maxj)
{
echo $ACTORSpresents[$i]."</br>";
echo $tableau[$comptage]."</br>";
if (($ACTORSpresents[$i]) == ($tableau[$compteur]))
{

echo "tableau[compteur] a pour compteur=".$comptage." qui est representé par :".$tableau[$comptage]."</br>";
if($i%$nbcol != 0) echo '<tr>';
echo '<img src="../../images/ADULTES/Adultes sur CDROM',$tableau[$compteur],'"/><echo $tableau[$compteur]/';
$comptage=0;
$i++;
if($i%$nbcol==($nbcol-1)) echo '</tr>';
$compteur++;
}
$comptage++;
}

echo '</table>';
}
else echo 'Aucune image à afficher';
?>
</body>
</html>
<?php
mysql_free_result($JEU_XXX_sur_CD);
?>

erreur de code à la ligne 199 :
Parse error: syntax error, unexpected '{' in F:\EasyPHP5.2.10\www\VALM\PAGES\Adulte\OnlyFile_FILMSsurCD.php on line 199


ligne 199 :
while ((($Nom_ACTORS = readdir($RepertoireNOM)) !== false)

cela doit etre une accolade manquante ouverte (je pense).
J'ai regarde patout dans le code (meme de puis le debut du code)
Je sais, par definition, que dreamweaver "s'arrete" dès qu'il a rencontre une accolade fermante....
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
12 juil. 2011 à 16:32
cela doit etre une accolade manquante ouverte (je pense).

Nah. Compte tes parenthèses suite à ton while. Tu as un "(" de trop. ;-)
0
comment faire pour que je puisse lire corectement tous les fichiers (l'un en dessous de l'autre)car ils sont tous attachés.

code :
echo "fichier :".$file.": type : " . filetype($dir . $file) . "\n";

j'ai mis ceci :
echo "fichier :".$file.": type : " . filetype($dir . $file) . "\n"<br>;

mais cela ne fais rien comme je veux
0
Utilisateur anonyme
12 juil. 2011 à 17:49
c'est bon , j'ai trouve pour l'affichage des fichiers l'un en dessous de l'autre.

c'etait :
echo "fichier :".$file.": type : " . filetype($dir . $file) . "\n<br>";
0
Utilisateur anonyme
12 juil. 2011 à 18:00
j'ai donc l'affichage de tous mes fichiers + type de fichier :

fichier :xxxxxxxxxxx.jpg: type : file
...
...
...
j'en ai + de 200 fichiers
...
...
...
...

et

Apparait toujours ces erreurs de code :

Warning: opendir(../../VALM/images/ADULTES/AdultesSurCDROM/) [function.opendir]: failed to open dir: No error in F:\EasyPHP5.2.10\www\VALM\PAGES\Adulte\OnlyFile_FILMSsurCD.php on line 193
Erreur : le dossier n'existe pas.
Warning: closedir(): supplied argument is not a valid Directory resource in F:\EasyPHP5.2.10\www\VALM\PAGES\Adulte\OnlyFile_FILMSsurCD.php on line 219

et

Notice: Undefined variable: tableau in F:\EasyPHP5.2.10\www\VALM\PAGES\Adulte\OnlyFile_FILMSsurCD.php on line 223

et

Aucune image à afficher -------->

correspond au code de ce ce if ci-dessous:

$filename = '../../VALM/images/ADULTES/AdultesSurCDROM/';
if (file_exists($filename))
{
print "Le fichier $filename existe";
}
else
{
print "Le fichier ".$filename." n'existe pas";
}



ca commence à ma gaver grave.......GRRRRRRR
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
12 juil. 2011 à 18:08
Bon ben je pense qu'on l'a, le problème. Ton path '../../VALM/images/ADULTES/AdultesSurCDROM/' est invalide. Assure-toi qu'il est bon.

Tu peux essayer :
'../VALM/images/ADULTES/AdultesSurCDROM/'
ou alors :
'../../../VALM/images/ADULTES/AdultesSurCDROM/'
si c'est une erreur de comptage de "combien de dossier on revient en arrière"... Moi ça m'arrive fréquemment.

Sinon... Toi seul connaît ton arborescence, donc soit tu trouves un moyen de me la communiquer... Sinon encore là je suis limité :-S
0
Dans la fenetre poste de travail,dedans il y a :
FICHIER, EDITION, AFFICHAGE, OUTILS, ? ,
en dessous de cela il y a
adresse : F:\EasyPHP5.2.10\www\VALM\images\ADULTES\AdultesSurCDROM
qui correpond au se trouve easyphp 5.2.10 sur mon disque dur F:/

suis-je clair ?
0
je n'ai plus que 2 erreurs :

Le fichier ../../../VALM/images/ADULTES/AdultesSurCDROM/ existeErreur : le dossier n'existe pas.

et

Notice: Undefined variable: tableau in F:\EasyPHP5.2.10\www\VALM\PAGES\Adulte\OnlyFile_FILMSsurCD.php on line 224
Aucune image à afficher

ligne 224 :


par contre pour cette erreur :
Notice: Undefined variable: tableau in F:\EasyPHP5.2.10\www\VALM\PAGES\Adulte\OnlyFile_FILMSsurCD.php on line 224
Aucune image à afficher

C'est comme si le dossier existe.....puis apres avoir fais sa boucle....me mets: existeErreur : le dossier n'existe pas.
Ce n'est à plus comprendre.....
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
12 juil. 2011 à 19:54
Tu as le message d'erreur :
Le fichier ../../../VALM/images/ADULTES/AdultesSurCDROM/ existeErreur : le dossier n'existe pas.

C'est en fait deux messages :
Le fichier ../../../VALM/images/ADULTES/AdultesSurCDROM/ existe
et
Erreur : le dossier n'existe pas.

Le premier est en réponse à la vérification sur $filename ; le deuxième vient de la vérification sur $RepertoireNOM. Es-tu sûr que, les deux fois, c'est le même path qui est évalué ? Si non, ben c'est peut-être normal que le premier existe, mais pas le second.

Ta deuxième erreur (celle à la ligne 224) te dit que $tableau n'existe pas ; ce qui est normal vu que pour le remplir, le script doit trouver des dossiers viables. Donc règle le premier problème et ça va régler le second tout seul, d'après moi. ;-)
0
j'ai ajouté du code , dont voice le code php (ligne 222 à 287).
(Les autres lignes 149 :
<?php
/////////////////////////////////////////////////////////
//affichage des photos des acteurs/actrices //
/////////////////////////////////////////////////////////
....
....
.....
à la ligne 221 :
closedir($RepertoireNOM);

sont des anciennes lignes)

<?php
/////////////////////////////////////////////////////////////////////////
// affichages des noms dans la cellule de mon tableau acteurs/actrices //
/////////////////////////////////////////////////////////////////////////
$ACTORS=$row_JEU_XXX_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 //
//////////////////////////////////////////////

echo "Voici le casting des personnages \n";
echo "Il y a ".$j." acteurs/actrices dans le film "."</br>";


$NOM = array();
$compteur =0;
$i=0;
$compt=0;
$debutEXTENSION=".";
$image = array ();
$compteur=0;
$comptage=0;
$imageACTORS_sans_extension = array();
// on ouvre notre dossier contenant TOUTES les photos
$dir="../../../ADULTES/AdultesSurCDROM/";
//opendir($dir);

$filename = '../../../VALM/images/ADULTES/AdultesSurCDROM/';
if (file_exists($filename))
{
print "Le fichier $filename existe";
}
else
{
print "Le fichier ".$filename." n'existe pas";
}

// Ouvre un dossier bien connu, et liste tous les fichiers
if (is_dir($dir))
{
if ($dh = opendir($dir))
{
while (($file = readdir($dh)) !== false)
{
echo "fichier :".$file.": type : " . filetype($dir . $file) . "\n<br>";
}
closedir($dh);
}
}

$RepertoireNOM = opendir("../../../VALM/images/ADULTES/AdultesSurCDROM/");

if (file_exists($RepertoireNOM))
{
//while($Nom_ACTORS = readdir($RepertoireNOM))
while (($Nom_ACTORS = readdir($RepertoireNOM)) !== false)
{
echo "nom_actors=".$Nom_ACTORS."<br/>";

if ($Nom_ACTORS != '.' && $Nom_ACTORS != '..' && $Nom_ACTORS != 'index.php')
{
//on stocke le nom des fichiers des photos dans un tableau
$tableau[$compt] = substr($Nom_ACTORS,0,strpos($Nom_ACTORS,"."));
echo $imageACTORS_sans_extension[$compt];
echo $tableau[$compt]."</br>";
}
$compt++;
}
}
else
{
echo 'Erreur : le dossier n\'existe pas.';
}



closedir($RepertoireNOM);

$nbcol = 8;
$dir=opendir($RepertoireNOM);
if ($ACTORS<>"")
{
$ACTORSpresents=explode(", ",", ".$ACTORS);
// for($i=0;$i<sizeof($ACTORSpresents);$i++)
// {
// echo $ACTORSpresents[$i]."&&&";
//}
//if($i!=sizeof($ACTORSpresents)){echo "-";}}
echo "CASTING :<br/>Il y a ".(sizeof($ACTORSpresents)-1)."Acteurs/Actrices<<br/>";

echo "<table>";
$nbcol=5;
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>";
}

//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>';


//while ($comptage =! $maxj)
//{
//echo $ACTORSpresents[$i]."</br>";
//echo $tableau[$comptage]."</br>";
//if (($ACTORSpresents[$i]) == ($tableau[$compteur]))
//{

//echo "tableau[compteur] a pour compteur=".$comptage." qui est representé par :".$tableau[$comptage]."</br>";
//if($i%$nbcol != 0) echo '<tr>';
//echo '<img src="../../../VALM/images/ADULTES/Adultes sur CDROM/',$tableau[$compteur],'"/><echo $tableau[$compteur]/';
//$comptage=0;
//$i++;
//if($i%$nbcol==($nbcol-1)) echo '</tr>';
//$compteur++;
//}
//$comptage++;
//}

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


une erreur s'est glissée :
Warning: opendir() expects parameter 1 to be string, resource given in F:\EasyPHP5.2.10\www\VALM\PAGES\Adulte\OnlyFile_FILMSsurCD.php on line 223

ligne 223 :
$dir=opendir($RepertoireNOM);
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
13 juil. 2011 à 14:22
Ok, et là-dessus, est-ce que ça te dit un peu plus haut que $filename existe ?
0
Utilisateur anonyme
13 juil. 2011 à 14:50
non, pas d'erreurs, pas de commentaires sur $filename
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
13 juil. 2011 à 15:29
Bizarre ça. Tu fais bel et bien une vérification de $filename pourtant, n'est-ce pas ?
Ça devrait obligatoirement t'afficher quelque chose, soit que $filename existe, soit qu'il n'existe pas. Sinon, ça veut dire que le script n'atteint jamais le bout de code :

$filename = '../../../VALM/images/ADULTES/AdultesSurCDROM/';
if (file_exists($filename)) {
print "Le fichier $filename existe";
} else {
print "Le fichier ".$filename." n'existe pas";
} 

Et là, ça pose méchant problème... :-S
0
Utilisateur anonyme
16 juil. 2011 à 15:36
ok.
Que dois je faire ?
0
salut coeus,

vu ton dernier post, tu n'as pas d'autres reponses.
Je reste donc , finalement, avec toujours avec mon probleme de codes.
Je desespere...tu etais le seul à m'aider.
Si tu as d'autres idées, je suis prenant.
merci à toi coeus pour tout ton aide.

J'ai MSN : si tu veux je te file mon adresse email : lolo_c1@hotmailcom
connais tu aussi tiemviewer ? si oui, telecharge le.
Je l'ai sur mon pc.
0
Utilisateur anonyme
21 juil. 2011 à 18:55
voici le code source généré (page ouverte par le navigateur) :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.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 nom</title>
</head>

<frameset rows="*" cols="281,*" framespacing="0" frameborder="no" border="0">
<frame src="CadreDeGauche.php" name="leftFrame" scrolling="No" noresize="noresize" id="leftFrame" title="leftFrame" />
<frame src="CadrePrincipal.html" name="mainFrame" id="mainFrame" title="CadreCentral" />
</frameset>
<noframes><body>
</body>
</noframes></html>
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
21 juil. 2011 à 19:01
Oh God...
Tu utilises des frames ? Ayoye...

Ok. J'aurais besoin que tu me donnes :
- Dans quel dossier se trouve ton fichier index.html ou index.php ;
- Dans quel dossier se trouve le fichier dans lequel se trouve ton code qui essaie d'afficher les images (est-ce que c'est "CadreDeGauche.php" ?)
0
Utilisateur anonyme
21 juil. 2011 à 22:25
1) index.php se trouve dans le dossier C:\wamp\www\VALM

2) le dossier dans lequel se trouve mon code qui essaie d'afficher les images est dans : C:\wamp\www\VALM\images\ADULTES\AdultesSurCDROM

3) Les images s'affichent dans le CadreCentral.html
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
21 juil. 2011 à 22:58
Donc tu as du code PHP dans une page HTML ?
Je ne te conseille pas ça... Si tu as quelques pages en PHP, tu devrais tout mettre en .php ; je ne suis pas sûr que le code roule très bien dans une page .html, elle va être mal interprétée...

Donc si je comprends bien, le code suivant :
$filename = '../../../VALM/images/ADULTES/AdultesSurCDROM/';
if (file_exists($filename))
{
print "Le fichier $filename existe";
}
else
{
print "Le fichier ".$filename." n'existe pas";
} 

est dans le fichier CadreCentral.html ?

Et le fichier CadreCentral.html est dans le dossier C:\wamp\www\VALM\images\ADULTES\AdultesSurCDROM ?

Est-ce que j'ai bien compris ?
0
Utilisateur anonyme
22 juil. 2011 à 13:56
tu n'as pas tout compris.
J'ai un cadre total : le frameset.
Le Frameset , lui , est constitué de 2 cadres :

- leftFrame (CadreDeGauche que j'ai appelé).Dreamweaver 8 genere lui-meme un autre cadre, CadreDeGauche.html et CadreDeGauche.php

- mainFrame (CadrePrincipal que j'ai appelé).Dreamweaver 8 genere lui-meme un autre cadre, CadrePrincipal.html et CadrePrincipal.php

Au niveau des cadres, c'est dreamweaver 8 qui code les cadres si je peux parler comme cela (en ecrivant tout ce que l'on veut dire ou exprimer....c'est difficile de s'exprimer).

Le code :

$filename = '../../../VALM/images/ADULTES/AdultesSurCDROM/';
if (file_exists($filename))
{
print "Le fichier $filename existe";
}
else
{
print "Le fichier ".$filename." n'existe pas";
}

n'est pas situer dans CadreCentral.html



Et le fichier CadreCentral.html est dans le dossier C:\wamp\www\VALM


mais ce serai mieux que tu installes teamviewer. tu verras plus clair sur le code et cela te repondra a toute tes questions que tu me poses.
je te donnerai tout mes ce qu'il faut : identifiant + mot de passe par email
0
pour teamviewer, donne moi ton email. sans cette adresse ,tu ne pas faire grand chose
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
22 juil. 2011 à 14:32
Salut,

Désolé mais je n'installerai pas Teamviewer. Je n'ai pas le temps de m'installer là-dessus, car quand je te réponds c'est depuis l'ordinateur du boulot, donc je ne peux pas installer n'importe quoi sans permission, et je n'aurai pas le temps d'intervenir de chez nous avant le mois prochain.

Maintenant, oui c'est dur à expliquer comme ça, mais on va y arriver avec de la patience. Mais ça va aller mieux si tu réponds complètement à mes questions ; ça fait près de 8 messages que j'essaie juste de savoir, le fichier qui contient le code :

$filename = '../../../VALM/images/ADULTES/AdultesSurCDROM/';
if (file_exists($filename))
{
print "Le fichier $filename existe";
}
else
{
print "Le fichier ".$filename." n'existe pas";
} 


Il est dans quel dossier ?

Mon raisonnement est simple : à force de faire des frames et des Iframes (et ce serait la même chose si tu faisais des include() ou du AJAX), les règles pour les paths changent.

Donc je pense que le path (../../../VALM/images/ADULTES/AdultesSurCDROM/) n'est pas bon. Et que l'ancien path (../../VALM/images/ADULTES/AdultesSurCDROM/) n'était pas valide non plus.

Donc j'ai besoin de savoir deux choses, avec autant de détails que possible :
1. Dans quel dossier se trouve le fichier qui contient le code mentionné ci-dessus ?
2. De quelle manière ce fichier est-il appelé ? De quelle manière est-il sensé afficher son contenu ?

Un exemple :
Disons un fichier index.php qui contient la ligne de code suivante :

include(contenu/accueil.php);

Dans ce cas, on peut dire que accueil.php est appelé par include depuis index.php, et qu'il est situé dans le dossier C:/wamp/www/mon_site/contenu/.

Autre exemple :
Disons un fichier index.php qui contient la ligne de code suivante :

<frame src="pages/accueil.php"></frame>

Dans ce cas, on peut dire que accueil.php est appelé par une frame depuis index.php, et qu'il est situé dans le dossier C:/wamp/www/mon_site/pages/.

Dernier exemple :
Disons un fichier index.php qui contient la ligne de code suivante :

include(fonctions/fonctions.php);

Et que fonctions.php contient la ligne de code suivante :

include(contenu/accueil.php);

Dans ce cas, on peut dire que accueil.php est appelé par include depuis fonctions.php, et qu'il est situé dans le dossier C:/wamp/www/mon_site/contenu/. Et que fonctions.php, lui, est appelé par include depuis index.php, et qu'il est situé dans le dossier C:/wamp/www/mon_site/fonctions/.

Voilà, c'est ça que j'ai besoin de savoir. À défaut de Teamviewer, il faut que tu me crées une image mentale aussi précise que possible... ;-)
Quand je te demande si un bout de code se trouve dans un fichier X, c'est bien que tu me dises oui ou non, mais si c'est non, ce serait bien que tu me dises dans quel fichier le code se trouve plutôt. Ça m'évite de te le demander après. ;-)
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
22 juil. 2011 à 14:34
(Parenthèse que je tiens à préciser : si tu n'as pas ab-so-lu-ment besoin de tes frames, débarrasses-toi de ça au plus vite. Ce n'est pas standard, c'est malpropre,m et ça crée plein de problèmes. Privilégie des include() et du AJAX dès que tu pourras.)
0
Utilisateur anonyme
22 juil. 2011 à 14:53
petite question : a quoi sert le include ?
Quel difference entre le frame et include ?

je te donne mon site professionnel : http://www.de-info59.net
Il a ete concu par dreamviewer 8 par moi-meme.
J'ai tout appris tout seul.
Et comme tu peux voir sur http://www.dep-info59.net, j'utilise des frame pour mon menu (cadre de gauche) et mon resultat sur CadrePrincipal à chaque fois que l'on selectionne dans le menu.
0
Utilisateur anonyme
22 juil. 2011 à 14:59
pour le code :

$filename = '../../../VALM/images/ADULTES/AdultesSurCDROM/';
if (file_exists($filename))
{
print "Le fichier $filename existe";
}
else
{
print "Le fichier ".$filename." n'existe pas";
}

il se trouve dans le dossier : C:\wamp\www\VALM\PAGES\Adulte
qui se nomme : OnlyFile_FilmsSurCD.php
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
22 juil. 2011 à 15:23
a quoi sert le include ?

C'est une fonction PHP qui insère une page dans un bout de code.

Exemple : tu as deux pages, index.php et accueil.php

index.php contient le code suivant :

<html>
	<head></head>
	<body>
		<?php
			include('accueil.php');
		?>
	</body>
</html>

et accueil.php contient :

<h1>Page d'accueil</h1>
<?php
	echo "<p>Petit texte quelconque</p>";
?>


Le résultat final, dans le navigateur, sera :

<html>
	<head></head>
	<body>
		<h1>Page d'accueil</h1>
		<p>Petit texte quelconque</p>
	</body>
</html>


Tu peux avoir plus de détails sur W3Schools ou PHP.net

Évidemment, Dreamweaver ne fera jamais de include. Trop compliqué.

La différence entre les include et les frames, c'est que les frames :
- Sont une ancienne balise, un vestige de l'ancien HTML, du temps où les frames étaient à peu près la seule façon de rendre une partie de page dynamique ;
- Sont dépréciées ; elles sont encore bien supportées par les navigateurs, mais elles occasionnent des problèmes de référencement sur les moteurs de recherche, et souffrent de sérieuses limites (entre autres au niveau du CSS) ;
- Peuvent être remplacées très facilement par un bon PHP et, plus tard, du AJAX (qui est un peu un mélange de PHP et de Javascript).

Les include sont moins dynamiques ; c'est une manière de diviser ton information sur plusieurs fichiers, et non pas une manière de rendre une partie de ta page "indépendante" des autres. Pour ça, ça te prend du Javascript ou du AJAX.
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
Modifié par coeus le 22/07/2011 à 15:33
Bon, je sais quel fichier contient le code, j'ai la moitié des infos dont j'ai besoin.

Maintenant. Si je comprends bien, la page qui pose problème, c'est une page qui est sensée montrer un tableau avec plein d'images ?

Quand on est dans Explorer/Firefox, à quoi ressemble l'URL quand on se trouve sur cette page ? Dans le fond, ce que j'ai besoin de savoir, c'est sur quelle page on se trouve réellement quand on visualise le contenu de OnlyFile_FilmsSurCD.php.

Exemple.
J'ai une page index.php qui a un frame :

<frame src="accueil.php"></frame>

Dans ce cas-ci, je me trouve sur index.php, la preuve est que l'url serait quelque chose comme :
www.monsite.com
ou :
www.monsite.com/index.php
Par contre, je visualise le contenu de accueil.php, bien que je me trouve sur index.php.

Donc dans ton cas, sur quelle page se trouve-t-on quand on visualise OnlyFile_FilmsSurCD.php ?
Jusque-là, j'ai assumé qu'on était sur ton index.php, mais je veux être sûr.

Et peu importe le cas, tu peux me dire dans quel dossier se trouve cette page ?
0
1) a ta phrase : Maintenant. Si je comprends bien, la page qui pose problème, c'est une page qui est sensée montrer un tableau avec plein d'images ?

ce n'est pas un tableau , mais des liens :

<?php do { ?>
<a href="OnlyFile_FILMSsurCD.php?NUM=<?php echo $row_JEU_XXX_sur_CD['NUM']; ?>">
<img src="../../VALM/images/ADULTES/AdultesSurCDROM/<?php echo $row_JEU_XXX_sur_CD['PICTURENAME']; ?>" width="150" height="200" /></a>
<?php } while ($row_JEU_XXX_sur_CD = mysql_fetch_assoc($JEU_XXX_sur_CD)); ?>

2) a ta phrase : Quand on est dans Explorer/Firefox, à quoi ressemble l'URL quand on se trouve sur cette page ? Dans le fond, ce que j'ai besoin de savoir, c'est sur quelle page on se trouve réellement quand on visualise le contenu de OnlyFile_FilmsSurCD.php

l'URL local ressemble à : http://localhost/VALM/VALM/JeuDeCadrePrincipal.html

3) a ta phrase : Donc dans ton cas, sur quelle page se trouve-t-on quand on visualise OnlyFile_FilmsSurCD.php ? Jusque-là, j'ai assumé qu'on était sur ton index.php, mais je veux être sûr

dans dreamweaver 8, soit je demarre par index.php (en local,faut que je clique sur F12) ou quand j'ouvre OnlyFile_FilmsSurCD.php dans dreamweaver 8 je peux le lancer (toujours en local....) en appuyant sur F12 pour qu'il soit apparent dans le navigateur IE
0
salut coeus,

je t'ai laissé un message sur le post d'avant (22 juin 2011) - 15:56 min.

si tu peux jeter un oeil...
merci d'avance
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
26 juil. 2011 à 15:29
Salut,

Excuse-moi, ton message est descendu assez rapidement dans ma liste de discussions suivies... :-S

Ouais ouais ouais... Ça va bien... :-P

Ok autre question pour m'aider à visualiser : si je comprends bien, tu as ta page JeuDeCadrePrincipal.html qui contient un frame qui appelle OnlyFile_FilmsSurCD.php, c'est bien ça ? Si oui, peux-tu me donner le code de cette balise <frame> ?
0
Utilisateur anonyme
28 juil. 2011 à 13:51
voici le code <frame> de la page JeuDeCadrePrincipal.html :

<head>

<title>Menu</title>
<style type="text/css">
<!--
body {
background-color: #CCCCCC;
}
-->
</style>
<script type="text/JavaScript">
<!--
function MM_goToURL() { //v3.0
var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
}
//-->
</script>
</head>

<body>
<table width="99%" border="1">
<tr>
<td><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://fpdownload2.macromedia.com/get/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" width="105" height="27">
<param name="movie" value="text1.swf" />
<param name="quality" value="high" />
<embed src="text1.swf" quality="high" pluginspage="https://get.adobe.com/flashplayer/" type="application/x-shockwave-flash" width="105" height="27" ></embed>
</object></td>
</tr>
<tr>
<td><a href="PAGES/Adulte/Films sur CD.php" target="mainFrame"><strong>Films X sur CD-rom</strong></a> </td>
</tr>
<tr>
<td><a href="PAGES/Adulte/Films sur DVD.php" target="mainFrame"><strong>films X SUR DVD </strong></a></td>
</tr>
<tr>
<td><label>
<select name="select2" onchange="MM_goToURL('parent','PAGES/Adulte/Films sur DVD.php');return document.MM_returnValue" onclick="MM_goToURL('mainFrame','PAGES/Adulte/Films sur CD.php');return document.MM_returnValue">
<option>Films X sur CD</option>
<option>Films X sur DVD</option>
</select>
</label></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td> </td>
</tr>


<tr>
<td> </td>
</tr>
<tr>
<td><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://fpdownload2.macromedia.com/get/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" width="219" height="27">
<param name="movie" value="text2.swf" />
<param name="quality" value="high" />
<embed src="text2.swf" quality="high" pluginspage="https://get.adobe.com/flashplayer/" type="application/x-shockwave-flash" width="219" height="27" ></embed>
</object></td>
</tr>
<tr>
<td>Dessins-animés sur CD </td>
</tr>
<tr>
<td>Dessins-animés sur DVD </td>

<tr>
<td><label>
<select onchange="window.open(this.value,'mainFrame');" name="select">
<option>Choisissez</option>
<option value="/PAGES/Adultes/Films sur CD.php">Dessins-Animes sur CD</option> // cadre central ou vont apparaitre les photos
<option value="/PAGES/Adultes/Films sur DVD.php">Dessins-Animes sur DVD</option> // cadre central ou vont apparaitre les photos
</select>




</label></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td> </td>
</tr>
</table>
</body>
</html>


ne prete pas attention à cette ligne :
<select name="select2" onchange="MM_goToURL('parent','PAGES/Adulte/Films sur DVD.php');return document.MM_returnValue" onclick="MM_goToURL('mainFrame','PAGES/Adulte/Films sur CD.php');return document.MM_returnValue">
<option>Films X sur CD</option>
<option>Films X sur DVD</option>
</select>



ni à cette ligne :

<ital><select onchange="window.open(this.value,'mainFrame');" name="select">
<option>Choisissez</option>
<option value="/PAGES/Adultes/Films sur CD.php">Dessins-Animes sur CD</option> // cadre central ou vont apparaitre les photos
<option value="/PAGES/Adultes/Films sur DVD.php">Dessins-Animes sur DVD</option> // cadre central ou vont apparaitre les photos
</select>


maintenant si tu veux les corriger ces deux lignes ,(tu peux le faire si tu en as envie) c'est ton choix....moi, persdonnellement, je prefere d'abord regler a deux le souci actuel
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
28 juil. 2011 à 14:50
Ok là je pense que je comprends...

Note : Là tu m'as donné le code source de ta page, et non pas le contenu d'une balise <frame>. Mais c'est normal, car tu n'as pas de telle balise dans cette page.

Ce que je comprends, c'est que JeuDeCadrePrincipal.html contient un <select> qui, lorsqu'on choisit une des options qu'il présente, ordonne à la même <frame> qui contient JeuDeCadrePrincipal.html (à savoir, la <frame> nommée mainFrame) de charger une page comme Films sur CD.php. C'est bien ça ?

Donc j'en conclus que, dans l'ordre, la <frame> nommée mainFrame appelle (peu importe la manière) la page Films sur CD.php qui, à son tour, va appeler OnlyFile_FilmsSurCD.php ? Peux-tu me dire si j'ai raison ou, sinon, me corriger ?
0
Utilisateur anonyme
28 juil. 2011 à 15:14
j'explique....

En fait, j'ai une page web qui contient le menu , donc une <frame> html (CadreDeGauche.html) qui est "associé" (si je peux le dire comme cela) a une page php (CadreDeGauche.php).

Losque je clique par exemple sur une vidéo , sur Films sur CD.php s'ouvre dans le cadre CadrePrincipal.html. Cette page est composé de plusieurs photos (de liens).

Qui à son tour (lorsque je veux un peu plus de detail de cette video) appelle CadrePrincipal.html

voila...voila....est-ce plus clair ?
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
Modifié par coeus le 28/07/2011 à 15:21
Donc tu cliques sur une vidéo dans le menu (CadreDeGauche.html), et la <frame> mainFrame, qui contenait alors la page CadrePrincipal.html, se rafraîchit et charge plutôt la page Films sur CD.php ?
0
Utilisateur anonyme
28 juil. 2011 à 16:32
oui c bien cela
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
29 juil. 2011 à 22:07
Ok je change de lignée de commentaires...

Attends un peu là... Es-tu en train de me dire qu'un fichier qui se trouve sur le lecteur F: tente d'appeler un fichier qui est sur le lecteur C: ?
0
Le ficher Films sur CD.php qui se trouve sur le F: appelle bien OnlyFile_FilmsSurCD.php qui se trouve aussi sur le F:

ps : si tu viens à aller en vacance et que tu ne peux pas aller sur CCM à ton boulot, fais-le moi savoir.
Dis moi dans ce cas quand tu seras disponible.
0
Apparemment pas de reponse depuis le 29/07/2011.
Tu dois etre en conge et parti en vacance.

j'attendrai ton retour sur CCM...

a bientôt
0
Utilisateur anonyme
16 août 2011 à 15:05
coeus, toujours pas de reponse de ta part.....
Tu es rentre ou pas ?
0
Utilisateur anonyme
31 août 2011 à 00:16
bonjour ou bonsoir coeus,

m'aurais tu oublié......?
j'attends de tes nouvelles.
A Bientot
0
Utilisateur anonyme
13 sept. 2011 à 11:22
j'ai réussit é resoudre mon probleme.
Merci à toi Coeus
0