Téléchargement de fichier ( PHP) ERREUR double en-tête
ghizou2194
Messages postés
9
Date d'inscription
Statut
Membre
Dernière intervention
-
ghizou2194 Messages postés 9 Date d'inscription Statut Membre Dernière intervention -
ghizou2194 Messages postés 9 Date d'inscription Statut Membre Dernière intervention -
Bonsoir , j'ai un projet à faire et je doit télécharger des images
(upload & download) c'est un code simple sans les tests de vérifications
Le problème c'est que j'arrive pas à télécharger les image ça me fait une erreur genre :
En-têtes doubles envoyés par le serveur
Ce problème est généralement dû à un site Web ou un proxy mal configuré. Seul l'administrateur du site Web ou du proxy peut remédier à ce problème.
Code d'erreur : ERR_RESPONSE_HEADERS_MULTIPLE_CONTENT_LENGTH.
voici le code :
page : image_telecharger.php
Merci pour votre aide s.v.p c'est très important
(upload & download) c'est un code simple sans les tests de vérifications
Le problème c'est que j'arrive pas à télécharger les image ça me fait une erreur genre :
En-têtes doubles envoyés par le serveur
Ce problème est généralement dû à un site Web ou un proxy mal configuré. Seul l'administrateur du site Web ou du proxy peut remédier à ce problème.
Code d'erreur : ERR_RESPONSE_HEADERS_MULTIPLE_CONTENT_LENGTH.
voici le code :
page : image_telecharger.php
<?php
try
{
$bdd = new PDO('mysql:host=localhost;dbname=facile', 'root', '',array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
}catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
$sql = $bdd->prepare('SELECT image FROM images WHERE id_image = ?');
$sql->execute (array($_GET['id_image']));
$data = $sql->fetch();
header('Content-description : File transfer');
header('Content-type : application/octet-stream');
header('Content-Disposition : attachment; filename="image.jpg" ');
header('Content-length : '.filesize ('upa/'.$data['image']) );
ob_clean();
readfile('upa/'.$data['image']);
?>
Merci pour votre aide s.v.p c'est très important
A voir également:
- Téléchargement de fichier ( PHP) ERREUR double en-tête
- Double ecran - Guide
- Fichier bin - Guide
- Site de telechargement - Accueil - Outils
- Fichier epub - Guide
- Whatsapp double sim - Guide
5 réponses
Bonsoir
Ton code, en mettant un fichier image "en dur" au lieu de le lire dans une base de données, marche chez moi.
D'après ton message d'erreur, on dirait que tu as plusieurs 'Content-length' : j'ai volontairement dupliqué la ligne, pas de problème. je l'ai complètement supprimée, pas de problème non plus.
Tu n'as que ce code dans ton image_telecharger.php ou il y a autre chose ?
Ton code, en mettant un fichier image "en dur" au lieu de le lire dans une base de données, marche chez moi.
D'après ton message d'erreur, on dirait que tu as plusieurs 'Content-length' : j'ai volontairement dupliqué la ligne, pas de problème. je l'ai complètement supprimée, pas de problème non plus.
Tu n'as que ce code dans ton image_telecharger.php ou il y a autre chose ?
J'avoue que je ne vois pas très bien d'où ça peut venir.
Peux-tu voir avec la console de ton navigateur quelles en-têtes on été reçues ?
Je suppose que ce message d'erreur apparaît quand tu cliques sur ton lien "Télécharger".
Est-ce uniquement quand tu cliques sur le lien, ou l'as-tu aussi quand tu tapes directement image_telecharger.php?id_image=qqchose dans ton navigateur ?
Peux-tu voir avec la console de ton navigateur quelles en-têtes on été reçues ?
Je suppose que ce message d'erreur apparaît quand tu cliques sur ton lien "Télécharger".
Est-ce uniquement quand tu cliques sur le lien, ou l'as-tu aussi quand tu tapes directement image_telecharger.php?id_image=qqchose dans ton navigateur ?
en fait avant le code marché bien avec des fichiers/images
mais lorsque j'ai remplacer
par l'URL (afin d'afficher cette image sur la page )
l'erreur est apparue
j'ai enlevé la partie :
ça se télécharge mais quand je clique pour ouvrir l'image une icone blanche avec une croix rouge apparait
mais lorsque j'ai remplacer
@$file = $_FILES['image']['name'];
par l'URL (afin d'afficher cette image sur la page )
@$lien='http://localhost/facile/publier/upa/'.$_FILES["image"]["name"];
l'erreur est apparue
j'ai enlevé la partie :
header('Content-length : '.filesize ('upa/'.$data['image']) );
ça se télécharge mais quand je clique pour ouvrir l'image une icone blanche avec une croix rouge apparait
Quand tu tapes directement image_telecharger.php?id_image=qqchose dans ton navigateur (avec un bon id à la place de qq chose), qu'est-ce qui se passe ?
toujours la même chose le même message du navigateur
En-têtes doubles envoyés par le serveur
je crois que je vais laisser l'utilisateur simplement enregistrer l'image au lieu de la télécharger
par contre j'ai une autre question si cela ne vous dérange pas bien sure
en fait je veux faire une jointure entre 4 tables (user,statuts,myfiles,images )
voici la requête
Je veux afficher tout les membres avec leurs publications (statuts ,images,fichiers)
Le problème c'est que ça m'affiche seulement les statuts,fichiers,images du membre connecté pourtant je n'ai pas mis de condition
Merci pour votre aide
En-têtes doubles envoyés par le serveur
je crois que je vais laisser l'utilisateur simplement enregistrer l'image au lieu de la télécharger
par contre j'ai une autre question si cela ne vous dérange pas bien sure
en fait je veux faire une jointure entre 4 tables (user,statuts,myfiles,images )
voici la requête
$req = $bdd->query ('SELECT user.pseudo as moi , statut,image,fichier,date_statut,date_image,date_fichier , id_statut,id_image,id_fichier
FROM user
INNER JOIN statuts ON statuts.id_auteur = user.user_id
INNER JOIN images ON images.id_auteur = user.user_id
INNER JOIN myfiles ON myfiles.id_auteur = user.user_id
'
);
Je veux afficher tout les membres avec leurs publications (statuts ,images,fichiers)
Le problème c'est que ça m'affiche seulement les statuts,fichiers,images du membre connecté pourtant je n'ai pas mis de condition
Merci pour votre aide
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
je crois que je vais laisser l'utilisateur simplement enregistrer l'image au lieu de la télécharger
Je ne vois pas le rapport, où alors il y a un gros point qui m'a échappé.
Qu'entends-tu par "enregistrer" et "télécharger" ? Peux-tu préciser quel est le sens du transfert (client vers serveur ou serveur vers client) que tu mets derrière chacun de ces mots ? Car de puis le début, pour moi, ton problème se situe dans le sens serveur vers client uniquement, l'autre sens n'a aucun rapport.
En ce qui concerne ton problème de jointure, si tu ne vois que le membre connecté, c'est peut-être que tu essayes toujours avec le seul qui a à la fois des statuts, des images et des fichiers. Avec des INNER JOIN au lieu de LEFT JOIN (au moins sur la première jointure), tu ne sors que ceux qui ont quelque chose dans toutes les tables.
Je ne vois pas le rapport, où alors il y a un gros point qui m'a échappé.
Qu'entends-tu par "enregistrer" et "télécharger" ? Peux-tu préciser quel est le sens du transfert (client vers serveur ou serveur vers client) que tu mets derrière chacun de ces mots ? Car de puis le début, pour moi, ton problème se situe dans le sens serveur vers client uniquement, l'autre sens n'a aucun rapport.
En ce qui concerne ton problème de jointure, si tu ne vois que le membre connecté, c'est peut-être que tu essayes toujours avec le seul qui a à la fois des statuts, des images et des fichiers. Avec des INNER JOIN au lieu de LEFT JOIN (au moins sur la première jointure), tu ne sors que ceux qui ont quelque chose dans toutes les tables.
Bonsoir merci beaucoup pour la solution de la jointure cela m'a échappé
pour l'image voici un lien contenant une photo illustrant ce que je veut faire j'espère que ça sera plus clair
https://ghizouta-ghizou.skyrock.com/3247553250-posted-on-2015-03-27.html
pour l'image voici un lien contenant une photo illustrant ce que je veut faire j'espère que ça sera plus clair
https://ghizouta-ghizou.skyrock.com/3247553250-posted-on-2015-03-27.html
Merci pour votre réponse
en fait j'ai 2 code l'un pour publier l'image et l'autre pour la télécharger
en gros voici les 2 code :
image_publier.php
page: image_telecharger.php