Partage
  • Partager sur Facebook
  • Partager sur Twitter

uploader des fichiers volumineux avec php

19 février 2013 à 8:49:58

Bonjour à vous les zéros :)

Bon tout est dis dans le titre, je cherche a uploader des fichier de plus de 8Mo sur un serveur, mais je ne trouve pas comment faire.

Quelqu'un pourrait me dire si c'est possible de le faire avec php ou faut-il que j’utilise autre choses ?
Si c'est possible avec PHP vous pouvez me donner un idée pour que je puisse faire une recherche s'il vous plaît ?
  • Partager sur Facebook
  • Partager sur Twitter
19 février 2013 à 11:32:27

Bonjour,

Si tu es en local ou accès aux configurations de ton serveur, tu dois modifier cette ligne upload_max_filesize = 2M dans ton php.ini, sinon tu peux toujours t'orienter vers la fonction FTP fournie par PHP :

  • Partager sur Facebook
  • Partager sur Twitter
20 février 2013 à 4:50:28

Merci de ta réponse, mais si je change cette ligne je pourrais uploader des fichiers de quasiment 1Go ?
  • Partager sur Facebook
  • Partager sur Twitter
20 février 2013 à 11:55:36

C'est théoriquement possible mais pas très adapté, tu devras toutefois modifier cette ligne ci max_execution_time qui par défaut est à 30, qui est le nombre de seconde après quoi le script cesse de s’exécuter à une valeur beaucoup plus élevé car je doute que 30 secondes suffisent à uploader 1 Go ;) Sinon regarde ceci : http://code.google.com/p/gigaupload/

  • Partager sur Facebook
  • Partager sur Twitter
22 février 2013 à 11:08:12

Merci de ta réponse, sinon j'avais penser passer par un serveur ftp, mais je sais pas du tout comment sa fonction, et je suis sur linux et quasiement nouveau dessus se qui arrange pas les chose :S
  • Partager sur Facebook
  • Partager sur Twitter
22 février 2013 à 13:42:32

bonjour,

nadal974 a écrit:

Merci de ta réponse, sinon j'avais penser passer par un serveur ftp, mais je sais pas du tout comment sa fonction, et je suis sur linux et quasiement nouveau dessus se qui arrange pas les chose :S


Le fait de passer par un serveur FTP ne changera rien si tu utilises un formulaire pour uploader le fichier. Pour ce qui est du max_execution_time celui-ci n'as aucune influence sur l'upload de gros fichiers.

(Il est même préférable de le laisser en 30s de base). Pour savoir ce qui est important dans l'upload de fichier un petit tour sur la documentation ici: http://www.php.net/manual/fr/features.file-upload.post-method.php

-
Edité par tartanpion52 22 février 2013 à 13:44:07

  • Partager sur Facebook
  • Partager sur Twitter
Merci de signaler votre sujet résolu, cela nous évite des pages de lecture inutile pour arriver au bout de 15 réponses sur la dernière qui dit "merci problème résolut!"
28 février 2013 à 21:12:24

@tartanpion 52 :

<?php

set_time_limit(300);
 
$paths=$_POST['pathserver']; // chemin vers le dossier d'upload
 
$filep=$_FILES['userfile']['tmp_name']; // le fichier
 
$ftp_server= 'l\'adresse de ton serveur ftp';
 
$ftp_user_name='ton login';
 
$ftp_user_pass='ton mdp';
 
$name=$_FILES['userfile']['name'];
 
$conn_id = ftp_connect($ftp_server);
 
// login 
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
 
// vérification
if ((!$conn_id) || (!$login_result)) {
       echo "Problème de connexion au serveur";
       exit;
   } else {
       echo "Connexion établie";
   }
 
// upload 
$upload = ftp_put($conn_id, $paths.'/'.$name, $filep, FTP_BINARY);
 
// résultat de l'uplaod'
if (!$upload) {
       echo "Erreur";
   } else {
       echo "Le fichier $name à bien été uploadé ";
   }
 
// pas oublier de fermer la connexion
ftp_close($conn_id);



-
Edité par willden 28 février 2013 à 21:13:04

  • Partager sur Facebook
  • Partager sur Twitter
1 mars 2013 à 18:40:27

Re,

wi_i_am a écrit:

@tartanpion 52 :

<?php

set_time_limit(300);
 
...........
// pas oublier de fermer la connexion
ftp_close($conn_id);



-
Edité par wi_i_am il y a environ 21 heures

Et quelle est l'objet de cette réponse ?

-
Edité par tartanpion52 1 mars 2013 à 18:40:57

  • Partager sur Facebook
  • Partager sur Twitter
Merci de signaler votre sujet résolu, cela nous évite des pages de lecture inutile pour arriver au bout de 15 réponses sur la dernière qui dit "merci problème résolut!"
18 avril 2013 à 7:57:22

Salut à vous je relance un peu se sujet.
Merci wi_i_am, ton script marche superbement bien, mais je n'arrive toujours pas à upload une fichier d'environ 1Go, 1,4Go.
Donc je viens faire appel a votre intelligence suprême pour m'aider à pouvoir uploader de tel fichier par ftp
  • Partager sur Facebook
  • Partager sur Twitter
18 avril 2013 à 11:25:07

ftp_closeretourne un boléen, je veux pas trop où tu veux venir mais le résultat est là, cela fonctionne ;)

Sinon pour ton souci, as-tu essayé le (lien)[http://code.google.com/p/gigaupload/] que je t'ai donné ? Il m'as déjà permis de réaliser des uploads de 2 Go assez rapidement (et même pas en local !) et sans trop te prendre la tête

-
Edité par willden 18 avril 2013 à 11:25:31

  • Partager sur Facebook
  • Partager sur Twitter
19 avril 2013 à 7:17:09

Oui j'ai regardé, mais j'y comprends pas grand choses dedans...,oui je sais je fais peine à voir enfin à lire

Enfaite je me pose surtout la question quel variable doit ton lui donner, parce que j'en ai vu quelque une comme

$uuid = $_POST['uuid'];
$chunk = $_POST['chunk'];

$totalChunks = $_POST['total_chunks'];

Et je me demande à quoi sa sert

-
Edité par nadal974 19 avril 2013 à 7:21:07

  • Partager sur Facebook
  • Partager sur Twitter
22 avril 2013 à 6:20:39

Bonjour à vous et bonne semaine.

wi_i_am : tu pourrais m'expliquer comment utiliser gigaupload, parce que je ne comprends pas et ne suis pas vraiment un développeur java...un coup de main serais vraiment sympa

  • Partager sur Facebook
  • Partager sur Twitter
11 février 2020 à 22:39:19

Salut, je suis en 2020... 

j’ai changé le max_upload_filesize en 2000M et ça marché merci 

  • Partager sur Facebook
  • Partager sur Twitter
12 février 2020 à 6:01:54

Bonjour,

Déterrage

Citation des règles générales du forum :

Avant de poster un message, vérifiez la date du sujet dans lequel vous comptiez intervenir.

Si le dernier message sur le sujet date de plus de deux mois, mieux vaut ne pas répondre.
En effet, le déterrage d'un sujet nuit au bon fonctionnement du forum, et l'informatique pouvant grandement changer en quelques mois il n'est donc que rarement pertinent de déterrer un vieux sujet.

Au lieu de déterrer un sujet il est préférable :

  • soit de contacter directement le membre voulu par messagerie privée en cliquant sur son pseudonyme pour accéder à sa page profil, puis sur le lien "Ecrire un message"
  • soit de créer un nouveau sujet décrivant votre propre contexte
  • ne pas répondre à un déterrage et le signaler à la modération

Je ferme ce sujet. En cas de désaccord, me contacter par MP.

  • Partager sur Facebook
  • Partager sur Twitter