IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Upload de gros fichiers quand le php.ini n'est pas accessible !


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Homme Profil pro
    Retraité Ing Electronique
    Inscrit en
    Mars 2004
    Messages
    369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 77
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Retraité Ing Electronique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2004
    Messages : 369
    Points : 121
    Points
    121
    Par défaut Upload de gros fichiers quand le php.ini n'est pas accessible !
    Dans la FAQ PHP on trouve un article de Cyberzoide intitulé : Je n'arrive pas à uploader les gros fichiers !
    Et qui se termine par : "Dans le cas où vous n'avez pas accès au php.ini, optez pour une connexion FTP..."

    Je suis bien dans ce cas (pas d'accès à php.ini) et je me suis immédiatement engagé dans l'apprentissage de la programmation d'une connexion FTP en PHP.

    Tout marche au poil, sauf que l'exécution de la fonction : ftp_put($conn_id,"$destination_file","$source_file", FTP_BINARY);" me renvoie, pour le fichier source qui se trouve sur mon ordi, le Warning :
    ftp_put() : Can't open that file: No such file or directory in ...
    . Pourtant le fichier est bien là dans le chemin contenu dans $source_file. J'ai bien essayé en retirant les guillemets, mais sans résultat !

    Merci d'avance à ceux qui me diront où est mon erreur.

  2. #2
    Membre émérite
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Points : 2 399
    Points
    2 399
    Par défaut
    Si tu n'as pas accès au fichier php.ini, tu peux quand même modifier la variable directement dans ton script php en utilisant la fonction ini_set()
    http://php.net/manual/fr/function.ini-set.php

    Sinon, pour ce qui est de ton problème, peut être un problème dans l'url d’accès au ftp ?

  3. #3
    Membre régulier
    Homme Profil pro
    Retraité Ing Electronique
    Inscrit en
    Mars 2004
    Messages
    369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 77
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Retraité Ing Electronique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2004
    Messages : 369
    Points : 121
    Points
    121
    Par défaut
    Merci Seb33300,

    Les fonctions ini_set() ne fonctionnent pas non plus, je suppose que c'est parce que nous avons un hébergement mutualisé. En effet, nous sommes une petite association et nous n'avons pas les moyens de nous offrir plus.

    Notre seule solution est donc l'utilisation des fonctions ftp.

    Pour l'essai, après avoir initialisé les variables $ftp_server, $ftp_user_name, ftp_user_pass et $destination_file, nous utilisons le code ci-dessous.

    Comme vous pouvez le constater dans la réponse, la connexion au serveur se passe bien, mais l'erreur est que ftp_put ne reconnait pas le contenu de $source_file !

    Ma question est donc : quel contenu faut il mettre dans $source_file, pour que ftp_put() le reconnaisse comme un fichier local ?

    Merci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $source_file="d:/video.avi";
     
    $conn_id = ftp_connect($ftp_server);
    $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
    if ((!$conn_id) || (!$login_result)) { echo "La connexion à $ftp_server avec $ftp_user_name a échoué !"; die; }
    else  { echo "Connecté à $ftp_server, avec $ftp_user_name"; }
     
    $upload = ftp_put($conn_id,$destination_file,$source_file,FTP_BINARY);
    if (!$upload) { echo "Le téléchargement Ftp a échoué!"; }
    else { echo "Téléchargement de $source_file sur $ftp_server en $destination_file, réussi"; }
     
    ftp_quit($conn_id);
    la réponse à ce code est :
    Connecté à ftp.monhébergeur, avec monftp
    Warning: ftp_put(d:/video.avi) [function.ftp-put]: failed to open stream: No such file or directory in monsite/ess_ftp.php on line 8
    Le téléchargement Ftp a échoué!

  4. #4
    Membre émérite
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Points : 2 399
    Points
    2 399
    Par défaut
    PHP n'as pas accès à ton disque local.

    Il a juste accès au fichiers hébergés sur ton serveur PHP.
    Il faut donc passer par une 1ère étape qui va consister à uploader ton fichier. Et dans $source_file tu mettras l'url de ton fichier après upload.

  5. #5
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 727
    Points
    10 727

Discussions similaires

  1. Réponses: 9
    Dernier message: 25/11/2023, 19h16
  2. Upload de gros fichiers avec accès php.ini
    Par kcin dans le forum Langage
    Réponses: 1
    Dernier message: 03/11/2011, 18h12
  3. [Upload] Upload de GROS fichiers en php
    Par osscour dans le forum Langage
    Réponses: 21
    Dernier message: 26/05/2006, 14h13
  4. [Upload] Problème upload de gros fichiers avec Firefox
    Par the rootsm@n dans le forum Langage
    Réponses: 12
    Dernier message: 19/02/2006, 20h43
  5. [Upload] Upload de gros fichiers
    Par Rémiz dans le forum Langage
    Réponses: 8
    Dernier message: 07/01/2006, 11h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo