Bonjour tout le monde
je veux réaliser un code PHP qui uploadé une liste des images a partir de mon serveur locale ver un serveur web
Merci
Bonjour tout le monde
je veux réaliser un code PHP qui uploadé une liste des images a partir de mon serveur locale ver un serveur web
Merci
Pourrais-tu préciser ta demande en apportant le code que tu as déjà créé. Là on pourra te guider vers la bonne solution
Si tu as rien encore fait, une petite recherche dans la FAQ PHP t'aurait donné ce lien : Comment envoyer un fichier depuis le navigateur sur le serveur à travers un formulaire HTML ? qui est déjà un bon début
Merci de votre passage .
Le voila le code :
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
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 <?php $id = $_GET['id']; //------------------------------------ // les images //------------------------------------Program Files\\EasyPHP1-7\\www\\transport\\fred2\\module\\ $patc="C:\\big\\"; print '<input type="file" accept="111" size="20" name="fichier3" value="C:\big\650_riad_2.jpg">'; //----------------------------------------------------------- //$_FILES['fichier1']['name']="http://127.0.0.1/transport/fred2/module/big/".;//img1*/ //The first parameter is the form's input name and the second index can be either "name", "type", "size", "tmp_name" or "error". Like this: $_FILES['fichier1']($id.'_riad_1','.jpg',$patc,''); /*$_FILES['fichier1']['name']=; $_FILES['fichier1']['size']="12121"; $_FILES['fichier1' ]['tmp_name']=$patc;*/ print $_FILES['fichier1']['name']."***|".$taille = $_FILES['fichier1']['size']."***|".$_FILES['fichier1' ]['tmp_name']; $_FILES['fichier2']=$patc.$id."_riad_2.jpg";//img2 $_FILES['fichier4']=$patc.$id."_fez_house_1.jpg";//img1 $_FILES['fichier5']=$patc.$id."_fez_house_2.jpg";//img2 $_FILES['fichier6']=$patc.$id."_fez_house_3.jpg";//img3 //----------------------------------------------------------- $_FILES['fichier']= "smal/".$id."_riad_ac";//accueil //-------------------------------------- // DEFINITION DES VARIABLES //-------------------------------------- $extension = ".jpg";// Extension du fichier $max_size = 100000000000000000;// Taille max en octets du fichier $width_max = 100000000000000000;// Largeur max de l'image en pixels $height_max = 100000000000000000000;// Hauteur max de l'image en pixels //------------------------------------------------------------ // DEFINITION DES VARIABLES LIEES AU FICHIER //------------------------------------------------------------ for ($i = 1; $i <= 6; $i++) { if ($i<=3){ $target = "big/";// Repertoire cible }else{$target = "smal/";}// Repertoire cible $nom_file = $_FILES['fichier' . $i]['name']; $taille = $_FILES['fichier' . $i]['size']; $tmp = $_FILES['fichier' . $i]['tmp_name']; $chemin = $target . $id . '_rednourfesweb_' . $i . strtolower(substr(strrchr($nom_file,"."), 0)); print $_FILES['fichier'.$i]['tmp_name']; //['name']; @move_uploaded_file($tmp, $chemin); // Si upload OK alors on affiche le message de réussite echo '<p align="center">'; echo '<font face="Verdana" size="2" color="#FF0000">'; echo '<b>Image uploadée avec succès !</b>'; echo '</font>'; echo '<hr>'; echo '<b>Fichier :</b>' . $_FILES['fichier' . $i]['name'] . '</br>'; echo '<b>Taille :</b>' . $_FILES['fichier' . $i]['size'] . ' Octets</br>'; echo '<b>Largeur :</b> ' . $infos_img[0] . ' px</br>'; echo '<b>Hauteur :</b> ' . $infos_img[1] . ' px</br>'; echo '<hr>'; echo '<br><br>'; //--------------------------- // SCRIPT D'UPLOAD //--------------------------- // On vérifie si le champ est rempli if (isset($_FILES['fichier' . $i]['name'])) { // On vérifie les dimensions et taille de l'image if (($infos_img[0] <= $width_max) && ($infos_img[1] <= $height_max) && ($taille <= $max_size)) { // Si c'est OK, on teste l'upload if (@move_uploaded_file($tmp, $chemin)) { // Si upload OK alors on affiche le message de réussite echo '<p align="center">'; echo '<font face="Verdana" size="2" color="#FF0000">'; echo '<b>Image uploadée avec succès !</b>'; echo '</font>'; echo '<hr>'; echo '<b>Fichier :</b>' . $_FILES['fichier' . $i]['name'] . '</br>'; echo '<b>Taille :</b>' . $_FILES['fichier' . $i]['size'] . ' Octets</br>'; echo '<b>Largeur :</b> ' . $infos_img[0] . ' px</br>'; echo '<b>Hauteur :</b> ' . $infos_img[1] . ' px</br>'; echo '<hr>'; echo '<br><br>'; } else { // Sinon on affiche une erreur système echo '<p align="center">'; echo '<font face="Verdana" size="2" color="#FF0000">'; echo '<b>Problème lors de l\'upload !</b>'; echo '</font><br><br>'; } } else { // Sinon erreur sur les dimensions et taille de l'image echo '<p align="center">'; echo '<font face="Verdana" size="2" color="#FF0000">'; echo '<b>Erreur dans les dimensions ou taille de l\'image !</b>'; echo '</font><br><br>'; } } } ?>
$max_size = 100000000000000000;// Taille max en octets du fichier
$width_max = 100000000000000000;// Largeur max de l'image en pixels
$height_max = 100000000000000000000;// Hauteur max de l'image en pixels
Et heuu quel est le problème ?
Mon problème c est que cette variable ($_FILES['fichier1']) ne prendre les valeurs exacte avec un code
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 $patc="C:\\big\\"; print '<input type="file" accept="111" size="20" name="fichier3" value="C:\big\650_riad_2.jpg">'; //----------------------------------------------------------- //$_FILES['fichier1']['name']="http://127.0.0.1/transport/fred2/module/big/".;//img1*/ //The first parameter is the form's input name and the second index can be either "name", "type", "size", "tmp_name" or "error". Like this: $_FILES['fichier1']($id.'_riad_1','.jpg',$patc,''); /*$_FILES['fichier1']['name']=; $_FILES['fichier1']['size']="12121"; $_FILES['fichier1' ]['tmp_name']=$patc;*/ print $_FILES['fichier1']['name']."***|".$taille = $_FILES['fichier1']['size']."***|".$_FILES['fichier1' ]['tmp_name']; $_FILES['fichier2']=$patc.$id."_riad_2.jpg";//img2 $_FILES['fichier4']=$patc.$id."_fez_house_1.jpg";//img1 $_FILES['fichier5']=$patc.$id."_fez_house_2.jpg";//img2 $_FILES['fichier6']=$patc.$id."_fez_house_3.jpg";//img3 //----------------------------------------------------------- $_FILES['fichier']= "smal/".$id."_riad_ac";//accueil
Il doit passer par le contrôle (file upload)
J'ai toujours pas saisi le réel problème
Est-ce un soucis d'upload ?
Une erreur de récupération des informations liées aux fichiers ?
Je veux affecter des valeurs correctes à ces variables
$_FILES['fichier1']['name']
$_FILES['fichier1']['size']
$_FILES['fichier1' ]['tmp_name']
A partir d un chemin d'image
Je m excuse mon français est nul (log1)
Ps : ftp://ftp-developpez.com/magazine/DevMag200611.pdf (page 11)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 ... <input type="file" name="fichier1" /> ....
Dans le lien donné plus haut (par moi-même) tu as des exemples de formulaires (que ce soit un fichier ou plusieurs fichiers). Tu peux t'en inspirer
Non je veux utiliser seulement le chemin des images qui Sant dans un dossier sur mon localhost
C'est un peu flou ce que tu demandes, d'abord qu'est ce que tu entend par localhost ? Pour moi localhost c'est mon PC :/ donc un formulaire d'envoi.
$_FILE ne prend sa valeur uniquement via un formulaire de saisi. Merci de lire les tutoriels
Pour faire simple : Si tu souhaites envoyer des fichiers d'un serveur local vers un WEB tu dois utiliser les méthodes suivantes:Tu peux pas utiliser $_FILES sans utiliser de formulaire. Comme cela vient de t'être dit
- un client FTP et donc tu le fais à la main.
- PHP en passant par un formulaire.
se que j'ai :
cette methode d'affectation du chemin de l'image a $_FILES['fichier2'] est fausse puisqu'elle ne marche pas sachant que le chemin est correcte, _FILES['fichier2'] ne prend rien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 ... $patc="http://127.0.0.1/transport/fred2/module/big/"; $id=$_GET['id']; .... $_FILES['fichier2']=$patc.$id."_riad_2.jpg";//img1 $_FILES['fichier4']=$patc.$id."_fez_house_1.jpg";//img2 $_FILES['fichier5']=$patc.$id."_fez_house_2.jpg";//img3 $_FILES['fichier6']=$patc.$id."_fez_house_3.jpg";//img4
C'est que je veut envoyer de mon pc (localhost) a mon site (chez l'hebergeur) des images dont je connais le chemin avec un simple clique et je cherche maintenant une autre methode puisque files ne marche qu'avec un formulaire.
Ce n'est pas possible, réfléchi un peu...
Imagine que je fasse un site web qui m'envoi automatiquement tout les fichiers C:/je_sais_pas_quoi des personnes sans qu'elle ne le vois. Ca serais tout de meme un gros probleme de sécurité
C'est pour ca que tu est OBLIGE de passer par un formulaire !!!
Tu peux toujours te developper une application dans un langage non-web pour faire ca (LE PHP est un langage serveur et non client)
Mais bon vu que tu as un serveur WEB sur ton pc, tu peut toujours lire le fichier "distant" grâce à fopen()...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager