Bonjour, j'aimerais pouvoir récupérer les dossiers et fichiers appartenant eux même à un dossier dans CakePHP, et pouvoir naviguer à l'intérieur de ceux-ci, en ajouter/modifier/supprimer.

J'ai essayer d'utiliser la fonction $files = $dir->tree() pour afficher une arboresence de mon dossier mais ça m'affiche un truc du style :

array(
    (int) 0 => array(
        (int) 0 => '*\app\webroot\files\Dossier parent',
        (int) 1 => '*\app\webroot\files\Dossier parent\dossier\dossier',
        (int) 2 => '*\app\webroot\files\Dossier parent\Dossier\dossier\Dossier'
    ),
    (int) 1 => array(
        (int) 0 => '*\app\webroot\files\Dossier parent\dossier\dossier\test.txt',
        (int) 1 => '*\app\webroot\files\Dossier parent\dossier\test.txt'
    )
)

Je récupère donc bien mon arborescence mais je ne vois pas comment exploiter celle ci afin de pouvoir faire les manipulations que j'ai cité au dessus. Suis-je sur la bonne voie ou complètement à coté de la plaque ?

Merci d'avance de vos réponses.

9 réponses


Lartak
Réponse acceptée

Tu n'es pas obligé d'utiliser le CMS, tu auras peut-être au pire quelques petites modifications à faire, mais à ce que je sache c'est du code général et non particulièrement spécifique au CMS.

Bonsoir

je souhaiterai faire exactement la même chose ! Si tu as trouvé une solution pourrais tu las partager ?

Merci

Bonsoir.
As-tu regardé ici ?
Sinon après il te faut faire aussi avec des fonctions PHP, il ne faut pas se contenter uniquement des API, Helpers et composants de CakePHP.

Helongh
Auteur

Bonjour, oui j'avais bien lu la doc, le truc est que je n'avais pas le temps de faire un truc maison parfaitement fonctionnel.

J'ai finalement trouvé ceci : Document Manager
C'est un plugin pour Cake, qui, avec un peu de configuration et d'adaptation fonctionne à merveille.

Cordialement

Il me semble qu'il te permet d'ajouter et de supprimer des fichiers/dossiers, mais pas d'éditer le contenu des fichiers.

Helongh
Auteur

Non en effet, mais c'était une option très secondaire, d'autant plus qu'il y aura une foultitude de type de documents qui ne seront pas éditable, et c'était le seul qui fonctionnait à peu près correctement jusque maintenant. Le problème reste maintenant la gestion des droits, étant donné que de base celui-ci est configuré avec Authake, sauf que j'ai déjà mon système d'identification et que je souhaite le garder, je dois donc trifouiller dans le code, vu que la "doc" explique seulement quelles fonctions changer et pas comment.

Bonsoir.
Sinon tu peux utiliser le plugin FileManager du CMS Croogo qui utilise CakePHP.

Helongh
Auteur

Bonjour,

En effet j'avais déjà vu ce plugin mais j'ai toujours eu un doute quant au fait qu'il faille également utiliser le CMS.

Ah cool, merci pour les infos, je testerai ça un peu plus tard voir comment ça fonctionne.