Précédent   Forum des professionnels en informatique > PHP > Scripts
Scripts Forum d'entraide sur les scripts PHP téléchargés. Les meilleurs scripts PHP, la FAQ scripts PHP, toutes les FAQ 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 10/05/2006, 18h09   #1
Membre actif
 
Avatar de __fabrice
 
Fabrice
Inscription : août 2004
Messages : 308
Détails du profil
Informations personnelles :
Nom : Fabrice
Âge : 40

Informations forums :
Inscription : août 2004
Messages : 308
Points : 180
Points : 180
Envoyer un message via ICQ à __fabrice Envoyer un message via MSN à __fabrice
Par défaut Upload par FTP avec des gros fichiers

salut à tous,

Je dois faire un systeme d'upload par FTP. Bon, j'ai testé un code tout simple (voir ci-dessous) et cela marche avec des fichiers de 2 megas environs. Au dessus, çà plante.

Je suis en SAFE_MODE à OFF !

le formulaire :
Code :
1
2
3
4
5
<form action="upload_ftp.php" method="POST" enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="9000000" />
<INPUT name="fichierftp" type="file"  size="30">
<INPUT name="submit_upload" type="submit" value="Envoyer">
</form>
et le fichier php :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
$conn_id = ftp_connect("mon.ftp");
$login_result = ftp_login($conn_id, "login", "password");
 
ftp_chdir($conn_id,'mon_repertoire');
 
//on envoi le fichier s'il y en a un
 
$destination_file = $_FILES['fichierftp']['name'];
// upload the file
 
$upload = ftp_put($conn_id, $destination_file, $file_to_upload, FTP_BINARY);
 
// check upload status
if (!$upload){
      $messages.=" L'envoi du fichier a échoué. Veuillez recommencer";
} else{
      $messages.=" L'envoi du fichier a été réalisée avec succès.";
   }
 
    echo $messages;
Une idée ?

Fabrice
__fabrice est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2006, 18h11   #2
Rédacteur
 
Avatar de Swoög
 
Inscription : janvier 2003
Messages : 6 053
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : janvier 2003
Messages : 6 053
Points : 7 144
Points : 7 144
Envoyer un message via MSN à Swoög Envoyer un message via Skype™ à Swoög
déjà demandé à de nombreuses reprises...
http://fr3.php.net/manual/fr/feature...n-pitfalls.php
__________________
Rédacteur "éclectique" (XML, IRC, Web...)
Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
pensez à la balise [code] (bouton #) et au tag (en bas)
Swoög est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2006, 20h04   #3
Membre émérite
 
Avatar de ozzmax
 
Inscription : novembre 2005
Messages : 986
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : novembre 2005
Messages : 986
Points : 863
Points : 863
Envoyer un message via MSN à ozzmax
ouep comme swoög...faut que tu modifies le php.ini pour permettre le transfer de fichier plus volumineux

http://php.developpez.com/faq/?page=...ers_uploadsize

j'avais ce meme probleme lors de l'upload et maintenant ca marche nickel!
__________________
La perfection n'est pas un but, l'amélioration constante devrait l'être!
La position des Développeurs de developpez avec les explications
ozzmax est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2006, 20h14   #4
Membre chevronné
 
Avatar de Kioob
 
Olivier Bonvalet
Inscription : septembre 2004
Messages : 550
Détails du profil
Informations personnelles :
Nom : Olivier Bonvalet
Âge : 32
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : septembre 2004
Messages : 550
Points : 723
Points : 723
Envoyer un message via MSN à Kioob
Note : sais tu que là tu fais un upload HTTP suivi d'un upload FTP ? S'il s'agit de la même machine, ça ne sert absolument à rien (erreur classique de débutant).
Kioob est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/05/2006, 00h18   #5
Membre actif
 
Avatar de __fabrice
 
Fabrice
Inscription : août 2004
Messages : 308
Détails du profil
Informations personnelles :
Nom : Fabrice
Âge : 40

Informations forums :
Inscription : août 2004
Messages : 308
Points : 180
Points : 180
Envoyer un message via ICQ à __fabrice Envoyer un message via MSN à __fabrice
J'avais oublié de preciser que je fais un set_time_limit(900) avant l'upload en ftp.

Si je fais un upload en HTTP avant, et un en FTP, veuillez alors m'expliquer alors comment faire ...
Il faut bien que je recupere le fichier choisi depuis le formulaire non ?

Merci à tous,
Fabrice
__fabrice est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/05/2006, 00h30   #6
Rédacteur
 
Avatar de Swoög
 
Inscription : janvier 2003
Messages : 6 053
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : janvier 2003
Messages : 6 053
Points : 7 144
Points : 7 144
Envoyer un message via MSN à Swoög Envoyer un message via Skype™ à Swoög
ce que vuet dire Kioob, c'est que si ton serveur FTP est sur le même PC que le serveur HTTP, autant utiliser le système de fichier local plutôt que le FTP...
__________________
Rédacteur "éclectique" (XML, IRC, Web...)
Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
pensez à la balise [code] (bouton #) et au tag (en bas)
Swoög est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/05/2006, 09h40   #7
Membre actif
 
Avatar de __fabrice
 
Fabrice
Inscription : août 2004
Messages : 308
Détails du profil
Informations personnelles :
Nom : Fabrice
Âge : 40

Informations forums :
Inscription : août 2004
Messages : 308
Points : 180
Points : 180
Envoyer un message via ICQ à __fabrice Envoyer un message via MSN à __fabrice
Bon, et bien j'ai rajouté çà :
Code :
1
2
3
4
    set_time_limit(900) ; // => 15 minutes
    ini_set("upload_max_filesize","5000000");
    ini_set("post_max_size","5000000");
    ini_set("memory_limit","5000000");
Mais çà ne change rien, j'ai ce message :
Code :
Warning: error opening none in
sur le :
Code :
$upload = ftp_put($conn_id, $destination_file, $file_to_upload, FTP_BINARY);
La variable $file_to_upload ($file_to_upload = $_FILES['fichierftp']['tmp_name'];) est vide ...

Fabrice
__fabrice est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/05/2006, 12h26   #8
Rédacteur
 
Avatar de Swoög
 
Inscription : janvier 2003
Messages : 6 053
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : janvier 2003
Messages : 6 053
Points : 7 144
Points : 7 144
Envoyer un message via MSN à Swoög Envoyer un message via Skype™ à Swoög
Code :
1
2
3
    ini_set("upload_max_filesize","5000000");
    ini_set("post_max_size","5000000");
    ini_set("memory_limit","5000000");
ceci est à faire AVANT l'upload, en fait, ces valeurs ne sont pas modifiables avec ini_set, il faut les modifier avec un htaccess (phpvalue nom_de_la_conf valeur) ou dans le php.ini directement, parce qu'elle sont prises en compte alors qu'aucun script n'est encore lancé...
__________________
Rédacteur "éclectique" (XML, IRC, Web...)
Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
pensez à la balise [code] (bouton #) et au tag (en bas)
Swoög est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2006, 12h08   #9
Invité de passage
 
Inscription : juin 2006
Messages : 1
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 1
Points : 1
Points : 1
Bonjour,

Me concernant j'ai un problème similaire, mais pour lequel, à priori, les liens indiqués ne le concerne pas puisque j'opte pour un upload ftp.
J'ai une appli tournant en local qui lorsque des fichier d'un type précis procède à une traduction puis à l'envoi (ftp_put) sur serveur ftp, mais durant l'envoi ça bloque assez fréquemment et apache plante (apache a provoqué une défaillance de page dans php'ts.dll). Il y a 7 fichiers totalisant 10mo et le plus volumineux fait 4-5mo, 1 fois par jour un fichier de 6-8 mo en plus.
Il arrive même que les fichiers ne soient envoyés que partiellement, encore plus embêtant qu'un plantage...

Les variables :
Citation:
# upload_max_filesize
# post_max_size
n'ont vraisemblablement pas d'influence puisque concerne l'envoi http.

En revanche pensez-vous que memory_limit puisse résoudre mon souci..? D'ailleurs y'a t'il un moyen de connaître à l'instant t la mémoime "consommer" par le script, ce qui me permettrait de voir si effectivement la mémoire occupée est en cause..?

Merci d'avance

Ju
jutreize 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 23h16.


 
 
 
 
Partenaires

Hébergement Web