Peut on garder une variable php en mémoire? - PHP - Programmation
Marsh Posté le 03-05-2013 à 11:28:55
salut
logique tu remet ta val $inc à 1 a chaque utilisation
tu as 2 possibilitées :
fichier txt ou aller controler le nom du dernier fichier upload et lui incrementer 1 .
mais bon le plus simple c'est le fichier txt
et lire ton fichier et le charger dans $inc
Marsh Posté le 03-05-2013 à 11:51:39
Citation : salut |
Oui j'ai utilisé un fichier texte et le moins qu'on puisse dire c'est que c'est relativement simple et efficace .
Marsh Posté le 03-05-2013 à 13:46:27
Pourquoi ne pas nommer le fichier uploadé selon sa somme md5 ou sha1 comme le font beaucoup de script ?
De plus cela éliminera les attaques du type robot/user qui aspire/regarde toutes les images simplement en incrémentant, c'est utile sauf si tes images ne sont pas privés.
Comme théoriquement tu devrait ne pas avoir avoir de collision de hash tu peux nommer tranquille. Autre avantage si un gars réupload la même image tu la stocke pas (puisque t'as déjà un fichier avec la même somme) et tu lui donne juste le bon nom.
Une autre solution pour éviter les aspiration et en plus sans fichier, tu fais un nombre aléatoire, tu regarde si c'est déjà pris et tu refais un autre nombre si déjà existant.
Marsh Posté le 03-05-2013 à 14:12:42
Citation : Pourquoi ne pas nommer le fichier uploadé selon sa somme md5 ou sha1 comme le font beaucoup de script ? |
Ton idée semble vraiment bien mais je ne comprend malheureusement pas ce qu'il faut faire, je suis encore débutant dans la création de site donc autant te dire que je débute sur le php et ses fonctions
Marsh Posté le 04-05-2013 à 12:04:31
Tu prends le nom du fichier filé par l'utilisateur et tu transformes ce nom en md5 via la fonction md5(). Marche aussi avec sha(). Au passage, pour résoudre le pb des fichiers ayant le même nom, tu peux faire un md5($Filename.time()); Comme ça, t'es tranquille
Marsh Posté le 03-05-2013 à 10:36:07
Bonjour à tous,
Je suis en train de créer un système d'Upload tout simple.
Voici le formulaire d'upload:
Voici la fonction php:
Le but de mon upload est de donner comme nom aux fichiers uploadés un chiffre qui s'incrémente à chaque nouveau fichier uploadé.
Exemple: le premier fichier s’appellera "1.jpg", le deuxième "2.jpg" etc...
Voici mon code qui incremente
Problème, les variables sont réinitialisées à chaque chargement de page, rendant mon incrémentation obsolète...
Y aurait-il un moyen de stocker des variables php en mémoire ou quelque chose?
La seule idée qui me vient en tête serait de stocker à chaque upload la valeur incrémenté dans un fichier texte .