11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

J'essaie de rajouter une fonction dans mon site de cartographie dynamique http://cartographie.bretagne-environnement.org/portail_test.php qui permet à l'internaute de sauvegarder la carte qu'il a généré dans son marque page.

Cette fonction
function favoris() {
if ( navigator.appName != 'Microsoft Internet Explorer' )
{ window.sidebar.addPanel("le nom de la carte","http://cartographie.bretagne-environnement.org/portail_test.php",""); }
else { window.external.AddFavorite("http://cartographie.bretagne-environnement.org/portail_test.php","le nom de la carte"); } }


appelée par la ligne
<a href="javascript:void(favoris());">Ajouter carte au marque page</a><br/>


permet à l'internaute d'enregistrer l'adresse du site dans ces marques pages (Fonction présente dans l'onglet Thème de l'application).

Je souhaiterais que tous les paramètres de l'URL soit enregistrés lors de l'export de la carte vers le marque page.
Exemple d'URL générée grâce à Firebug
Merci pour votre aide

Erwann

<modération>Merci d'éviter les URLs trop longues qui déforment le forum.
Modifié par Julien Royer (02 Jun 2008 - 13:34)
Salut,

Si c'est l'url actuel que tu veux récupérer et mettre en bookmark, tu peux essayer quelque chose comme ca :


function favoris() {

if ( navigator.appName != 'Microsoft Internet Explorer' )
{ window.sidebar.addPanel("le nom de la carte","http://cartographie.bretagne-environnement.org/portail_test.php?"+window.location.search.substring(1),""); }

else { window.external.AddFavorite("http://cartographie.bretagne-environnement.org/portail_test.php?"+window.location.search.substring(1),"le nom de la carte"); } }


Ca à l'air de marcher, par contre, mettre directement window.location donne une erreur.
Merci Krafton pour ta réponse,

en fait ton code marche mais il n'enregistre dans les marques pages que l'url http://cartographie.bretagne-environnement.org/portail_test.php?

et pas toutes les variables qu'il y a après : ?tool=zoomin&fullextent.x=22&fullextent.y=11&recenter_doit=0(...)

Je tiens à préciser que ces variables ne sont pas visibles dans l'URL. C'est seulement quand j'utilise la fonction Convertir les méthodes de formulaires/POST TO GET que j'arrive à voir l'URL générée par l'internaute.

Tu me suis?
Peux-tu m'expliquer la méthode pour envoyer le formulaire en Get? Est-ce possible via du JS ou faut-il passer par du PHP?
Bon, ça avance.

Si je change dan mon template <form method="post" en <form method="get", je vois effectivement toutes les variables s'affichées dans l'URL.

En fait, je voudrais récupérer l'URL, mais encodées, de façon à ce qu'elle ne soit pas trop longue.

Connaissez-vous la manière d'encoder les URL?
Je souhaiterais créer la même fonction que celle du Geoportail (symbolisé par la petite étoile) et qui génère ce type d'URL

Si quelqu'un à la solution je suis preneur. Smiley cligne

Erwann
Modifié par erwann (04 Jun 2008 - 14:56)
Je crois que c'est a toi d'encoder un peu l'url comme tu veux (du moment que tu puisses le decoder Smiley cligne )