Sauvegarder un fichier
victoires
Messages postés
119
Date d'inscription
Statut
Membre
Dernière intervention
-
Pitet Messages postés 2826 Date d'inscription Statut Membre Dernière intervention -
Pitet Messages postés 2826 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un lien https://monsite.fr/download.php?id=$idFichier, ce lien me propose le téléchargement du fichier (word ou PDF). Ce ques je souhaite faire est d'automatiser le téléchargement via un script PHP, mais je n'arrive pas à faire fonctionner excatement, voici mon code :
avec ce code j'ai le PDF mais 0 octets !
Quelqu'un a une idée sur comment résoudre ce problème ? et s'il existe d'autres solutions ? Merci d'avance
Cordialement
J'ai un lien https://monsite.fr/download.php?id=$idFichier, ce lien me propose le téléchargement du fichier (word ou PDF). Ce ques je souhaite faire est d'automatiser le téléchargement via un script PHP, mais je n'arrive pas à faire fonctionner excatement, voici mon code :
$file = file_get_contents("https://monsite.fr/download.php?id=$idFichier"); file_put_contents("$fileName", $file);
avec ce code j'ai le PDF mais 0 octets !
Quelqu'un a une idée sur comment résoudre ce problème ? et s'il existe d'autres solutions ? Merci d'avance
Cordialement
A voir également:
- Sauvegarder un fichier
- Fichier bin - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Fichier rar - Guide
- Fichier .dat - Guide
1 réponse
Salut,
Tu peux forcer le téléchargement en PHP via les fonctions readfile() et header(), je t'invite à regarder l'exemple de la doc : https://www.php.net/manual/fr/function.readfile.php#example-2663
Une alternative plus simple uniquement en html si ton fichier est directement accessible est d'utiliser l'attribut download sur une balise a :
Bonne journée
Tu peux forcer le téléchargement en PHP via les fonctions readfile() et header(), je t'invite à regarder l'exemple de la doc : https://www.php.net/manual/fr/function.readfile.php#example-2663
Une alternative plus simple uniquement en html si ton fichier est directement accessible est d'utiliser l'attribut download sur une balise a :
<a href="http://monsite.com/lien-vers-fichier-pdf.pdf" download>Télécharger le PDF</a>
Bonne journée
en fait, je n'ai pas un lien direct vers le PDF, le lien que j'ai me propose un téléchargement manuelle mais je veux automatiser le téléchargement et sauvegarder le fichier directement sur le serveur.
Pour l'enregistrer sur le serveur ta méthode est la bonne.
Plusieurs points à vérifier :
- la directive php allow_url_fopen doit être activée pour que la fonction file_get_contents puisse télécharger des fichiers distants (à vérifier via phpinfo par exemple)
- vérifier que le chemin renseigné par la variable $fileName est correct
- vérifier que le chemin renseigné par la variable $fileName a les droits d'écritures pour le serveur web
Enfin, penser à activer le rapport d'erreur et l'affichage des erreurs php afin de voir plus facilement d'où vient le problème.