Probleme move_uploaded_file()

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Probleme move_uploaded_file()

Re: Probleme move_uploaded_file()

par Mirrix » 20 oct. 2011, 16:46

Le problème est de savoir comment accéder au serveur a partir de windows, il est protégé et invisible sur windows. Moi j'y accède seulement par du ftp pour transférer les fichiers .php de mon site web.

Re: Probleme move_uploaded_file()

par Mazarini » 20 oct. 2011, 16:37

Je pensais à une tache planifiée purement windows pour faire la copie du serveur vers L: puisqu'il me semblait que le problème était uniquement avec IIS.

Si la copie est rapide (peu de fichiers et petite taille) => copie de la totalité avec un fichier commande.
Si la copie est longue, script genre cscript pour copier en fonction d'une liste de nouveaux noms de fichier.

Re: Probleme move_uploaded_file()

par Mirrix » 20 oct. 2011, 16:34

Les fichiers sont tres petits (de l'ordre de quelques ko) mais je ne vois pas du tout comment procédé pour faire un tel script : quel protocole de transfert, quels fonctions ? ...

Re: Probleme move_uploaded_file()

par Mazarini » 20 oct. 2011, 16:20

Il nous manque des info sur le volume de fichiers à traiter.

Tu peux envisager une tache planifier qui copie les fichiers sur le disque L: dans la mesure on le volume est faible. Tu peux également faire un fichier avec les nouveaux nom des fichiers à copier pour les traiter par un script indépendamment de PHP.

Re: Probleme move_uploaded_file()

par Mirrix » 20 oct. 2011, 15:22

Je vois pas trop ce que tu veux dire.

Parce que moi si je laisse l'upload se faire sur le serveur ainsi que le download a partir du serveur il me faudra toujours une copie des fichiers du serveur sur le lecteur réseau L:\ et c'est ca qui me poste probleme, car je vois pas comment faire la copie par ftp.

Re: Probleme move_uploaded_file()

par moogli » 20 oct. 2011, 11:04

il te reste qu'une seule solution : un script php qui parcourt le répertoire qui t'intéresse et créer une archive dans le lequel tu fourre tous les fichiers dont tu a besoin et ensuite tu envoie le tous au navigateur (voir forcer un téléchargement).

Après tu peux faire un beau script style navigateur en php / ajax pour faire un truc de compet et fluide :)

vu comme ça peux te paraitre con mais je pense le plus simple et pourquoi le plus ergonomique pour l'utilisateur. par exemple tu affiche une case à cocher a coté de chaque fichier pour permettre la sélection de ceux que tu souhaite récupérer (couplé à AJAX y a moyen de faire un truc chiadé).


@+

Re: Probleme move_uploaded_file()

par Mirrix » 19 oct. 2011, 16:00

Oui mais le problème c'est que la manip doit pouvoir être faite de n'importe quel PC à mon travail (beaucoup) donc ta méthode impliquerait que j'installe un serveur FTP sur chaque PC nan ?

Et le serveur est protégé, on ne peut pas y accéder directement.

Re: Probleme move_uploaded_file()

par moogli » 19 oct. 2011, 15:12

je dirais dans le même genre installer un serveur FTP sur ton pc a toi (bon faut qu'il soit accessible sur le réseau).

Après tu utilise l'extension FTP de php pour envoyer le fichier sur ton ordi !


@+

Re: Probleme move_uploaded_file()

par Mazarini » 19 oct. 2011, 14:22

Tu peux surement lire le disque du serveur directement si le serveur pouvait avoir un partage sur ton disque en local. Sinon, tu peux récupérer les fichiers en ftp (en installant un serveur) voir même en http.

Re: Probleme move_uploaded_file()

par Mirrix » 19 oct. 2011, 14:03

Comme j'arrive a uploader mes fichiers sur le serveur je vais faire ca. Par contre j'aurais besoin en même temps de transférer le dossier qui est sur le serveur sur mon pc en local mais je ne vois pas comment faire.

Est ce possible de le faire avec FTP : transférer un dossier du serveur vers le machine en local ?

Re: Probleme move_uploaded_file()

par moogli » 19 oct. 2011, 11:59

un utiliser exec pour lancer un script bash qui va faire la copie :mrgreen:

sinon voir dans les droits utilisateurs si y a moyen d'écrire dans L pour l'utilisateur qui fait tourner iis (et le site qui utilise php) tu doit pouvoir le voir dans le gestionnaire de taches (onglet processus).

après je suis assez mauvais sur l'administration et encore plus sur iis :D

@+

Re: Probleme move_uploaded_file()

par Mirrix » 18 oct. 2011, 16:44

Ouais du coup faut voir si je peux l'avoir en utilisateur moins locale.
Ça peut créer des trous de sécurité ?

Sinon il y aurait une autre méthode pour faire ce que je veux ?

Re: Probleme move_uploaded_file()

par Mazarini » 18 oct. 2011, 16:42

A priori, IIS doit être un utilisateur local. Je ne suis pas un pro de l'administration. Ce n'est pas illogique pour des problèmes de sécurité.

Re: Probleme move_uploaded_file()

par Mirrix » 18 oct. 2011, 16:31

Quand j'ai testé la fonction file_exists() sur un fichier dans 'L:\Fichiers de configurations' ca ne marchais pas. J'ai ressayé en testant un fichier sur D: (la ou est mon systeme d'exploitation, sur C: c'est dos) et ca ne marchais toujours pas.

Par contre quand j'ai testé en faisant ca :
if (file_exists('./cible.php')) 
	{
		echo 'c\'est bon on peux écrire';echo '<br>';
	}
	else 
	{
		echo 'ha ba non en fait XD'; echo '<br>';
	}
Ca a marché nickel (cible.php etant un fichier .php du site)

Il semblerait que je puisse agir qu'au niveau du serveur et pas en dehors ... nan ?

Re: Probleme move_uploaded_file()

par Mazarini » 18 oct. 2011, 16:07

Tu peux tester en plus avec la fonction file_exists à la place de is_writable.

Si possible, essayes d'éliminer les problèmes potentiels de blancs dans les noms et de disque réseau en utilisant un répertoire c:\test dans un premier temps ou dans l'arborescence du site.

Pour les autorisations, tu peux regarder comment elles sont sur les répertoires ou se trouve tes pages PHP.