Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources 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 15/12/2011, 19h42   #1
Candidat au titre de Membre du Club
 
Homme
Étudiant
Inscription : novembre 2011
Messages : 33
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Savoie (Rhône Alpes)

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Matériel informatique

Informations forums :
Inscription : novembre 2011
Messages : 33
Points : 10
Points : 10
Par défaut Récupérer un fichier avec cookie

Bonsoir,

Je cherche à récupérer un fichier sur un site distant via mon serveur. Pour pouvoir récupérer le fichier il faut récupérer aussi un cookie.

Code :
1
2
3
4
5
6
7
8
<?php
$link = "http://la page pour récupérer le cookie";
 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie);
curl_setopt($ch, CURLOPT_URL, $link);
curl_exec ($ch);
curl_close ($ch);

En utilisant curl j'arrive a récupérer le cookie mais maintenant je vois pas comment lancer le téléchargement sur ma page. Pour être plus précis :
  • je récupère le cookie
  • et ensuite j'indique l'adresse du fichier et sa lance directement le téléchargement (comme un peu proxy)
Je pense que c'est tout a fais possible mais je ne sais pas du tout comment faire.

Voilà je suis donc à votre écoute pour vos solutions.
tyty63 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2011, 20h23   #2
Modérateur
 
Inscription : septembre 2010
Messages : 7 219
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 219
Points : 8 598
Points : 8 598
faut faire une autre requête dans la meme session curl
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2011, 10h58   #3
Candidat au titre de Membre du Club
 
Homme
Étudiant
Inscription : novembre 2011
Messages : 33
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Savoie (Rhône Alpes)

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Matériel informatique

Informations forums :
Inscription : novembre 2011
Messages : 33
Points : 10
Points : 10
J'ai essayé de cette façon :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
$link = "http://dl.free.fr/getfile.pl?file=/bQTfwtv8";
 
$ch = curl_init();
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie);
curl_setopt($ch, CURLOPT_URL, $link);
curl_exec ($ch);
curl_close ($ch);
 
// on ouvre la page "cible" en ajoutant le cookie d'indentification dans le header http.
 
$fichier = 'http://dl.free.fr/lbQTfwtv8/%5BMFT%5DOnePiece649.zip';
curl_setopt($ch2, CURLOPT_RETURNTRANSFER,1);
 
curl_setopt($ch2, CURLOPT_COOKIEFILE, $cookie);
 
curl_setopt($ch2, CURLOPT_URL, $fichier);
 
$result = curl_exec ($ch2);
 
curl_close ($ch2);
Pour mon exemple il s'agit de Free.
Mais sa ne marche pas, sa m'affiche juste la page alors que je souhaiterai voir un popup de demande de téléchargement du fichier.
tyty63 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2011, 11h08   #4
Modérateur
 
Inscription : septembre 2010
Messages : 7 219
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 219
Points : 8 598
Points : 8 598
t'es plus dans la même session puisque tu la fermer, enlève le premier curl_close
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2011, 11h19   #5
Candidat au titre de Membre du Club
 
Homme
Étudiant
Inscription : novembre 2011
Messages : 33
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Savoie (Rhône Alpes)

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Matériel informatique

Informations forums :
Inscription : novembre 2011
Messages : 33
Points : 10
Points : 10
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
$link = "http://dl.free.fr/getfile.pl?file=/bQTfwtv8";
$ch = curl_init();
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie);
curl_setopt($ch, CURLOPT_URL, $link);
curl_exec ($ch);
 
// on ouvre la page "cible" en ajoutant le cookie d'indentification dans le header http.
 
$fichier = 'http://dl.free.fr/lbQTfwtv8/%5BMFT%5DOnePiece649.zip';
curl_setopt($ch2, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch2, CURLOPT_COOKIEFILE, $cookie);
curl_setopt($ch2, CURLOPT_URL, $fichier);
 
$result = curl_exec ($ch2);
Ce qui donne le même résultat.
tyty63 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2011, 13h42   #6
Modérateur
 
Inscription : septembre 2010
Messages : 7 219
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 219
Points : 8 598
Points : 8 598
et $cookie est definie ou ?
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2011, 14h14   #7
Candidat au titre de Membre du Club
 
Homme
Étudiant
Inscription : novembre 2011
Messages : 33
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Savoie (Rhône Alpes)

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Matériel informatique

Informations forums :
Inscription : novembre 2011
Messages : 33
Points : 10
Points : 10
Faut le définir ? du style :

tyty63 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2011, 16h35   #8
Modérateur
 
Inscription : septembre 2010
Messages : 7 219
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 219
Points : 8 598
Points : 8 598
Citation:
Envoyé par tyty63 Voir le message
Faut le définir ? du style :

oui la ta a variable vide, PHP devrai te rendre une erreur, travailel toujours avec le niveau d'erreur maximal,

display_errors sur On
error_reporting sur E_ALL | E_STRICT
__________________
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 05h21.


 
 
 
 
Partenaires

Hébergement Web