Problème fonction opendir
Absot
Messages postés
819
Statut
Membre
-
OulaaLaNoisette -
OulaaLaNoisette -
Slt, j'ai un problème avec ma fonction readdir, j'ai un message d'erreur.. :/
Mon code :
[url=http://www.zimagez.com/zimage/16bb9cc2becaa70a888cc22ecedc52999.php][img]http://www.zimagez.com/miniature/16bb9cc2becaa70a888cc22ecedc52999.png[/img][/url]
Et voilà mon message d'erreur:
[url=http://www.zimagez.com/zimage/2e99fee2398c0e33584fbb9ae3cbc5472.php][img]http://www.zimagez.com/miniature/2e99fee2398c0e33584fbb9ae3cbc5472.png[/img][/url]
Je pense que j'ai bien utiliser ma fonction?
Fonction opendir: http://www.manuelphp.com/php/function.opendir.php
Comme j'ai une erreur avec ma fonction opendir, c'est normal que j'en ai une à ma fonction readdir?
J'ai fais un echo $repertoire et il m'indique le bon fichier, à savoir le fichier images qui est dans le même répertoire que là où est ma page .php
Voilà le répertoire ou sont mes pages et mon répertoire image, ma pahe que j'ai screené est "affiche.php"
[url=http://www.zimagez.com/zimage/1fbc4783c4c7a2a0c3c645ea572afb596.php][img]http://www.zimagez.com/miniature/1fbc4783c4c7a2a0c3c645ea572afb596.png[/img][/url]
Mon code :
[url=http://www.zimagez.com/zimage/16bb9cc2becaa70a888cc22ecedc52999.php][img]http://www.zimagez.com/miniature/16bb9cc2becaa70a888cc22ecedc52999.png[/img][/url]
Et voilà mon message d'erreur:
[url=http://www.zimagez.com/zimage/2e99fee2398c0e33584fbb9ae3cbc5472.php][img]http://www.zimagez.com/miniature/2e99fee2398c0e33584fbb9ae3cbc5472.png[/img][/url]
Je pense que j'ai bien utiliser ma fonction?
Fonction opendir: http://www.manuelphp.com/php/function.opendir.php
Comme j'ai une erreur avec ma fonction opendir, c'est normal que j'en ai une à ma fonction readdir?
J'ai fais un echo $repertoire et il m'indique le bon fichier, à savoir le fichier images qui est dans le même répertoire que là où est ma page .php
Voilà le répertoire ou sont mes pages et mon répertoire image, ma pahe que j'ai screené est "affiche.php"
[url=http://www.zimagez.com/zimage/1fbc4783c4c7a2a0c3c645ea572afb596.php][img]http://www.zimagez.com/miniature/1fbc4783c4c7a2a0c3c645ea572afb596.png[/img][/url]
A voir également:
- Problème fonction opendir
- Fonction si et - Guide
- Fonction miroir - Guide
- Fonction moyenne excel - Guide
- Fonction remplacer sur word - Guide
- Fonction somme excel - Guide
7 réponses
bouh !!
while (($file = readdir($curseur)) !== false) plutôt que while ($curseur != FALSE)
Ça serait déjà mieux je pense (:>).
while (($file = readdir($curseur)) !== false) plutôt que while ($curseur != FALSE)
Ça serait déjà mieux je pense (:>).
Oui mon tableau en première page a été généré
J'ai copier/coller ton " while (($file = readdir($curseur)) !== false) " et ça m'a mis une 3 ème erreur..
http://www.zimagez.com/zimage/143ce3894cbe623b9dea667ef4f18698f.php][img]http://www.zimagez.com/miniature/143ce3894cbe623b9dea667ef4f18698f.png
ligne 14 = $curseur=opendir($repertoire);
ligne 15 = $file=readdir($curseur);
ligne 33 = while (($file = readdir($curseur)) !== false){
Je mets mon code ça ira plus vite en sahcant que $repertoire est egal au nom du répertoire soit "images"
<?php
$repertoire=$_POST['rep'];
$image=$_POST['image'];
$largeur=$_POST['largeur'];
$hauteur=$_POST['hauteur'];
$curseur=opendir($repertoire);
$file=readdir($curseur);
$nbp=0;
function getExtension($image){
$trunc = split('[.]', $image);
if(sizeof($trunc)>1){
return $trunc[sizeof($trunc)-1];
}else {
return strtolower(substr($image,-3));
}
}
echo "<TABLE BORDER='1'>";
while (($file = readdir($curseur)) !== false){
$tableau=array($file);
for ($i=0; $i < sizeof($tableau); $i++){
if ( (getExtension($file)=="jpg") or (getExtension($file)=="png") or (getExtension($file)=="gif") ){
$nbp=$nbp+1;
echo ("<tr>");
echo ("<TD>" . "<IMG SRC=".$tableau[$i]." WIDTH=".$largeur." HEIGHT=".$hauteur.">"."</TD>");
}
if ($nbp==$image){
echo "</TR><TR>";
}
}
}
echo "</TR>";
echo "</TABLE>";
J'ai copier/coller ton " while (($file = readdir($curseur)) !== false) " et ça m'a mis une 3 ème erreur..
http://www.zimagez.com/zimage/143ce3894cbe623b9dea667ef4f18698f.php][img]http://www.zimagez.com/miniature/143ce3894cbe623b9dea667ef4f18698f.png
ligne 14 = $curseur=opendir($repertoire);
ligne 15 = $file=readdir($curseur);
ligne 33 = while (($file = readdir($curseur)) !== false){
Je mets mon code ça ira plus vite en sahcant que $repertoire est egal au nom du répertoire soit "images"
<?php
$repertoire=$_POST['rep'];
$image=$_POST['image'];
$largeur=$_POST['largeur'];
$hauteur=$_POST['hauteur'];
$curseur=opendir($repertoire);
$file=readdir($curseur);
$nbp=0;
function getExtension($image){
$trunc = split('[.]', $image);
if(sizeof($trunc)>1){
return $trunc[sizeof($trunc)-1];
}else {
return strtolower(substr($image,-3));
}
}
echo "<TABLE BORDER='1'>";
while (($file = readdir($curseur)) !== false){
$tableau=array($file);
for ($i=0; $i < sizeof($tableau); $i++){
if ( (getExtension($file)=="jpg") or (getExtension($file)=="png") or (getExtension($file)=="gif") ){
$nbp=$nbp+1;
echo ("<tr>");
echo ("<TD>" . "<IMG SRC=".$tableau[$i]." WIDTH=".$largeur." HEIGHT=".$hauteur.">"."</TD>");
}
if ($nbp==$image){
echo "</TR><TR>";
}
}
}
echo "</TR>";
echo "</TABLE>";
Re,
1-
Déjà il faut virer le $file=readdir($curseur); en ligne 15 car le WHILE le fait itérativement.
2-
Peut tu mettre le message d'erreur entier stp sur les documents fournis ?
3-
Est tu sur de BIEN ouvrir un répertoire qui existe ??... affiche le avant de faire ton opendir et regarde si tu t'est pas trompé sur le nom - ça peut tenir à rien en fait - un oubli d'une lettre dans ton Path...donc donne un exemple de répértoire saisi et afiiché pour voir si sa structure est correcte.
4-
Normal que ça plante au readdir après que tu n'a pas pu déjà ouvrir ton répertoire.
1-
Déjà il faut virer le $file=readdir($curseur); en ligne 15 car le WHILE le fait itérativement.
2-
Peut tu mettre le message d'erreur entier stp sur les documents fournis ?
3-
Est tu sur de BIEN ouvrir un répertoire qui existe ??... affiche le avant de faire ton opendir et regarde si tu t'est pas trompé sur le nom - ça peut tenir à rien en fait - un oubli d'une lettre dans ton Path...donc donne un exemple de répértoire saisi et afiiché pour voir si sa structure est correcte.
4-
Normal que ça plante au readdir après que tu n'a pas pu déjà ouvrir ton répertoire.
Re,
Je mets mon code ça ira plus vite en sahcant que $repertoire est egal au nom du répertoire soit "images"
Attention !! :
--> C'est bien sur pas "images" mais le Path en entier :
$repertoire doit contenir un truc du genre "C:/PogramFiles/....../images" sinon PHP est incapable de trouver ton répertoire.
Je mets mon code ça ira plus vite en sahcant que $repertoire est egal au nom du répertoire soit "images"
Attention !! :
--> C'est bien sur pas "images" mais le Path en entier :
$repertoire doit contenir un truc du genre "C:/PogramFiles/....../images" sinon PHP est incapable de trouver ton répertoire.
Je deviens de plus en plus fou, j'ai beau rajouter un truc que j'ai tester sur une autre page qui fonctionne, je copie le code en vérifiant que tout correspond, je le colle sur ma nouvelle page et ça me met des erreur!! :(
2 - Voilà mon message d'erreur:
=http://www.zimagez.com/zimage/19eeff77d9716e5ea4371e66d70278376.php][img]http://www.zimagez.com/miniature/19eeff77d9716e5ea4371e66d70278376.png (désolé, je ne sais pas comment on affiche l'image... :/ )
3 - Oui je suis sûr que ce répertoire existe parce que mon TP se fait en 3 pages, la première ou l'on entre le chemin du répertoire, la deuxième page qui vérifie l'existence du répertoire et s'il existe bien, affiche un nouveau tableau et la dernière page qui affiche les images de mon répertoire
2 - Voilà mon message d'erreur:
=http://www.zimagez.com/zimage/19eeff77d9716e5ea4371e66d70278376.php][img]http://www.zimagez.com/miniature/19eeff77d9716e5ea4371e66d70278376.png (désolé, je ne sais pas comment on affiche l'image... :/ )
3 - Oui je suis sûr que ce répertoire existe parce que mon TP se fait en 3 pages, la première ou l'on entre le chemin du répertoire, la deuxième page qui vérifie l'existence du répertoire et s'il existe bien, affiche un nouveau tableau et la dernière page qui affiche les images de mon répertoire
Re,
Tu ne défini pas tout le chemin d'accès à ton répertoire comme expliqué - chez moi ça marche :
> J'ai rajouté les fonctions is_dir() qui teste si le répertoire existe bien (voir cour PHP).
------------------------------------------------------------------------------------------------------------
if (is_dir($repertoire))
{
if ($curseur=opendir($repertoire))
{
$nbp=0;
echo "<TABLE BORDER='1'>";
while (($file = readdir($curseur)) !== false)
{
$tableau=array($file);
for ($i=0; $i < sizeof($tableau); $i++)
{
if ( (getExtension($file)=="php") or (getExtension($file)=="png") or (getExtension($file)=="gif") )
{
$nbp=$nbp+1;
echo ("<tr>");
echo ("<TD><IMG SRC=$tableau[$i] WIDTH=$largeur HEIGHT=$hauteur></TD>");
}
if ($nbp==$image)
{
echo "</TR><TR>";
}
}
}
echo "</TR>";
echo "</TABLE>";
}
else
{
echo "Ce repertoire n'existe pas...";
}
}
else
{
echo "Ce repertoire n'existe pas...";
}
Tu ne défini pas tout le chemin d'accès à ton répertoire comme expliqué - chez moi ça marche :
> J'ai rajouté les fonctions is_dir() qui teste si le répertoire existe bien (voir cour PHP).
------------------------------------------------------------------------------------------------------------
if (is_dir($repertoire))
{
if ($curseur=opendir($repertoire))
{
$nbp=0;
echo "<TABLE BORDER='1'>";
while (($file = readdir($curseur)) !== false)
{
$tableau=array($file);
for ($i=0; $i < sizeof($tableau); $i++)
{
if ( (getExtension($file)=="php") or (getExtension($file)=="png") or (getExtension($file)=="gif") )
{
$nbp=$nbp+1;
echo ("<tr>");
echo ("<TD><IMG SRC=$tableau[$i] WIDTH=$largeur HEIGHT=$hauteur></TD>");
}
if ($nbp==$image)
{
echo "</TR><TR>";
}
}
}
echo "</TR>";
echo "</TABLE>";
}
else
{
echo "Ce repertoire n'existe pas...";
}
}
else
{
echo "Ce repertoire n'existe pas...";
}
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'ai déjà vérifié pour le nom du répertoire saisie, j'ai taper un truc bidon pour voir et ça m'affichais bien le message d'erreur, quand je tape C:\Logs, ça m'envoie à la page suivante sans message d'erreur et par exemple si je tape dfdfsfd, ça m'envoie sur la page d'erreur..
Lien de mon TP: http://guyonst.free.fr/ap/ap-fevrier.pdf
Ce n'est pas exactement ça qu'il faut que je fasse mais je n'ai pas trop compris donc je fais comme je le sens.. ^^
Lien de mon TP: http://guyonst.free.fr/ap/ap-fevrier.pdf
Ce n'est pas exactement ça qu'il faut que je fasse mais je n'ai pas trop compris donc je fais comme je le sens.. ^^