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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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