Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources PHP
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 21/04/2011, 16h04   #1
Nouveau Membre du Club
 
Inscription : mars 2009
Messages : 124
Détails du profil
Informations forums :
Inscription : mars 2009
Messages : 124
Points : 26
Points : 26
Par défaut upload de fichier avec permission ftp

salut tous le monde,
j'ai un formulaire d'upload sur mon site en ligne, sur mon compte ftp j'ai enlevé tous les permission chmod, et je veux attribuer ces permissions par code via la fonction ftp_chmod aprés la conenxion a mon serveur ftp
voici mon code :
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
 
<?php
	$con=ftp_connect('ftp.moncompte.com',21,90);
	ftp_login($con,'username','password');
	ftp_chmod($con,0777,'img');
	chmod('img',0777);
 
	if(isset($_POST['upload']))
	{
		$chemin = 'img';
		$name_file=$_FILES['photo']['name'];
		$type=$_FILES['photo']['type'];
		if(($type=='image/png') || ($type=='image/jpeg') || ($type=='image/gif'))
		{			
		move_uploaded_file($_FILES['photo']['tmp_name'],"$chemin/$name_file");
 
		}
	}
?>
<form action="" method="post" enctype="multipart/form-data"  id="form">
	<table class="form">
		<tr>
		<td></td>
			<td>Photo : </td>
			<td><input type="file" name="photo" class="text-input" /></td>
		</tr>
		<tr>
			<td></td><td></td>
			<td>
				<input class="button" type="submit" value="Valider" name="upload"/>
				<input class="button" type="reset" value="Annuler"/>
			</td>
		</tr>
	</table>
</form>
le probléme c'est que la fonction move_uploaded_file me renvoi toujours l'erreur failed to open stream: Permission denied.
quelqu'un a une idée svp
et merci d'avance pour vos réponses
rochdi123 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/04/2011, 10h54   #2
Membre chevronné
 
Homme
Développeur Web
Inscription : mars 2011
Messages : 399
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Paris (Île de France)

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

Informations forums :
Inscription : mars 2011
Messages : 399
Points : 662
Points : 662
Vous ouvrez une connection FTP mais vous n'y envoyez pas votre fichier...

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$con=ftp_connect('ftp.moncompte.com',21,90);
	ftp_login($con,'username','password');
	ftp_chmod($con,0777,'img');
	chmod('img',0777);
	// Jusque là tout est "bon", vous vous connectez et changez les permissions du dossier
	if(isset($_POST['upload']))
	{
		$chemin = 'img';
		$name_file=$_FILES['photo']['name'];
		$type=$_FILES['photo']['type'];
		if(($type=='image/png') || ($type=='image/jpeg') || ($type=='image/gif'))
		{			
		move_uploaded_file($_FILES['photo']['tmp_name'],"$chemin/$name_file"); 
                // là vous essayez de bouger le fichier dans le dossier 'img' qui est dans le même dossier que le fichier PHP ! Pas sur le FTP
		}
	}
voir commentaire dans le code ci-dessus.

Il vous faudra :
  • Bouger le fichier dans un dossier temporaire du serveur PHP
  • Envoyer le fichier dans le FTP grâce à ftp_put
  • Supprimer (ou non) le fichier du serveur PHP
__________________
Membre de StackOverflow, je suis un fervant utilisateur de PHP et de jQuery.
Après des études de graphisme, j'ai décidé de mélanger développement web et web design. J'ai ainsi donc créé mon site web mais aussi plusieurs projets personnels.
Dans les plus aboutis, vous pourrez trouver dans mon labo et dans mon devblog, un raccourcisseur d'url, un bookmarklet pour envoyer l'url de la page actuelle vers votre email pour lire plus tard ou sauvegarder, mon générateur de template HTML5, etc...
Shikiryu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/04/2011, 11h35   #3
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 466
Points : 8 466
pas besoin de tout ça on peux direct faire

Code :
move_uploaded_file($_FILES['photo']['tmp_name'], "ftp://login:password@ftpserver/$chemin/$name_file");
__________________
http://blog.stealth35.com/
stealth35 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 12h26.


 
 
 
 
Partenaires

Hébergement Web