Mettre un bouton télécharger qui n'ouvre pas avec IE
Résolu
quedeprobleme
Messages postés
12
Date d'inscription
Statut
Membre
Dernière intervention
-
quedeprobleme Messages postés 12 Date d'inscription Statut Membre Dernière intervention -
quedeprobleme Messages postés 12 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Mettre un bouton télécharger qui n'ouvre pas avec IE
- Télécharger clavier arabe - Télécharger - Divers Web & Internet
- Telecharger ccleaner - Télécharger - Nettoyage
- Comment ouvrir un fichier epub ? - Guide
- Telecharger word 2013 - Télécharger - Traitement de texte
- Télécharger instagram pc - Télécharger - Divers Communication
15 réponses
Merci pour toutes ces réponses. Il y a bien du monde.
J'ai été pris hier avec un bug sur une instruction sur un code de mon logiciel de programmation, et j'ai mis beaucoup de temps pour trouver une parade. Je m'excuse par avance de ne pas avoir répondu avant.
Pour ce qui est du doctype, je l'ai rajouté par la suite, car le code php ne donnait rien, sans savoir pourquoi.
La question que je peux posé est la suivante: ne faut-il pas qu'un logiciel comme Apache soit sur la machine pour que ça fonctionne? Car tout ce que j'ai pu avoir, est le texte du code php.
Cela dit comme je l'ai déjà dis, en faisant un code html, mais en mettant le lien complet, et non le lien relatif, les fichier zip se téléchargent avec IE. C'est juste une manoeuvre de code dans mon programme. Et ma fois puisque ça marche aisi, je suis satisfait. Cela dit, j'étais d'accord pour faire l'essai avec php par curiosité. Mais vraiment en ces périodes, je ne peux pas prendre le temps d'apprendre php. L'année dernière j'avais commencé à apprendre le c++, et c'était plaisant, mais soit je continuais à apprendre, et je délaissais le reste, soit je continuai sur préoccupation du moment.
Je n'ai pas dit mon dernier mot, et au c++, j'espère bien y revenir.
Bonne nuit.
Quand à Gravgun j'ai jeté un oeil sur ton site. Intéressant! Pourquoi tout en anglais?
J'ai été pris hier avec un bug sur une instruction sur un code de mon logiciel de programmation, et j'ai mis beaucoup de temps pour trouver une parade. Je m'excuse par avance de ne pas avoir répondu avant.
Pour ce qui est du doctype, je l'ai rajouté par la suite, car le code php ne donnait rien, sans savoir pourquoi.
La question que je peux posé est la suivante: ne faut-il pas qu'un logiciel comme Apache soit sur la machine pour que ça fonctionne? Car tout ce que j'ai pu avoir, est le texte du code php.
Cela dit comme je l'ai déjà dis, en faisant un code html, mais en mettant le lien complet, et non le lien relatif, les fichier zip se téléchargent avec IE. C'est juste une manoeuvre de code dans mon programme. Et ma fois puisque ça marche aisi, je suis satisfait. Cela dit, j'étais d'accord pour faire l'essai avec php par curiosité. Mais vraiment en ces périodes, je ne peux pas prendre le temps d'apprendre php. L'année dernière j'avais commencé à apprendre le c++, et c'était plaisant, mais soit je continuais à apprendre, et je délaissais le reste, soit je continuai sur préoccupation du moment.
Je n'ai pas dit mon dernier mot, et au c++, j'espère bien y revenir.
Bonne nuit.
Quand à Gravgun j'ai jeté un oeil sur ton site. Intéressant! Pourquoi tout en anglais?
Salut,
ça donne quoi avec simplement le lien vers le fichier(sans bouton mais avec <a href="monfichier.zip">télécharger</a>).
Sinon je ne peut dire, un zip n'est pas censé être affiché dans un navigateur donc...IE fait du n'importe quoi comme d'hab.
ça donne quoi avec simplement le lien vers le fichier(sans bouton mais avec <a href="monfichier.zip">télécharger</a>).
Sinon je ne peut dire, un zip n'est pas censé être affiché dans un navigateur donc...IE fait du n'importe quoi comme d'hab.
'lut, d'où sors le
Vire moi ce
Ça peut se faire avec PHP comme ceci par exemple:
</span>et où ton
<input>se ferme-t-il?
Vire moi ce
<a>de l'input, tu fais soit l'un soit l'autre, pas les deux. Pour ce qui est du téléchargement/ouverture, ce n'est pas coté HTML/JS qu'il faut bidouiller, mais coté serveur: il faut transférer l'en-tête
Content-Disposition: attachment; filename=[nom du fichier].
Ça peut se faire avec PHP comme ceci par exemple:
header('Content-Type: application/zip'); header('Content-Disposition: attachment; filename=voir.zip'); header('Pragma: no-cache'); readfile("voir.zip");
Bonjour,
J'ai perdu ma réponse précédente avec les inscriptions. Si c'est déjà posté, je vous prie de m'excuser pour le double poste.
Je vous remercie de vos réponses. A cette heure-ci je peux juste faire une réponse de politesse. Je regarderai tard ce soir ce que vous avez posté. Je ne peux pas maintenant, et je vous tiens au courant.
Merci d'avance. @+
J'ai perdu ma réponse précédente avec les inscriptions. Si c'est déjà posté, je vous prie de m'excuser pour le double poste.
Je vous remercie de vos réponses. A cette heure-ci je peux juste faire une réponse de politesse. Je regarderai tard ce soir ce que vous avez posté. Je ne peux pas maintenant, et je vous tiens au courant.
Merci d'avance. @+
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonsoir.
Je fais une première réponse pour gravgun:
A la question: 'lut, d'où sors le </span> et où ton <input> se ferme-t-il?
Comme je l'ai dit, j'ai mis deux boutons. C'était un teste pour voir. Le premier:
<input type="button" value="Télécharger" click="window.location='data/voir.zip'";>
le le deuxième:
<a href='data/voir.zip' download= 'voir.zip' title='télécharger le fichier, ne fonctionne pas avec I.E.: voir.zip' type='application' span class='telecharge'> Télécharger </span></a>
Les deux fonctionnaient, mais c'est en essayant avec IE que j'utilise rarement que j'ai vu le problème.
Je ne programme pas en PHP, donc il faut que j'apprenne avant de pouvoir faire l'essai. Et je manque en ce moment énormément de temps. Je croyais mon programme fini pour ce que j'ai voulu faire, et j'ai vu ce problème. C'est très ennuyeux car il faut que je fasse autre chose. A titre d'exemple, je mets l'adresse du site, cela est sans publicités, même les robots je les mets de côté car cela n'apportera rien vu que c'est un site spécialisé pour peu de monde, plus un pari pour moi-même.
https://www.hostinger.fr/free-eol?utm_source=fri&utm_medium=www&utm_campaign=free_eol
Il n'est pas à jour, j'ai apporté des modifs depuis, et pour info, il devrait y avoir un menu qui scrolle en haut à gauche. Il y est lorsque je le lance depuis le disque dur, et il y était sur le site. Mais depuis une refonte de l'hébergeur, il n'apparaît plus. J'ai posé la question du pourquoi, et j'attend la réponse. Mais ne vous prenez pas la tête avec.
Il faut maintenant que je trouve comment faire pour mon bouton, et je regarde les réponses que vous m'avez faites, et espérant y arriver. C'aurai été une bonne chose d'avoir directement le code, mais je sais que vous allez me demandez de chercher par moi-même.
Je ne sais pas quand pour moi cela sera résolu, même si cela est inscrit dans le titre. Donc je vous demande d'être patient.
Edit (je ne sais pas si cela recopie tout, ou remplace. Je saurai après)
@TibereTchatcha: Pour: <a href="data/voir.zip">télécharger</a>
Cela marche avec Chrome, mais avec IE, j'ai un message: invalide command line.
Je fais une première réponse pour gravgun:
A la question: 'lut, d'où sors le </span> et où ton <input> se ferme-t-il?
Comme je l'ai dit, j'ai mis deux boutons. C'était un teste pour voir. Le premier:
<input type="button" value="Télécharger" click="window.location='data/voir.zip'";>
le le deuxième:
<a href='data/voir.zip' download= 'voir.zip' title='télécharger le fichier, ne fonctionne pas avec I.E.: voir.zip' type='application' span class='telecharge'> Télécharger </span></a>
Les deux fonctionnaient, mais c'est en essayant avec IE que j'utilise rarement que j'ai vu le problème.
Je ne programme pas en PHP, donc il faut que j'apprenne avant de pouvoir faire l'essai. Et je manque en ce moment énormément de temps. Je croyais mon programme fini pour ce que j'ai voulu faire, et j'ai vu ce problème. C'est très ennuyeux car il faut que je fasse autre chose. A titre d'exemple, je mets l'adresse du site, cela est sans publicités, même les robots je les mets de côté car cela n'apportera rien vu que c'est un site spécialisé pour peu de monde, plus un pari pour moi-même.
https://www.hostinger.fr/free-eol?utm_source=fri&utm_medium=www&utm_campaign=free_eol
Il n'est pas à jour, j'ai apporté des modifs depuis, et pour info, il devrait y avoir un menu qui scrolle en haut à gauche. Il y est lorsque je le lance depuis le disque dur, et il y était sur le site. Mais depuis une refonte de l'hébergeur, il n'apparaît plus. J'ai posé la question du pourquoi, et j'attend la réponse. Mais ne vous prenez pas la tête avec.
Il faut maintenant que je trouve comment faire pour mon bouton, et je regarde les réponses que vous m'avez faites, et espérant y arriver. C'aurai été une bonne chose d'avoir directement le code, mais je sais que vous allez me demandez de chercher par moi-même.
Je ne sais pas quand pour moi cela sera résolu, même si cela est inscrit dans le titre. Donc je vous demande d'être patient.
Edit (je ne sais pas si cela recopie tout, ou remplace. Je saurai après)
@TibereTchatcha: Pour: <a href="data/voir.zip">télécharger</a>
Cela marche avec Chrome, mais avec IE, j'ai un message: invalide command line.
Bonsoir,
J'ai regardé avec le PHP, mais pour l'instant je n'ai que des erreurs. Et j'ai pas le temps maintenant. Je verrai plus tard.
En attendant, j'ai essayé de faire juste un lien de téléchargement mais en mettant non pas un nom relatif depuis la page encours, mais en prenant le lien complet de la page du site. Et là avec les trois navigateurs dont IE qui avait le problème, cela fonctionnent.
N'ayant pas de proposition pour un vrai code complet en php, pour l'instant je fais les réglages du bouton dans un lien avec <a hre="... Je ne peux pas tout laissé de côté juste pour ce problème. Je pouvais mettre le lien d'un autre site qui s'occupe de cela harchive-host, mais comme il s'agit d'un programme que je mets à disposition pour justement au membre du forum de créer un site avec mon programme, je ne peux pas demander de faire une inscription juste pour télécharger un fichier.
Toutefois merci pour avoir suivi mon problème
Bonsoir.
J'ai regardé avec le PHP, mais pour l'instant je n'ai que des erreurs. Et j'ai pas le temps maintenant. Je verrai plus tard.
En attendant, j'ai essayé de faire juste un lien de téléchargement mais en mettant non pas un nom relatif depuis la page encours, mais en prenant le lien complet de la page du site. Et là avec les trois navigateurs dont IE qui avait le problème, cela fonctionnent.
N'ayant pas de proposition pour un vrai code complet en php, pour l'instant je fais les réglages du bouton dans un lien avec <a hre="... Je ne peux pas tout laissé de côté juste pour ce problème. Je pouvais mettre le lien d'un autre site qui s'occupe de cela harchive-host, mais comme il s'agit d'un programme que je mets à disposition pour justement au membre du forum de créer un site avec mon programme, je ne peux pas demander de faire une inscription juste pour télécharger un fichier.
Toutefois merci pour avoir suivi mon problème
Bonsoir.
Salut
un truc qui se fait c'est une page intermédiaire
tu mets le lien vers la page pour télécharger
<a href="telechargervoir.php" target="_blank">télécharger le zip</a>
et dans téléchargervoir.php
<?php
$fichier = 'data/voir.zip';
$nom_fichier = 'voir.zip';
header('Content-disposition: attachment; filename='.$nom_fichier);
header('Content-Type: application/zip');
header('Content-Transfer-Encoding: binary');
header('Content-Length: '.filesize($fichier));
header('Pragma: no-cache');
header('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
header('Expires: 0');
readfile($fichier);
?>
dès que le chargement se fait la page téléchargervoir.php se ferme: fonctionne meme sous IE8
sinon il y a la solution avec .htaccess
tu fais un lien normal
<a herf="data/voir.zip">télécharger le zip</a>
tu mets un .htaccess dans ton dossier data
et dans le .htaccess tu mets la ligne
AddType application/octet-stream pdf zip
Un petit merci vaut mieux qu'une grande ignorance !
Donc si votre sujet est résolu une réponse avec merci c'est pas de refus.
un truc qui se fait c'est une page intermédiaire
tu mets le lien vers la page pour télécharger
<a href="telechargervoir.php" target="_blank">télécharger le zip</a>
et dans téléchargervoir.php
<?php
$fichier = 'data/voir.zip';
$nom_fichier = 'voir.zip';
header('Content-disposition: attachment; filename='.$nom_fichier);
header('Content-Type: application/zip');
header('Content-Transfer-Encoding: binary');
header('Content-Length: '.filesize($fichier));
header('Pragma: no-cache');
header('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
header('Expires: 0');
readfile($fichier);
?>
dès que le chargement se fait la page téléchargervoir.php se ferme: fonctionne meme sous IE8
sinon il y a la solution avec .htaccess
tu fais un lien normal
<a herf="data/voir.zip">télécharger le zip</a>
tu mets un .htaccess dans ton dossier data
et dans le .htaccess tu mets la ligne
AddType application/octet-stream pdf zip
Un petit merci vaut mieux qu'une grande ignorance !
Donc si votre sujet est résolu une réponse avec merci c'est pas de refus.
Merci pour ta réponse.
J'ai pris tout le contenu de celle-ci. Je répond entre deux coups de feu. Ayant du retard à rattraper, je ne peux essayer aujourd'hui. J'espère pouvoir le faire dans les 48 heures, surtout qu'il faut que je laisse mon ordi. Je te tiens au courant des résultats.
@+
J'ai pris tout le contenu de celle-ci. Je répond entre deux coups de feu. Ayant du retard à rattraper, je ne peux essayer aujourd'hui. J'espère pouvoir le faire dans les 48 heures, surtout qu'il faut que je laisse mon ordi. Je te tiens au courant des résultats.
@+
Bonsoir,
Comme promis je donne mes résultats.
Pour ce qui concerne: htaccess, je n'ai pas fait l'essai, car apparemment cela concerne les permissions pour téléchargé. Je ne prévois pas de demander un pseudo et un mot de passe pour cela. Je ne cherche pas à bloquer, mais à partager, et cela concerne très peu de monde normalement.
Par contre j'ai essayé le premier code. J'ai essayé de plusieurs façons, mais je n'ai eu qu'une page blanche à chaque fois. Le clic du lien fonctionne, et m'ouvre une page blanche depuis le bouton. J'ai pensé que ce pouvait-être un problème de chemin. J'ai essayé les 3 - 4 possibilités qu'il y avait avec ou sans date/, en déplaçant le fichier pour essayé de le trouver dans le cas où j'aurai fait une erreur. Mais je n'ai pas réussi par cette méthode.
Pour l'instant j'ai ma technique avec le chemin réel qui fonctionne. Par contre je ne connais pas les possibilités qu'il y a pour que les dossiers soient en lecture seule, et sans demander de pseudo ou/et de mot de passe. Il faudrait que je regarde le forum de l'hébergeur, mais pour l'instant j'ai pas trouvé. Il y a bien une info sur le bouton "info" pour dire si les fichiers sont ou non en lecture seule, mais la procédure pour le faire je ne l'ai pas trouvé.
Merci, et je ne veux pas abuser.
Comme promis je donne mes résultats.
Pour ce qui concerne: htaccess, je n'ai pas fait l'essai, car apparemment cela concerne les permissions pour téléchargé. Je ne prévois pas de demander un pseudo et un mot de passe pour cela. Je ne cherche pas à bloquer, mais à partager, et cela concerne très peu de monde normalement.
Par contre j'ai essayé le premier code. J'ai essayé de plusieurs façons, mais je n'ai eu qu'une page blanche à chaque fois. Le clic du lien fonctionne, et m'ouvre une page blanche depuis le bouton. J'ai pensé que ce pouvait-être un problème de chemin. J'ai essayé les 3 - 4 possibilités qu'il y avait avec ou sans date/, en déplaçant le fichier pour essayé de le trouver dans le cas où j'aurai fait une erreur. Mais je n'ai pas réussi par cette méthode.
Pour l'instant j'ai ma technique avec le chemin réel qui fonctionne. Par contre je ne connais pas les possibilités qu'il y a pour que les dossiers soient en lecture seule, et sans demander de pseudo ou/et de mot de passe. Il faudrait que je regarde le forum de l'hébergeur, mais pour l'instant j'ai pas trouvé. Il y a bien une info sur le bouton "info" pour dire si les fichiers sont ou non en lecture seule, mais la procédure pour le faire je ne l'ai pas trouvé.
Merci, et je ne veux pas abuser.
la 1ere solution fonctionne puisque je l'utilise
la page doit être avec l'extension php et le chemin vers le fichier a télécharger correcte
$fichier = 'data/voir.zip';
voir.zip doit être dans le dossier data
sinon c'est peu etre ton hebergeur qui bloque
le 2eme solution ne demande pas de mot de passe, elle indique juste que telle ou telle extension de fichier ne s'ouvre pas dans un navigateur et donc se télécharge
sinon tout fichier que tu zip tu peux lui affecter un mot de passe avec 7zip par exemple
la page doit être avec l'extension php et le chemin vers le fichier a télécharger correcte
$fichier = 'data/voir.zip';
voir.zip doit être dans le dossier data
sinon c'est peu etre ton hebergeur qui bloque
le 2eme solution ne demande pas de mot de passe, elle indique juste que telle ou telle extension de fichier ne s'ouvre pas dans un navigateur et donc se télécharge
sinon tout fichier que tu zip tu peux lui affecter un mot de passe avec 7zip par exemple
Bonsoir.
Désolé mais je n'avais pas vu que j'avais des réponses. D'abord, je suis bien conscient que cela doit marcher. Mais certainement une chose n'a pas été comprise de ma part.
J'ai fait 3 fichiers qui ne servent qu'à faire des essais pour être copié ici. Le fichier html de départ (nommé: teste.html)
<!DOCTYPE html>
<HTML>
<HEAD>
<link rel='stylesheet' href='style.css' type='text/css' />
</HEAD>
<body>
<a href="data/telechargervoir.php" target="_blank">télécharger le zip</a>
</body>
</HTML>
Ensuite le fichier php:
<!DOCTYPE html>
<HTML>
<HEAD>
<?php
$fichier = 'data/voir.zip';
$nom_fichier = 'voir.zip';
header('Content-disposition: attachment; filename='.$nom_fichier);
header('Content-Type: application/zip');
header('Content-Transfer-Encoding: binary');
header('Content-Length: '.filesize($fichier));
header('Pragma: no-cache');
header('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
header('Expires: 0');
readfile($fichier);
?>
</HEAD>
</html>
J'ai ajouté !DOCTYPE pour voir si il y avait une diférence. Mais c'est pareil. J'avais aussi fait l'essai de mettre des guillemets à la place d'apostrophes. Çà ne change rien.
Ce fichier je l'ai mis dans un dossier data de la feuille où est placé le fichier teste.html
et un petit texte mis en zip, comme: voir.zip , dans le dossier data (le même dossier que "telechargervoir.php")
Bonjour!
teste de téléchargement
Bonsoir!
Je ne sais pas où est l'erreur. Certainement un oubli dans une instruction que je dois mettre.
L'ensemble des ces fichiers et dossiers, je les ai mis sur un Webdab à l'adresse suivante: https://www.mydrive.ch/
login: panoramic@cosmos70
Mot de passe: panoramic123
dossier en lecture seul qu'on se partage. Je retirertai dans quelques jours ces infos qui n'auront plus lieu d'être.
Et il faut copier le dossier "TESTE" J'ai voulu faire un zip du dossier TESTE, mais il y avait (peut-être à cause du fichier zip à l'intérieur) un problème d'arborescence.
Normalement cela ne devrait pas être nécessaire de recopier ce dossier, mais si il y a problème de compréhension, cela pourra se contrôler.
Salutation!
EDIT:
Le fichier php étant dans le dossier data/, j'ai essayé avec le chemin sans data/, le résultat est le même.
Là j'arrête car je tourne en rond. Je dois mettre à jour mon travail d'aujourd'hui.
Bonne nuit!
Désolé mais je n'avais pas vu que j'avais des réponses. D'abord, je suis bien conscient que cela doit marcher. Mais certainement une chose n'a pas été comprise de ma part.
J'ai fait 3 fichiers qui ne servent qu'à faire des essais pour être copié ici. Le fichier html de départ (nommé: teste.html)
<!DOCTYPE html>
<HTML>
<HEAD>
<link rel='stylesheet' href='style.css' type='text/css' />
</HEAD>
<body>
<a href="data/telechargervoir.php" target="_blank">télécharger le zip</a>
</body>
</HTML>
Ensuite le fichier php:
<!DOCTYPE html>
<HTML>
<HEAD>
<?php
$fichier = 'data/voir.zip';
$nom_fichier = 'voir.zip';
header('Content-disposition: attachment; filename='.$nom_fichier);
header('Content-Type: application/zip');
header('Content-Transfer-Encoding: binary');
header('Content-Length: '.filesize($fichier));
header('Pragma: no-cache');
header('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
header('Expires: 0');
readfile($fichier);
?>
</HEAD>
</html>
J'ai ajouté !DOCTYPE pour voir si il y avait une diférence. Mais c'est pareil. J'avais aussi fait l'essai de mettre des guillemets à la place d'apostrophes. Çà ne change rien.
Ce fichier je l'ai mis dans un dossier data de la feuille où est placé le fichier teste.html
et un petit texte mis en zip, comme: voir.zip , dans le dossier data (le même dossier que "telechargervoir.php")
Bonjour!
teste de téléchargement
Bonsoir!
Je ne sais pas où est l'erreur. Certainement un oubli dans une instruction que je dois mettre.
L'ensemble des ces fichiers et dossiers, je les ai mis sur un Webdab à l'adresse suivante: https://www.mydrive.ch/
login: panoramic@cosmos70
Mot de passe: panoramic123
dossier en lecture seul qu'on se partage. Je retirertai dans quelques jours ces infos qui n'auront plus lieu d'être.
Et il faut copier le dossier "TESTE" J'ai voulu faire un zip du dossier TESTE, mais il y avait (peut-être à cause du fichier zip à l'intérieur) un problème d'arborescence.
Normalement cela ne devrait pas être nécessaire de recopier ce dossier, mais si il y a problème de compréhension, cela pourra se contrôler.
Salutation!
EDIT:
Le fichier php étant dans le dossier data/, j'ai essayé avec le chemin sans data/, le résultat est le même.
Là j'arrête car je tourne en rond. Je dois mettre à jour mon travail d'aujourd'hui.
Bonne nuit!
Ça ne marche pas car quand on utilise la fonction
header(), il faut mettre le PHP en tout premier, avant le doctype. Et la le doctype et toute la structure HTML de la page, il faut la virer car on indique que ce qui va être envoyé est une pièce jointe, si on laisse le HTML il sera "incorporé" au début du fichier et donc ne sera pas ouvrable!
Pas besoin de header php pour télécharger un simple fichier zip. Il suffit juste de savoir utiliser correctement la syntaxe HTML.
j'ai vue ces problèmes hallucinant:
- Il manque de l'ordre car il y a tout un CSS sur une seul ligne.
- CSS non fini d'être écrit correctement
- HTML non fini d'être écrit correctement
- majuscule pour écrire une balise html
- header php mélanger avec html
- Des balises de fermeture apparaissent de nulle part dans le code
Il y a quand même un point positif car le doctype a bien été écrit dans les testes.
cela permet d'avoir un comportement similaire selon les navigateurs.
j'ai vue ces problèmes hallucinant:
- Il manque de l'ordre car il y a tout un CSS sur une seul ligne.
- CSS non fini d'être écrit correctement
- HTML non fini d'être écrit correctement
- majuscule pour écrire une balise html
- header php mélanger avec html
- Des balises de fermeture apparaissent de nulle part dans le code
Il y a quand même un point positif car le doctype a bien été écrit dans les testes.
cela permet d'avoir un comportement similaire selon les navigateurs.
Re
ne met que le php dans le fichier telechargervoir.php et rien d'autre (pas de balise de doctype rien d'autre que le php).
ensuite mets telechargervoir.php à la racine du site et pas dans le fichier data
et appelle le comme ca <a href="telechargervoir.php" target="_blank">télécharger le zip</a>
ca devrait marcher
je t'explique l'erreur que tu as faite
si telechargervoir.php est dans le dossier data, la variable $fichier = 'data/voir.zip'; ira chercher voir.zip dans un dossier data qui se trouve lui meme dans le dossier data (parceque telechargervoir.php est dans le dossier data)
donc la ca cherche data/data/voir.zip
voila
ne met que le php dans le fichier telechargervoir.php et rien d'autre (pas de balise de doctype rien d'autre que le php).
ensuite mets telechargervoir.php à la racine du site et pas dans le fichier data
et appelle le comme ca <a href="telechargervoir.php" target="_blank">télécharger le zip</a>
ca devrait marcher
je t'explique l'erreur que tu as faite
si telechargervoir.php est dans le dossier data, la variable $fichier = 'data/voir.zip'; ira chercher voir.zip dans un dossier data qui se trouve lui meme dans le dossier data (parceque telechargervoir.php est dans le dossier data)
donc la ca cherche data/data/voir.zip
voila
@codeurh24, lors d'un téléchargement, le navigateur se contrefout de toutes les infos de la page d'où vient le téléchargement; aucune option faisant partie de n'importe quelle version de HTML (W3C) ne permet de forcer le téléchargement d'un fichier. Les headers HTTP sont les seuls à maitriser ça, aussi faut-il pourvoir les manipuler; ici avec PHP. Et tout le HTML doit être enlevé de la page qui enverra le zip pour permettre le téléchargement correct. Généralement un .zip sera téléchargé par le navigateur, mais si le serveur (en natif) envoie un mauvais
Content-Typeou que le navigateur gère mal le type MIME envoyé (beaucoup de confusion existe, des MIMEs standards ici, d'autres pas par là), il peut par ex l'ouvrir en tant que texte brut affiché directement dans le cadre de navigation, c'est moyen...
Oui logique, pour forcé un téléchargement il faut bien entendu changer le header en php mai pour un simple téléchargement de fichier zip, un simple lien html suffit. Et si le type mine est mal définis il suffit de la préciser dans le htaccess.
Aurait-tu des exemples précis, sur tel ou tel navigateur qui interprété mal les type mine ? pour que je test.
Aurait-tu des exemples précis, sur tel ou tel navigateur qui interprété mal les type mine ? pour que je test.
Bonsoir,
Je ne comprend pas. J'ai répondu il y a deux jours, et venant ici, je ne vois pas ma réponse. Pourtant je suis sure d'avoir vu le sujet posté. ???
De ce que je me souviens, est de précisé d'avoir fait le programme php sans le doctype. Comme ça ne marchait pas, je l'ai rajouté pour voir si il y avait une différence. Non ça ne marche pas, et je ne sais pas pourquoi (et sans avoir mis le doctype). Mais peut-être faut-il avoir un logiciel comme Apache pour que ça fonctionne. De toute façon, comme je l'ai déjà dit, j'ai un code maintenant qui marche en html, mais je mets le lien de la page du site, et non un lien relatif.
Je ne vais pas reprendre de mémoire tout ce que j'ai dit, cela a disparu, et j'ai un résultat. Pour ce qui est du php, j'étais curieux de voir. Je vous remercie tous de vos interventions. Et je suis désolé d'avoir été aussi long à vous répondre. Mais pourquoi le post n'ai plus (ou pas) présent? J'espère ce cette réponse vous pourrez la lire.
Je ne comprend pas. J'ai répondu il y a deux jours, et venant ici, je ne vois pas ma réponse. Pourtant je suis sure d'avoir vu le sujet posté. ???
De ce que je me souviens, est de précisé d'avoir fait le programme php sans le doctype. Comme ça ne marchait pas, je l'ai rajouté pour voir si il y avait une différence. Non ça ne marche pas, et je ne sais pas pourquoi (et sans avoir mis le doctype). Mais peut-être faut-il avoir un logiciel comme Apache pour que ça fonctionne. De toute façon, comme je l'ai déjà dit, j'ai un code maintenant qui marche en html, mais je mets le lien de la page du site, et non un lien relatif.
Je ne vais pas reprendre de mémoire tout ce que j'ai dit, cela a disparu, et j'ai un résultat. Pour ce qui est du php, j'étais curieux de voir. Je vous remercie tous de vos interventions. Et je suis désolé d'avoir été aussi long à vous répondre. Mais pourquoi le post n'ai plus (ou pas) présent? J'espère ce cette réponse vous pourrez la lire.
si ton message est la et j'y ai répondu mais comme quelqu'un a mis +1 il a été repositionné en haut (juste après ta 1ere question).
Bonjour,
Je trouvais un peu de temps, et je relisais le réponses que vous avez faites.
Je vois ceci:
Et dire que tout le monde pensait ici qu'en tant que mec qui programme ca tombait sous le sens que tu savais que php = serveur apache
si tu n'a pas de serveur sur ton ordi : php ne peut être exécuté
donc n'importe quelle page avec du php nécéssite un serveur du genre easyphp ou wamp (donc apache) qui n'est pas un logiciel mais plutot un serveur.
Bon, j'ai fait ce programme, car je me suis rendu compte que cela était possible de le faire en basic. Oui je sais ça ne plait pas à tout le monde, mais le basic d'aujourd'hui, et celui que j'ai connu dans les années 80, ça fait deux. Tout les testes que j'ai fait mon montré que c'était possible, donc je l'ai fait. Cela dit, il n'y avait aucune intention de faire un partage de commentaires, ou autre, le forum Panoramic suffit pour cela.
Ensuite, le problème que j'ai rencontré c'est ce bouton, objet de ce post. Tout le reste mon programme le gère. Ainsi si je veux rajouté une rubrique à un site, le simple faite de valider, remets à jour tous les liens des autres rubriques, et sujets. Maintenant je fais de manière simple une page, un sujet. Lorsque je veux mettre à jour le site (ce que je n'ai pas fait depuis un moment), un glissement du sujet vers le site, remplace l'autre.
Je me sers aussi de mon programme pour mettre à jour ce que je fait pour mon potager. Cette fois-ci, il ne s'agit plus d'une publication sur un site, mais je renvoie les données sur une tablette. Et grâce au html, avec deux systèmes d'exploitation différent, j'ai une synchronisation de mes données.
Comme j'ai pensé un moment qu'il fallait que je me mette au php (cela viendra peut-être un jour, il faut trouver le temps) , j'ai pensé à télécharger Apache, mise que je me suis demandé quelle version je devais choisir. Je verrais bien plus tard. Je vais diminuer pour quelques mois la programmation, j'ai trop de retard ailleurs.
J'ai essayé de faire des choses assez simple. Si l'un de vous à cliqué sur le lien de mon site, j'ai mis tous les outils que j'avais besoin, et (pour moi) la conception d'un sujet, ne me pose pas de problème. Je sais que vous feriez mieux que moi, mais je fait les choses selon mes possibilités, et le temps que je trouve pour le faire. (A titre d'information, je n'ai qu'un CAP de couvreur-zingueur que j'ai passé pendant mon service militaire en 1969) Donc soyez indulgent.
Salutation
Je trouvais un peu de temps, et je relisais le réponses que vous avez faites.
Je vois ceci:
Et dire que tout le monde pensait ici qu'en tant que mec qui programme ca tombait sous le sens que tu savais que php = serveur apache
si tu n'a pas de serveur sur ton ordi : php ne peut être exécuté
donc n'importe quelle page avec du php nécéssite un serveur du genre easyphp ou wamp (donc apache) qui n'est pas un logiciel mais plutot un serveur.
Bon, j'ai fait ce programme, car je me suis rendu compte que cela était possible de le faire en basic. Oui je sais ça ne plait pas à tout le monde, mais le basic d'aujourd'hui, et celui que j'ai connu dans les années 80, ça fait deux. Tout les testes que j'ai fait mon montré que c'était possible, donc je l'ai fait. Cela dit, il n'y avait aucune intention de faire un partage de commentaires, ou autre, le forum Panoramic suffit pour cela.
Ensuite, le problème que j'ai rencontré c'est ce bouton, objet de ce post. Tout le reste mon programme le gère. Ainsi si je veux rajouté une rubrique à un site, le simple faite de valider, remets à jour tous les liens des autres rubriques, et sujets. Maintenant je fais de manière simple une page, un sujet. Lorsque je veux mettre à jour le site (ce que je n'ai pas fait depuis un moment), un glissement du sujet vers le site, remplace l'autre.
Je me sers aussi de mon programme pour mettre à jour ce que je fait pour mon potager. Cette fois-ci, il ne s'agit plus d'une publication sur un site, mais je renvoie les données sur une tablette. Et grâce au html, avec deux systèmes d'exploitation différent, j'ai une synchronisation de mes données.
Comme j'ai pensé un moment qu'il fallait que je me mette au php (cela viendra peut-être un jour, il faut trouver le temps) , j'ai pensé à télécharger Apache, mise que je me suis demandé quelle version je devais choisir. Je verrais bien plus tard. Je vais diminuer pour quelques mois la programmation, j'ai trop de retard ailleurs.
J'ai essayé de faire des choses assez simple. Si l'un de vous à cliqué sur le lien de mon site, j'ai mis tous les outils que j'avais besoin, et (pour moi) la conception d'un sujet, ne me pose pas de problème. Je sais que vous feriez mieux que moi, mais je fait les choses selon mes possibilités, et le temps que je trouve pour le faire. (A titre d'information, je n'ai qu'un CAP de couvreur-zingueur que j'ai passé pendant mon service militaire en 1969) Donc soyez indulgent.
Salutation
Bonsoir.
Je mets la question comme résolu. Je viens de mettre à jour, et le bouton teste: téléchargé, fonctionne dans les tois navigateurs.
Merci à tous pour vos participations.
Je mets la question comme résolu. Je viens de mettre à jour, et le bouton teste: téléchargé, fonctionne dans les tois navigateurs.
Merci à tous pour vos participations.
Je vous prie de m'excuser, mais je m'aperçois que j'ai pas donné la bonne réponse sur le code que j'ai employé:
Désolé pour cet oubli, et merci d'avoir accepté de m'aider.
Le code: span class='Telecharge' est simplement la représentation du bouton en css qui est d'ailleurs:
Certainement il peut y avoir des remarques sur ce code. Je ne suis pas un expert, mais comme j'ai mis beaucoup de temps pour répondre (mauvaise période), et comme tout fonctionne, pour moi le sujet est résolu, et bonne chance à ce forum pour l'aide que vous avez voulu apportée.
Merci
<a href='http://le chemin complet du fichier' title='Téléchargement' span class='telecharge'>   télécharger   </span></a>J'ai testé avec I.E, Chrome et Firefox, et j'ai les liens de téléchargement..
Désolé pour cet oubli, et merci d'avoir accepté de m'aider.
Le code: span class='Telecharge' est simplement la représentation du bouton en css qui est d'ailleurs:
.telecharge {
width:auto;
padding:1px 5;
text-align:center;
text-decoration: none;
display: inline-block;
margin:0 3px 0 0;
border-radius:3px;
font-size: 0.75em;
color:#0000FF;
font-family: "Arial",sans-serif;}
.telecharge, .telecharge:active {
background: #444;
background: linear-gradient( #cdcf69, #c4ffff);
background: -webkit-linear-gradient(#cdcf69, #c4ffff);
background: -moz-linear-gradient( #cdcf69, #c4ffff);
background: -ms-linear-gradient( #cdcf69, #c4ffff);
background: -o-linear-gradient( #cdcf69, #c4ffff);
background: linear-gradient (#cdcf69, #c4ffff); }
Certainement il peut y avoir des remarques sur ce code. Je ne suis pas un expert, mais comme j'ai mis beaucoup de temps pour répondre (mauvaise période), et comme tout fonctionne, pour moi le sujet est résolu, et bonne chance à ce forum pour l'aide que vous avez voulu apportée.
Merci
Et dire que tout le monde pensait ici qu'en tant que mec qui programme ca tombait sous le sens que tu savais que php = serveur apache
si tu n'a pas de serveur sur ton ordi : php ne peut être exécuté
donc n'importe quelle page avec du php nécéssite un serveur du genre easyphp ou wamp (donc apache) qui n'est pas un logiciel mais plutot un serveur.
en fait ce que tu peux faire en html c'est a coté du lien mettre la phrase "pour télécharger clic droit et enregistrer la cible sous"
Sinon faire un site sans php c'est très limité, se priver par exemple des includes php (hyper facile a faire et comprendre) ca veux dire copier coller tout le menu, header, footer (tout ce qui est commun a toutes les pages) dans chaque page, et de devoir réécrire sur chaque page a chaque changement d'un contenu commun a tout le site, et transferer enfin toutes les pages vers l'hebergeur :o/
Bon si tu fais un site statique simple a 3 pages sans fonctionnalité, html suffit, mais après php / jquery / javascript est plus que conseillé.