Une petite question avec Onclick

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Une petite question avec Onclick

par Nico128 » 13 févr. 2006, 20:55

Je viens d'essayé. Extra ! Ca marche :D

Merci beaucoup :D

par Hubert Roksor » 13 févr. 2006, 18:33

* secoue sa Magic 8-ball *

Tout porte à croire que oui.

par Nico128 » 13 févr. 2006, 18:19

Oui c'est 4a. J'avais un header() qui forcait le téléchargement.

Si je met simplement un header() location vers le fichier a télécharger, ça résoudrais le problème ?

par Hubert Roksor » 13 févr. 2006, 18:15

Je viens enfin de comprendre: IE propose de télécharger "dl.php" c'est ça ? Dans ton dl.php le seul header() que tu devrais voir est celui qui redirige vers le fchier (header('Location: ...')), c'est tout. Si tu as un header qui force le téléchargement c'est normal qu'IE propose de télécharger dl.php à la place.

par Nico128 » 13 févr. 2006, 18:08

Oui je voulais plutot dire eviter, j'ai oublier le mot ^^

Et j'execute le lien dl.php dans une iframe invisible, parce que sinon la personne atterirera sur une page blanche.

Pour compter le nombre de téléchargement ya pas de problème. C'est le header() qui ne marche pas avec IE, ca me propose de télécharger la page. Pourtant avec Firefox ça marchait. Et sinon si le fichier avait un espace, le nom du fichier était coupé. Pourtant je fesais exactement comme sur plusieur tuto que j'ai lu.

Donc j'utilise l'iframe qui revient au meme. Juste ce petit "problème" lorsque qu'on click sur le lien pour télécharger, puis après on actualise la page, le téléchargement reviens. Mais cest pas si grave que ça.

par Hubert Roksor » 13 févr. 2006, 17:26

Je veux juste que toutes les personnes prennent FlashGet [...] pour télécharger tout le contenu du dossier
J'imagine que tu voulais dire "Je veux juste [éviter] que toutes les personnes...". Et FlashGet ne gère pas les iframes ? Sinon je ne vois toujours pas l'intérêt de créer une iframe.

Pour résumer, quel est le désavantage pour toi de ne pas spécifier de "target" et laisser le lien (dl.php) s'exécuter dans la fenêtre en cours ?

Au fait, une astuce pour ton compteur: l'exécution du script ne s'arrête pas après le header('Location: ...'), elle continue jusqu'à la fin même si tu ne le vois pas. Tu peux en tirer partie en commençant le script par le header() pour que le téléchargement soit immédiat et ensuite faire toutes les autres requêtes.

par Nico128 » 13 févr. 2006, 16:37

Oui ça je sais.

Enfaite je veux pas créé quelque chose de super sécurisé. Je veux juste que toutes les personnes prennent FlashGet (aspirateur de site web) pour télécharger tout le contenu du dossier. Là, seul certaine personne qui conaissent un ptit peu l'informatique sauront le faire, et encore.

Je sais ya plein de moyen de protégé, moi cest pas mon but. Aussi l'avantage du dl.php?id=x cest de comptabilisé le nombre de téléchargement.

Je sais pas le faire en java mais en php ca donerais quelque chose comme ça:
if(isset($_POST['telechargement']))
{
echo '<iframe>...</iframe>';
}
else {}
Sauf que là 4a serais avec le Onclick. Enfin je sais pas si ça marcherait...

par Hubert Roksor » 13 févr. 2006, 16:25

Dans ce cas, je pense que je vais te simplifier le travail en te disant qu'il est strictement impossible de réellement cacher le lien final avec une redirection :) Certains navigateurs feront de toutes façons apparaître le lien dans leur historique, et quiconque souhaiterait "voler" tes liens pourrait par exemple utiliser l'extension "LiveHTTPHeaders" de Firefox, qui montre les redirections.

À part ça, je ne sais pas comment créer des iframes à la volée comme tu le souhaites, désolé.

par Nico128 » 13 févr. 2006, 16:14

Parce que je veux caché les liens avec dl.php?id=x

J'ai déja essayé avec header() a forcer le téléchargement mais ca donne pas comme j'aimerais faire. En + il y des problème avec IE.

Si le lien est mort j'y ai pensé. Mais je pense savoir savoir comment faire. je vérifie si le fichier existe, et si il existe pas j'ouvre une page 404 avec target="_parent"

par Hubert Roksor » 13 févr. 2006, 15:42

Mmh, il y a peut-être une raison évidente que je ne parviens pas à voir mais... pourquoi vouloir ouvrir ce lien dans une iframe ? Pourquoi pas dans la fenêtre principale puisqu'il s'agit d'un téléchargement ?

En cas de problème (lien cassé, serveur inaccessible par exemple) l'utilisateur ne verra jamais le message d'erreur s'il se trouve dans une iframe invisible.

Une petite question avec Onclick

par Nico128 » 13 févr. 2006, 14:25

Salut à tous ! Je n'y conais pratiquement rien en javascript, néanmoin j'ai essayer de rechercher sur google ce que j'aimerais faire, mais j'ai pas trouvé.

Alors j'ai un lien, quand on clique dessu, le lien s'ouvre dans une iframe :

Code : Tout sélectionner

<a href="downloads/emulation/nes/dl.php?id=1" target="lien-rom"> <iframe name="lien-rom" height="0" frameborder="0" scrolling="no" width="0" hspace="0" src=""></iframe>
En cliquant sur le lien, il se charge dans l'iframe, et déclenche le téléchargement d'un fichier. Jusque la pas de problème.

Mais si après on actualise la page, le lien de l'iframe se charge, et donc redéclenche le téléchargement de ce fichier.

J'aurais voulu savoir, si il était possible de mettre un Onclick sur le lien, et plus bas mettre que si on a cliqué sur le lien, ça affiche l'iframe ?

Voilà, merci d'avance :D