PHP, affichage dossiers, pb \ et /
Résolu/Fermé
redyom
Messages postés
19
Date d'inscription
jeudi 25 octobre 2007
Statut
Membre
Dernière intervention
7 janvier 2008
-
2 nov. 2007 à 10:42
redyom - 17 juil. 2009 à 12:54
redyom - 17 juil. 2009 à 12:54
A voir également:
- PHP, affichage dossiers, pb \ et /
- Easy php - Télécharger - Divers Web & Internet
- Affichage double ecran - Guide
- Windows 11 affichage classique - Guide
- Comment agrandir l'affichage de l'écran - Guide
- Sélectionnez une application qui permet d’accéder aux dossiers et fichiers d’un ordinateur. - Guide
12 réponses
redyom
Messages postés
19
Date d'inscription
jeudi 25 octobre 2007
Statut
Membre
Dernière intervention
7 janvier 2008
2 nov. 2007 à 10:46
2 nov. 2007 à 10:46
Euh en fait j'avai pas vu mais c'est encore plus chaint que ça :)
Quand il liste les fichiers qu sont à la racine le lien est bon :
par exemple
http://127.0.0.1/tests/concatenation.php
Mais pour tous les autres il me met le lien en partant de c:\program files etc etc...
Bref, donc en gros il faudrait que je puisse avoir un lien de type http://127.0.0.1/dossier/fichier.php pour chaque fichiers de tous mes sous dossiers
Voilà :)
Quand il liste les fichiers qu sont à la racine le lien est bon :
par exemple
http://127.0.0.1/tests/concatenation.php
Mais pour tous les autres il me met le lien en partant de c:\program files etc etc...
Bref, donc en gros il faudrait que je puisse avoir un lien de type http://127.0.0.1/dossier/fichier.php pour chaque fichiers de tous mes sous dossiers
Voilà :)
Archeus01
Messages postés
1571
Date d'inscription
mercredi 3 octobre 2007
Statut
Membre
Dernière intervention
9 juin 2022
449
2 nov. 2007 à 10:47
2 nov. 2007 à 10:47
Dans le navigateur, tu remarqueras que ce n'est pas des antislashs mais bel et bien des slash. Essaye d'ouvrir un fichier avec ton navigateur (fichier->ouvrir) et tu te retrouveras avec une adresse du genre :
file:///C:/Documents%20and%20Settings/Administrateur/Mes%20documents/maths/parcoursLargeur.htm
file:///C:/Documents%20and%20Settings/Administrateur/Mes%20documents/maths/parcoursLargeur.htm
redyom
Messages postés
19
Date d'inscription
jeudi 25 octobre 2007
Statut
Membre
Dernière intervention
7 janvier 2008
2 nov. 2007 à 10:49
2 nov. 2007 à 10:49
Salut,
bah oui justement je m'en rend compte :)
Comment ça se fait qu'il y ait des "problèmes" avec les slash et antislash, ça devrait pas être QUE des slash normalement si c'est des liens web ?
bah oui justement je m'en rend compte :)
Comment ça se fait qu'il y ait des "problèmes" avec les slash et antislash, ça devrait pas être QUE des slash normalement si c'est des liens web ?
Archeus01
Messages postés
1571
Date d'inscription
mercredi 3 octobre 2007
Statut
Membre
Dernière intervention
9 juin 2022
449
2 nov. 2007 à 11:04
2 nov. 2007 à 11:04
Le problème ne vient pas à mon avis des slash et antislash.
Si tu arrives à ouvrir les fichiers qui sont dans le dossier test et pas les autres... Mauvaise gestion du PHP? Tu as du installer un logiciel qui "comprends le PHP". (logiciel type wamp). Hé bien avec WAMP, il ne gèrera sur mon PC que les fichiers PHP mis dans le répertoire adéquate.
echo "<img src='photos/ordinateur.jpg'>"
revient en fait chez moi à aller à C:\wamp\www\site\Photos\ordinateur.jpg
Et évidemment, le programme ne fera comme si rien n'existe en dessous du dossier www
[edit] Dés que j'essaye effectivement d'atteindre un fichier qui n'est plus dans le sous-dossier www, et je ne peux pas.
Ton http://127.0.0.1 doit déjà correspondre, lui aussi, à un dossier sous lequel tu ne peux atteindre aucun fichier avec des commandes du style echo "<img src='../../../ordinateur.jpg'>".
Par contre, si je met un lien direct echo "<img src='c:/ordinateur.jpg'>"; la oui sa marche <- Peut-être revoir ton code dans ce sens.
Si tu arrives à ouvrir les fichiers qui sont dans le dossier test et pas les autres... Mauvaise gestion du PHP? Tu as du installer un logiciel qui "comprends le PHP". (logiciel type wamp). Hé bien avec WAMP, il ne gèrera sur mon PC que les fichiers PHP mis dans le répertoire adéquate.
echo "<img src='photos/ordinateur.jpg'>"
revient en fait chez moi à aller à C:\wamp\www\site\Photos\ordinateur.jpg
Et évidemment, le programme ne fera comme si rien n'existe en dessous du dossier www
[edit] Dés que j'essaye effectivement d'atteindre un fichier qui n'est plus dans le sous-dossier www, et je ne peux pas.
Ton http://127.0.0.1 doit déjà correspondre, lui aussi, à un dossier sous lequel tu ne peux atteindre aucun fichier avec des commandes du style echo "<img src='../../../ordinateur.jpg'>".
Par contre, si je met un lien direct echo "<img src='c:/ordinateur.jpg'>"; la oui sa marche <- Peut-être revoir ton code dans ce sens.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
redyom
Messages postés
19
Date d'inscription
jeudi 25 octobre 2007
Statut
Membre
Dernière intervention
7 janvier 2008
2 nov. 2007 à 11:21
2 nov. 2007 à 11:21
Re-salut :)
Je crois que j'ai réussi, avec ce code là ça fonctionne
Je vais faire d'autres test mais j'ai bon espoir que ça marche enfin :)
Je crois que j'ai réussi, avec ce code là ça fonctionne
<?php function scan($repert) { $dir = opendir($repert); if($dir) // suite au commentaire { while (false !== ($f = readdir($dir))) //lecture du contenu ,prend en compte si le fichier est nommé 0 et n'arrete la boucle merci pour cette remarque très judicieuse :) { if(is_file($repert.$f)) { //echo '<span class="fichier">|__'.$f.'</span><br />'; echo '<a target="_blank" href='.$f.'>'.str_replace(".pdf","",str_replace("_"," ",$f)).'</a><br>'; } if(is_dir($repert.$f) && $f!=".." && $f!="." ) // on regarde si il ya des sous répertoires si oui on recommence la fonction. { echo '<ul><span class="dossier">'.$f.'</span><br />'; $new_dir=realpath($repert.$f); ///chemin absolu du répertoire scan("$new_dir/"); //fonction récurrente qui prend le chemin absolu du dossier et le scanne à nouveau. } } } echo "</ul>"; } //Utilisation de la fonction scan('./'); echo '<br><br>OK'; ?>
Je vais faire d'autres test mais j'ai bon espoir que ça marche enfin :)
Archeus01
Messages postés
1571
Date d'inscription
mercredi 3 octobre 2007
Statut
Membre
Dernière intervention
9 juin 2022
449
2 nov. 2007 à 11:29
2 nov. 2007 à 11:29
N'oublie aps de mettre ton sujet en tant que résolu :).
redyom
Messages postés
19
Date d'inscription
jeudi 25 octobre 2007
Statut
Membre
Dernière intervention
7 janvier 2008
2 nov. 2007 à 11:40
2 nov. 2007 à 11:40
Arrrrggghhh, toujours pas résolu!!!!
Je pensai que j'y étais mais non, toujours pas :)
J'arrive enfin à afficher tout ce que je veux MAIS... les liens ne comportent pas les sous dossiers! Je n'ai plus de probleme de slash ou antislash, la liste des fichiers contenus dans les sous-dossiers est OK mais le lien zape le sous-dossier.
Voici le code que j'ai maintenant :)
Au final ça m'affiche :
Dossier
fichier.pdf <== lien cliquable
Autre_dossier
autre_fichier.pdf <== lien cliquable aussi
Mais les liens zapent les sous-dossiers : j'ai ça comme lien http://127.0.0.1/Monsite/22551A2RT/ATTESTATIONS/fichier.pdf
Alors que je devrai avoir http://127.0.0.1/Monsite/22551A2RT/ATTESTATIONS/Dossier/fichier.pdf
Rholala j'aurai pas du essayer tous ces codes différents je m'y retrouve plus :)
Je pensai que j'y étais mais non, toujours pas :)
J'arrive enfin à afficher tout ce que je veux MAIS... les liens ne comportent pas les sous dossiers! Je n'ai plus de probleme de slash ou antislash, la liste des fichiers contenus dans les sous-dossiers est OK mais le lien zape le sous-dossier.
Voici le code que j'ai maintenant :)
<?php function scan($repert) { $num_cont= mysql_fetch_array(mysql_query("SELECT cont_num, cont_pol, pol_nom, pol_id, comp_id, comp_nom, cont_comp FROM contrat, police, compagnies WHERE pol_id = cont_pol AND comp_id = cont_comp AND cont_id='".$_SESSION['extranetUser_contrat']."'")) or die (mysql_error()); $dir = opendir($repert); if($dir) // suite au commentaire { while (false !== ($f = readdir($dir))) //lecture du contenu ,prend en compte si le fichier est nommé 0 et n'arrete la boucle merci pour cette remarque très judicieuse :) { if(is_file($repert.$f)) { //echo '<span class="fichier">|__'.$f.'</span><br />'; echo '<a target="_blank" href='.$num_cont['cont_num'].'/ATTESTATIONS/'.$f.'>'.str_replace(".pdf","",str_replace("_"," ",$f)).'</a>'; } if(is_dir($repert.$f) && $f!=".." && $f!="." ) // on regarde si il ya des sous répertoires si oui on recommence la fonction. { echo '<ul><span class="dossier">'.$f.'</span><br />'; $new_dir=realpath($repert.$f); ///chemin absolu du répertoire scan("$new_dir/"); //fonction récurrente qui prend le chemin absolu du dossier et le scanne à nouveau. } } } echo "</ul>"; } //Utilisation de la fonction ?> <?php scan($num_cont['cont_num'].'/ATTESTATIONS/'); echo '<br><br>OK'; ?>
Au final ça m'affiche :
Dossier
fichier.pdf <== lien cliquable
Autre_dossier
autre_fichier.pdf <== lien cliquable aussi
Mais les liens zapent les sous-dossiers : j'ai ça comme lien http://127.0.0.1/Monsite/22551A2RT/ATTESTATIONS/fichier.pdf
Alors que je devrai avoir http://127.0.0.1/Monsite/22551A2RT/ATTESTATIONS/Dossier/fichier.pdf
Rholala j'aurai pas du essayer tous ces codes différents je m'y retrouve plus :)
Archeus01
Messages postés
1571
Date d'inscription
mercredi 3 octobre 2007
Statut
Membre
Dernière intervention
9 juin 2022
449
2 nov. 2007 à 12:15
2 nov. 2007 à 12:15
Dans
href='.$num_cont['cont_num'].'/ATTESTATIONS/'.$f.'>
$f représente bien juste le nom du fichier ou j'ai mal compris ton code?
Si tu remplaces ce morceau par
href='.$num_cont['cont_num'].'/ATTESTATIONS/'.$repert.$f.'>'
Sa fait n'importe quoi je pense mais vu que $f représente seulement le nom du fichier (selon moi, mais je suis pas sur), c'est normal qu'il n'y ait pas de sous-dossier
href='.$num_cont['cont_num'].'/ATTESTATIONS/'.$f.'>
$f représente bien juste le nom du fichier ou j'ai mal compris ton code?
Si tu remplaces ce morceau par
href='.$num_cont['cont_num'].'/ATTESTATIONS/'.$repert.$f.'>'
Sa fait n'importe quoi je pense mais vu que $f représente seulement le nom du fichier (selon moi, mais je suis pas sur), c'est normal qu'il n'y ait pas de sous-dossier
redyom
Messages postés
19
Date d'inscription
jeudi 25 octobre 2007
Statut
Membre
Dernière intervention
7 janvier 2008
2 nov. 2007 à 12:25
2 nov. 2007 à 12:25
Oui $f c'est le nom de fichier, mais justement j'ai essayé en mettant $repert.$f mais le lien devient :
http://127.0.0.1/Monsite/22551A2RT/ATTESTATIONS/c:\program !!!!!
Donc ouai ça fait n'importe quoi, ce qu'il faudrait c'est que je puisse différencier mes dossier/sous-dossiers et mes fichiers? que ce soit pas dans la même variable.
http://127.0.0.1/Monsite/22551A2RT/ATTESTATIONS/c:\program !!!!!
Donc ouai ça fait n'importe quoi, ce qu'il faudrait c'est que je puisse différencier mes dossier/sous-dossiers et mes fichiers? que ce soit pas dans la même variable.
Archeus01
Messages postés
1571
Date d'inscription
mercredi 3 octobre 2007
Statut
Membre
Dernière intervention
9 juin 2022
449
2 nov. 2007 à 12:35
2 nov. 2007 à 12:35
Oui.
Une suggestion me vient en tête mais que tu n'es pas du tout obligé de suivre : dans un tableau avec un petit truc du genre $repert[$i]
Une suggestion me vient en tête mais que tu n'es pas du tout obligé de suivre : dans un tableau avec un petit truc du genre $repert[$i]
redyom
Messages postés
19
Date d'inscription
jeudi 25 octobre 2007
Statut
Membre
Dernière intervention
7 janvier 2008
2 nov. 2007 à 15:47
2 nov. 2007 à 15:47
Oué je crois que je vais essayer quelque chose comme ça. Mais là ça commence à me prendre la tête, je vais me faire une petite fonction maison pour faire tout ça selon mon bon désir :) :) Je posterai mon code quand j'aurai réussi :)
En tout cas merci beaucoup Archeus01 :)
Bonne journée
En tout cas merci beaucoup Archeus01 :)
Bonne journée
PHP, affichage dossiers, pb \ et /
redyom, le vendredi 2 novembre 2007 à 10:42:33
bonjour, je suis trés intéréssé par ton code j'ai eu bcp de probléme aussi pour afficher mes rép et sous rep tu peux m'expliquer stp comment ta fait si sa te dérange pas
redyom, le vendredi 2 novembre 2007 à 10:42:33
bonjour, je suis trés intéréssé par ton code j'ai eu bcp de probléme aussi pour afficher mes rép et sous rep tu peux m'expliquer stp comment ta fait si sa te dérange pas
Salut!
Je suis plus là dessus depuis longtemps mais au final j'ai utilisé ce code là :
https://codes-sources.commentcamarche.net/
voilà :)
Je suis plus là dessus depuis longtemps mais au final j'ai utilisé ce code là :
https://codes-sources.commentcamarche.net/
voilà :)