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 31/10/2011, 21h56   #1
Membre régulier
 
Homme
Retraité Ing Electronique
Inscription : mars 2004
Messages : 227
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 65
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 : 227
Points : 72
Points : 72
Envoyer un message via Yahoo à zakuli Envoyer un message via Skype™ à zakuli
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 :
Citation:
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.
zakuli est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/11/2011, 01h00   #2
Membre Expert
 
Avatar de Seb33300
 
Homme Sébastien Alfaiate
Développeur Web
Inscription : janvier 2007
Messages : 1 329
Détails du profil
Informations personnelles :
Nom : Homme Sébastien Alfaiate
Âge : 26
Localisation : France, Gironde (Aquitaine)

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

Informations forums :
Inscription : janvier 2007
Messages : 1 329
Points : 1 657
Points : 1 657
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 ?
__________________
Zend Certified Engineer PHP 5.3

« Crois-tu comprendre le monde juste en matant le 20H Ou connaître l'histoire en ayant lu que l'angle des vainqueurs ? » Keny Arkana
Seb33300 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/11/2011, 06h50   #3
Membre régulier
 
Homme
Retraité Ing Electronique
Inscription : mars 2004
Messages : 227
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 65
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 : 227
Points : 72
Points : 72
Envoyer un message via Yahoo à zakuli Envoyer un message via Skype™ à zakuli
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 :
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 :
Citation:
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é!
zakuli est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/11/2011, 15h10   #4
Membre Expert
 
Avatar de Seb33300
 
Homme Sébastien Alfaiate
Développeur Web
Inscription : janvier 2007
Messages : 1 329
Détails du profil
Informations personnelles :
Nom : Homme Sébastien Alfaiate
Âge : 26
Localisation : France, Gironde (Aquitaine)

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

Informations forums :
Inscription : janvier 2007
Messages : 1 329
Points : 1 657
Points : 1 657
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.
__________________
Zend Certified Engineer PHP 5.3

« Crois-tu comprendre le monde juste en matant le 20H Ou connaître l'histoire en ayant lu que l'angle des vainqueurs ? » Keny Arkana
Seb33300 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 01/11/2011, 15h29   #5
Modérateur
 
Inscription : septembre 2010
Messages : 7 156
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 156
Points : 8 524
Points : 8 524
essaye via PUT http://php.net/manual/fr/features.fi...put-method.php
__________________
http://blog.stealth35.com/
stealth35 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 12h28.


 
 
 
 
Partenaires

Hébergement Web