Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
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 14/05/2007, 09h03   #1
Membre du Club
 
Inscription : janvier 2007
Messages : 196
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 196
Points : 54
Points : 54
Par défaut [FTP] Téléchargement Photo via formulaire

Bonjour ,


J'ai mit en place sur mon site, un formulaire qui permet l'upload de photo pour les membres,

Aprés téléchargement les photo sont enregistré dans un dossier "/up" sur ce même site !


Mais ce que je voudrais essayé de faire, mais je n'y arrive pas, c'est que els photo s'enregistre sur mon autre site, donc un serveur diffenrent !

par exemple :

Mon site est http://www.monsite.com
Ce que je voudrais c'est quand le formulaire est complté, et envoyé, l'image soit enregistré dans le dossier /up qui est a l'adresse http://imagesdemonsite.com au lieu de s'enregistré dans le fichier up de http://www.monsite.com voilà

voilà le code qui me permet de telecharger les photo :


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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
<?php
// ############################################################ //
//   Script pour Upload de fichier quelconque sur un serveur	//
// ############################################################ //
// Infos :														//
// -------														//
// Auteur : Alain PAltou										//
// Email de l'auteur : webmasters@masspoetiklove.com						//
// Date de création : 7 Février 2006							       //						//
// Version : 1.1.1												//
// ############################################################ //
//
// Changements (Upload):
//
//-Possibilité de voir le nom du fichier
//-Possibilité de voir la taille du fichier en Ko
//-Possibilité de voir l'url du fichier 
//-Aperçu de l'image ou image d'erreur si le fichier ne peut avoir d'aperçu
//-Aperçu audio des sons 
//Une galerie a été ajouté , c'est la version modifié du script de J-Web [www.jeunes-webmasters.com]
//
// Changements (Galerie):
//
//-La galerie ne visione plus les fichiers de tous types , elle ne visionnes plus que les images 
//-Ajout d'un anti-clic droit pour protéger les auteurs des images.
// Fonctionnement :												//
// ----------------												//
// 1. Test si l'utilisateur a choisi un fichier					//
// 2. Test si le fichier choisi est valide (si taille <> 0)		//
// 3. Test si le taille du fichier est inférieure à la taille	//
//    max														//
// 4. Test si l'extension est autorisée.						//
// ############################################################ //
// Paramètrage :												//
// -------------												//
// Ce script peut facilement être paramètré selon les besoins.	//
// Le paramètrage se fait principalement par la définition des	//
// variables globales. Voici les différentes variables :		//
//																//
//  - $DESTINATION_FOLDER : contient le répertoire dans lequel	//
//    le fichier sera uploadé. Il est par défaut récupéré du	//
//    formulaire, mais peut très bien être remplacé par un url	//
//    en dur.													//
//																//
//  - $MAX_SIZE : spécifie la taille maximale que le fichier à	//
//    uploader peut avoir. Attention, le taille est spécifiée	//
//    en octets.												//
//																//
//  - $RETURN_LINK : Récupère automatiquement l'url de la page	//
//    web qui appelle ce script. Ce lien sert à créer des liens	//
//    de retour, qui sont toujours utiles.						//
//																//
//  - $AUTH_EXT : Ce tableau contient toutes les extensions qui	//
//    peuvent être uploadées. On peut en rajouter ou en			//
//    supprimer si besoin est.									//
//
// - N'oubliez pas de remplacer la ligne suivante :
//
// echo "URL du Fichier : http://URL du site/upload/up/$nomFichier<br><br>";
//
//
// ############################################################ //
 
// ############################################################ //
// Définition des variable globales, modifiables à volonté		//
// ############################################################ //
// Récupération du dossier dans lequel le fichier sera uploadé	//
$DESTINATION_FOLDER = " up/";							//
// Taille maximale de fichier, valeur en bytes					//
$MAX_SIZE = 100000000;											//
// Récupération de l'url de retour								//
$RETURN_LINK = $_SERVER['HTTP_REFERER'];						//
// Définition des extensions de fichier autorisées (avec le ".")//
$AUTH_EXT = array(".jpg", ".png",		//
 ".bmp", ".gif", ".JPG", ".PNG", ".BMP", ".GIF");											//
// ############################################################ //
// Fonction permettant de créer un lien de retour automatique
 
function createReturnLink(){
	global $RETURN_LINK;
	echo "<a href='".$RETURN_LINK."'></a><br>";
}
 
// Fonction permettant de vérifier si l'extension du fichier est
// autorisée.
 
function isExtAuthorized($ext){
	global $AUTH_EXT;
	if(in_array($ext, $AUTH_EXT)){
		return true;
	}else{
		return false;
	}
}
 
// On vérifie que le champs contenant le chemin du fichier soit
// bien rempli.
 
if(!empty($_FILES["avatar"]["name"])){
 
	// Nom du fichier choisi:
	$nomFichier = $_FILES["avatar"]["name"] ;
	// Nom temporaire sur le serveur:
	$nomTemporaire = $_FILES["avatar"]["tmp_name"] ;
	// Type du fichier choisi:
	$typeFichier = $_FILES["avatar"]["type"] ;
	// Poids en octets du fichier choisit:
	$poidsFichier = $_FILES["avatar"]["size"] ;
	// Poids en Kilo-octets du fichier choisit:
	$poidsFichierK = $poidsFichier/1024;
	// Pré formatage en affichage avec 0 chiffre après la virgule , donc pas de virgule.
    $poidsFichierK = sprintf("%.0f", $poidsFichierK) ;
	// Code de l'erreur si jamais il y en a une:
	$codeErreur = $_FILES["avatar"]["error"] ;
	// Extension du fichier
	$extension = strrchr($nomFichier, ".");
 
	// Si le poids du fichier est de 0 bytes, le fichier est
	// invalide (ou le chemin incorrect) => message d'erreur
	// sinon, le script continue.
	if($poidsFichier <> 0){
		// Si la taille du fichier est supérieure à la taille
		// maximum spécifiée => message d'erreur
		if($poidsFichier < $MAX_SIZE){
			// On teste ensuite si le fichier a une extension autorisée
			if(isExtAuthorized($extension)){
				// Ensuite, on copie le fichier uploadé ou bon nous semble.
 
$sql = "UPDATE comptes SET avatar='$urlsiteimages/up/$nomFichier' WHERE id='$idcon'";
	mysql_query($sql);
				$uploadOk = move_uploaded_file($nomTemporaire,$DESTINATION_FOLDER.$nomFichier);
				if($uploadOk){
					                    echo "<b>Chargement de votre Photo Effectué ::</b><br><br>";
                                        echo "Nom du Fichier : <b><a href='$urlsiteimages/up/$nomFichier'>$nomFichier</a></b><br>";
                                        echo "Taille du Fichier : <b>$poidsFichierK Ko</b><br>";
 
										echo "Aperçu:<br><br>";
										switch ($extension) { //Tu fais écrire du html par le php
								        case ".jpeg": echo "<table width='75' height='120' border='0'  background='bck_ph.gif'><tr><td><IMG SRC='up/$nomFichier'height='80' width='60'></td></tr>";break;
                                        case ".bmp": echo "<table width='75' height='120' border='0'  background='bck_ph.gif'><tr><td><IMG SRC='up/$nomFichier'height='80' width='60'></td></tr></tr>
</td>";break;
										case ".gif": echo "<table width='75' height='120' border='0'  background='bck_ph.gif'><tr><td><IMG SRC='up/$nomFichier'height='80' width='60'></td></tr>";break;
										case ".png": echo "<table width='75' height='120' border='0'  background='bck_ph.gif'><tr><td><IMG SRC='up/$nomFichier'height='80' width='60'></td></tr>";break;
										case ".jpg": echo "<table width='75' height='120' border='0'  background='bck_ph.gif'><tr><td><IMG SRC='up/$nomFichier'height='80' width='60'></td></tr>";break;
										case ".JPG": echo "<table width='75' height='120' border='0'  background='bck_ph.gif'><tr><td><IMG SRC='up/$nomFichier'height='80' width='60'></td></tr>";break;
										case ".GIF": echo "<table width='75' height='120' border='0'  background='bck_ph.gif'><tr><td><IMG SRC='up/$nomFichier'height='80' width='60'></td></tr>";break;
										case ".JPEG": echo "<table width='75' height='120' border='0'  background='bck_ph.gif'><tr><td><IMG SRC='up/$nomFichier'height='80' width='60'></td></tr>";break;
										case ".BMP": echo "<table width='75' height='120' border='0'  background='bck_ph.gif'><tr><td><IMG SRC='up/$nomFichier'height='80' width='60'></td></tr>";break;
										case ".PNG": echo "<table width='75' height='120' border='0'  background='bck_ph.gif'><tr><td><IMG SRC='up/$nomFichier'height='80' width='60'></td></tr>";break;
										case ".rar": echo "<IMG SRC='error/archive.gif'width='87' height='88'>";break;
										case ".ace": echo "<IMG SRC='error/archive.gif'width='87' height='88'>";break;
										case ".zip": echo "<IMG SRC='error/archive.gif'width='87' height='88'>";break;
										case ".php": echo "<IMG SRC='error/web.gif'width='87' height='88'>";break;
										case ".htm": echo "<IMG SRC='error/web.gif'width='87' height='88'>";break;
										case ".html": echo "<IMG SRC='error/web.gif'width='87' height='88'>";break;
										case ".php3": echo "<IMG SRC='error/web.gif'width='87' height='88'>";break;
										case ".mp3": echo "<IMG SRC='error/son.gif'width='87' height='88'><bgsound src='$nomFichier'><br>Si vous utilisez internet explorer ,vous pourrez entendre votre son.";break;
										case ".wav": echo "<IMG SRC='error/son.gif'width='87' height='88'><bgsound src='$nomFichier'><br>Si vous utilisez internet explorer ,vous pourrez entendre votre son.";break;
									    default: echo "<IMG SRC='error/inconnu.gif'>"; }
										echo "<br><br></table>";
                                        echo(createReturnLink());
				}else{
					echo("L'upload a échoué !<br><br>");
					echo(createReturnLink());
				}
			}else{
				echo ("Les fichiers avec l'extension $extension ne peuvent pas être uploadés !<br>");
				echo (createReturnLink()."<br>");
			}
		}else{
			$tailleKo = $MAX_SIZE / 1000;
			echo("Vous ne pouvez pas uploader de fichiers dont la taille est supérieure à : $tailleKo Ko.<br>");
			echo (createReturnLink()."<br>");
		}		
	}else{
		echo("Le fichier choisi est invalide !<br>");
		echo (createReturnLink()."<br>");
	}
}else{
	echo("Vous n'avez pas choisi de fichier !<br>");
	echo (createReturnLink()."<br>");
}
?>
toulousain3117 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/05/2007, 10h02   #2
Membre Expert
 
Inscription : octobre 2002
Messages : 1 141
Détails du profil
Informations personnelles :
Âge : 32
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2002
Messages : 1 141
Points : 1 204
Points : 1 204
Envoyer un message via MSN à Raideman
de base, tu ne pourrais pas, pour des raisons de sécurité, écrire sur un autre serveur. Par contre, tu peux l'envoyer via un script qui effectuera une connexion ftp.
Raideman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/05/2007, 10h30   #3
Membre du Club
 
Inscription : janvier 2007
Messages : 196
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 196
Points : 54
Points : 54
et faut faire comment, pour qu'il l'envoi par ftp ?
toulousain3117 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 06h37.


 
 
 
 
Partenaires

Hébergement Web