Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 22/04/2011, 15h15   #1
Invité de passage
 
Homme Christophe JEAN
Développeur Web
Inscription : avril 2011
Messages : 7
Détails du profil
Informations personnelles :
Nom : Homme Christophe JEAN
Localisation : France, Val de Marne (Île de France)

Informations professionnelles :
Activité : Développeur Web
Secteur : Conseil

Informations forums :
Inscription : avril 2011
Messages : 7
Points : 2
Points : 2
Par défaut Devinez ? J'ai un souci d'Upload

Bonjour à tous,

Avant d'écrire ce POST, j'ai regardé les différents messages postés ayant un rapport avec mon souci sans résultat.

J'ai un formulaire où l'on doit permettre à quelque de déposer un doc PDF sur notre site.

Dans mon traitement, j'ai cette fameuse erreur :
Warning: ftp_put() [function.ftp-put]: /var/www/vhosts/domaine.truc/subdomains/subdomains_name/httpdocs/v1/files/clients_doc/dossier_client/PFL2011.pdf: No such file or directory in /var/www/vhosts/domaine.truc/subdomains/subdomains_name/httpdocs/v1/modules/gesdom/lib/class/class_repartions_materiel.php on line 516.

Voici la portion de code incriminée :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
 
		  $nomOrigine		    = $arr_file["name"];
		  $nomSource		    = $arr_file["tmp_name"];
		  $taille 					= $arr_file["size"];
 
		  $nomDestination		= $this->clean_file_name( $nomOrigine );
 
 		  $extension				= strrchr($nomOrigine, '.');
 
			if( $extension != ".pdf" ){
				$num_erreur	= 2;
				$msg_erreur = "<p class='msg_upload_error'>Le fichier que vous avez tent&eacute; de mettre en ligne n'est pas au format PDF.</p>";
			}elseif( $taille >= 1048576 ){
				$num_erreur	= 3;
				$msg_erreur = "<p class='msg_upload_error'>Le fichier que vous avez tent&eacute; de mettre en ligne est trop volumineux : les fichiers sont limit&eacute;s &agrave; 2 Mo.</p>";
		  }
 
			if( !$num_erreur ){
				/**
				 * S'il n'y a pas d'erreur, on déplace le fichier
				 */
				if($this->_debug){
					echo "<hr/>";
					echo "509 : Nom de la source = ". $nomSource . "<br/>";
					echo "510 : la source existe = ". (is_file($nomSource) ? "Oui" : "NON") . "<br/>";
					echo "511 : le dossier existe = ". (is_dir ($path_snc) ? "Oui" : "NON") . "<br/>";
					echo "512 : Nom du justificatif = ". $path_snc.$nomDestination . "<br/>";
					echo "<hr/>";
				}
 
				$upload = ftp_put( $this->_conn_id, $path_snc.$nomDestination, $nomSource, FTP_BINARY );
				if( !$upload ){
					$num_erreur	= 4;
					$msg_erreur = "<p class='msg_upload_error'>Le fichier n'a pas pu &ecirc;tre mis en ligne pour une raison ind&eacute;termin&eacute;e.</p>";
				}
			}
Vous aurez remarqué que j'ai procédé à un test sur les ligne 509 à 512 qui affichent les résultats suivants :
Code :
1
2
3
4
5
 
509 : Nom de la source = /tmp/phppLsquc
510 : la source existe = Oui
511 : le dossier existe = Oui
512 : Nom du justificatif = /var/www/vhosts/domaine.truc/subdomains/subdomains_name/httpdocs/v1/files/clients_doc/dossier_client/PFL2011.pdf
Donc mes fichiers et dossiers existent. Et pour précision le dossier possède un CHMOD à 0777 (alors que 0755 suffirait).
Dernière précision, la connexion se fait dans une classe externe : d'autre fichier procèdent bien à un Upload (vers un dossier différent).

ET là je bloque complètement. Toutes suggestions et / ou explications seront la bienvenues.



D'avance Merci
cjean123 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/04/2011, 15h45   #2
Invité de passage
 
Homme Christophe JEAN
Développeur Web
Inscription : avril 2011
Messages : 7
Détails du profil
Informations personnelles :
Nom : Homme Christophe JEAN
Localisation : France, Val de Marne (Île de France)

Informations professionnelles :
Activité : Développeur Web
Secteur : Conseil

Informations forums :
Inscription : avril 2011
Messages : 7
Points : 2
Points : 2
Par défaut C'est encore moi

Re-bonjour,

Je pense avoir cerné le problème : une question de droit d'accès pour les utilisateurs WEB

Cependant, j'ai contourné l'echec de recopie du FTP_PUT par la fonction copy() et un Unlink du fichier d'origine.

@ +
cjean123 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h03.


 
 
 
 
Partenaires

Hébergement Web