Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

WEBFTP - GÉRER UN SITE EN LIGNE - EXPLORATEUR DE FICHIERS


Information sur la source

Catégorie :Fichier / Disque Classé sous : gérer, ligne, explorateur Niveau : Débutant Date de création : 13/03/2006 Date de mise à jour : 06/06/2006 18:44:04 Vu / téléchargé: 8 982 / 2 160

Note :
9 / 10 - par 2 personnes
9,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (12)
Ajouter un commentaire et/ou une note

Description

Cliquez pour voir la capture en taille normale
Je suis parti d'une source d'Aze555666, merci à lui.
Je l'ai modifiée, sécurisée et améliorée pour en faire une fonction qu'on peut appeler depuis n'importe quelle page.

Comme avec un webftp classique, on peut donc explorer le site et gérer tous les fichiers en ligne : créer, supprimer, renommer les dossiers et les fichiers, uploader, downloader... afficher les fichiers par ordre alphabétiquement, par type de fichiers... Vous pouvez aussi modifiez vos scripts directement en ligne.

Outre que je pense avoir supprimé la plupart des bugs, géré les erreurs et pris en charge les noms à problèmes (sans point, à plusieurs point, caractères accentués, le .. à la racine du site, etc.), la grosse spécificité de cette version du code est de pouvoir limiter l'accès de l'internaute à certains dossiers et fichiers.

Je m'explique : je donne l'accès à cette page à des personnes qui pourront modifier certains éléments de mon site et pas d'autres. Certains éléments pourront donc être totalement invisibles et totalement protégés (fichiers et répertoires : 2 options : en lecture seule ou totalement invisibles). Tout le contenu d'un repertoire protégé est protégé de la même manière (sous-dossiers inclus). Possibilité aussi de banir un type de fichier du : invisibles sur le site et impossible à uploader (par extension plutôt que par type, en attendant mieux).

Vous pouvez définir des noms de fichiers qui seront interdits partout sur le site (par exemple tous les fichiers dénommés fichier.exe) ou juste un fichier particulier ('./fichier.txt')

J'ai intégré diverses options de sécurité, au final l'utilisateur ne devrait jamais pouvoir accéder plus haut dans le site que le répertoire d'où est appelée la fonction.
Une version épurée de ce webftp est présente dans le zip, pour ceux qui veulent juste l'utiliser pour eux-mêmes.

Voilà, n'oubliez pas de sécuriser l'accès au fichier ftphp.php (je propose un bout de code pour ca en commentaire).
Si vous trouvez des failles de sécurité, je serais ravi de les connaître.
 

Source

  • //exemple d'utilisation :
  • <?php include('ftphp.php'); ?>
//exemple d'utilisation :

<?php include('ftphp.php'); ?>

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

13 mars 2006 20:59:34 :
comment utiliser
13 mars 2006 23:18:59 :
j'avais oublié les images
14 mars 2006 13:31:17 :
0
15 mars 2006 14:14:46 :
détail
06 juin 2006 18:44:04 :
ras

Commentaires et avis

signaler à un administrateur
Commentaire de malalam le 14/03/2006 11:21:06 administrateur CS

Hello,

j'ai parcouru rapidement, et je me suis arrêté parce qu'un truc m'a perturbé : pourquoi utilises-tu ces 'global' ??
Si tu veux avoir une variable modifiée dans un cadre global poar une fonction, passe la en paramètre déjà, si tu en as besoin, et retourne-la, ensuite ? Ou utilise à la limite le passage par référence. Mais global...boaf.

signaler à un administrateur
Commentaire de Evangun le 14/03/2006 11:49:40

Bonjour,
je ne voyais pas le problème mais si tu me dis que c'est à éviter, je veux bien te croire :) mais histoire de ne pas mourir idiot, il y a une raison à ça?

signaler à un administrateur
Commentaire de malalam le 14/03/2006 12:52:16 administrateur CS

Disons que cela peut prêter à confusion dans certains cas (voir la doc php.net sur global).
De plus, à quoi sert de redéclarer global x fois une variable, quand tu as x fonctions ? Autant la passer par référence, ou la passer par copie et la retourner. N'oublions pas que global fait utiliser la variable déclarée global comme une référence.

signaler à un administrateur
Commentaire de Evangun le 14/03/2006 13:37:54

Si j'utilise global, il faut bien que je le fasse à chaque fonction, vu que ne fais pas de superglobals... la prochaine fois j'essaierai d'utiliser des paramètres, mais qd il y en a plein, ça devient vite le b***** et je trouve qu'on ne sait plus trop quelles sont les vraies variables qui sont traitées dans la fonction...

signaler à un administrateur
Commentaire de galadriann le 14/03/2006 14:48:42

Pour eviter des problemes tu peux aussi utiliser une variable de session ou $GLOBALS comme le font certains pro...
mais je sais que cette solution est fort critiquee donc ...

signaler à un administrateur
Commentaire de FhX le 16/03/2006 00:08:37

Tiens, jvais poster parce que j'ai vu que Malalam commencait à parler de n'importe quoi :p

Les globals... c'est bien, mais c'est un peu moche. J'aurais peut-être vu une autre solution. (Ah voui mais moi je raisonne en classe, voila pourquoi)


Alors par contre, un truc auquel je reste indéniablement le même, c'est pour l'utilisation d'une fonction :

Une fonction, ca sert pour faire un truc "en général". C'est fait exprès pour pouvoir être appelé rapidement et exécuter une tache précise et ce, plusieurs fois.
Chez toi, tes fonctions ne servent qu'une fois. A ce prix la, autant les virer tu gagnes même de la vitesse !


Le principe n'est pas trop mal, la facon de faire par contre laisse un peu à désirer.
Pareil pour tes returns... utilises TRUE/FALSE au lieu de 1 et -1. On est plus à PHP3 :D

signaler à un administrateur
Commentaire de FhX le 16/03/2006 00:09:00

Oh chui con, je regarde la fonction de callback moi...

Okay, jvais aller me coucher j'ai rien dit :p

signaler à un administrateur
Commentaire de malalam le 16/03/2006 07:46:29 administrateur CS

Bah même sans classe, les globales sont inutiles. C'est pas le principe non plus du fonctionnel, de se balader des variables globales. Quand on a un problème sur un return un peu limitatif, on  retourne un tableau. Quand on a besoin d'une variable dans une fonction, on la passe en paramètre.
Ou alors, on code objet, effectivement!

signaler à un administrateur
Commentaire de linkid le 17/03/2006 13:13:25

Juste comme çà : il n'y a pas de sql... serait-ce parce que tu n'utilise pas de base de donnée ???!!!

signaler à un administrateur
Commentaire de malalam le 17/03/2006 13:20:42 administrateur CS

Heu, c'est un explorateur de fichiers, pourquoi il utiliserait une bdd...?

signaler à un administrateur
Commentaire de FhX le 21/03/2006 01:40:45

Pour faire de l'arborescence de tables lol ? ;) ;) ;)

signaler à un administrateur
Commentaire de amteur le 03/07/2007 14:17:38

y a un bug , un anti slash est oublié sur la ligne 354 !!
ça bug tous ^^
merci de le réparer

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Sécuriser+gérer les erreurs HTTP+mettre en ligne un site PHP/MySQL [ par Leila83 ] MES CORDIALES SALUTATIONS A TS LES DEV DE PHPCS.COM ET EN PARTICULUER AUX ADMINS DU SITE! Je suis en train Code propre [ par semprecorsu2b ] Bonjour à tous,j'aimerais savoir comment faire un code php propre :je m'explique quand on écrit en HTML, si dans notre code on va à la ligne, le code Sauvegarde de ma base de données: problemes de retour à la ligne [ par Ivynox ] Je vais vous exposer brièvement mais précisément mon probleme: j'ai réalisé un script de sauvegarde totale de ma base de données dans un fichier, mais Type Text de MySQL [ par DarkTiteuf ] Bonjour à tous.Voila j'ai des données dans une base MySQL, dans un champ de type text.Dans ce champ, il y a plusieurs lignes avec un retour à la ligne mail en php [ par AlouiGroup ] je veut de l'aide sur la configuration requise pour envoyer un e-mail en PHP sans rencontrer le message d'erreur suivant:(Warning: mail(): Failed to c formulaire et table [ par guyvdv ] Bonjour, j un petit problemdans ce script tres simple j recoi evidement le champs text et le bouton 'submit' sur une ligne,MAIS endesous de cette lign comment gérer le retour du navigateur [ par stuf ] Bonjour je suis en train de gérer une page avec avec les sessions.dans une page (aff.php) il ya de l'affichage (pas besoin detre connecté) et il y a d Compter une chaine de caractère [ par shadow1779 ] Bonjour,je me suis fais en php un systeme pour coller un code source , comme cela est disponible, et ceci pour diverses raisons, j'essai néamoins de f rajouter une ligne à mon tableau en cliquant sur un bouton [ par Deis94 ] Voila jai un petit souci et je bricole pas mal pour men sortir (suffit de jeter un coup d'oeilà mon script )en considérant que je suis dans un tableau Une drole de ligne dans le code source [ par jipe32 ] Bonsoir,je viens de faire Ctrl U (sous firefox, on affiche le code source de la page, bon à savoir) et je suis tombé sur ce truc bizarre:wEPDwULLTExMj


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,515 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.