2010-12-15 32 views
0

J'ai un site qui demande qu'ils puissent envoyer différentes URL aux clients pour suivre quels liens sont utilisés. Je leur ai dit d'utiliser Google Analytics, mais ils demandent à rester loin de lui.En utilisant javascript pour créer une valeur en url et soumettre cette valeur via le formulaire?

Ce qu'ils demandent est qu'ils veulent envoyer un URL pour là des clients tels que, http://www.yoursite.com/?link=Nameoflink

Ils veulent obtenir ce cookie et le mettre. Ensuite, lorsque le formulaire de contact est utilisé, ils veulent être en mesure de soumettre ce nom de lien avec la soumission du formulaire pour montrer quels liens sont utilisés pour aller directement à leur site.

On m'a dit cela est possible, mais je ne connais pas de cette coutume de javascript ou d'expertise cookie ... =/

+0

Quel cookie? Le simple fait de visiter http://www.yoursite.com/?link=Nameoflink n'implique pas l'existence d'un cookie. Voulez-vous dire qu'ils veulent obtenir la valeur du paramètre * link * et l'envoyer chaque fois que quelqu'un utilise le formulaire de contact? – simshaun

+0

Bienvenue à SO !! –

+0

ouais désolé c'est ce qu'il demande. Pour en quelque sorte inbed ce paramètre de lien de sorte que s'ils visitent la page. Cette valeur reste là peu importe les pages qu'ils visitent en attendant et si elles vont au formulaire de contact, il est soumis sans que la personne le sache. – Andy

Répondre

-1

Oui, Google Analytics pourrait faire ce beaucoup plus facile, surtout si vous aviez une page spécifique cela servirait de point de chute, vous indiquant combien de personnes cliquent sur ce lien spécial. Sans google analytics, vous pouvez obtenir les valeurs de variable GET via un script de page PHP ou ASP et les configurer de cette façon, ou vous pouvez utiliser soley JavaScript pour prendre en charge le réglage et la récupération des cookies.

Pour JavaScript, ces liens devraient vous orienter dans la bonne direction:

les cookies JavaScript: (Je ne peux pas poster un lien, mais il faut vérifier l'article de W3C école sur la gestion des cookies JavaScript)

Extrait GET valeurs via JavaScript: http://www.go4expert.com/forums/showthread.php?t=2163

+0

W3C Écoles? Qui? Il y a deux organisations que vous semblez confondre. Les ** W3C ** qui publient la plupart des standards dont dépend le WWW, et ** W3Schools ** qui publient des didacticiels de basse qualité sur des sujets liés au WWW. ... et votre lien semble être cassé. – Quentin

+0

Woops, faute de frappe sur le W3CSchool (était censé être W3School). Le lien est brisé? Je l'ai juste cliqué et ça a bien fonctionné ... De plus, bien que W3School ne fournisse pas le code le plus époustouflant, il sert toujours d'excellente référence DOM JavaScript et d'endroit idéal pour obtenir une idée de base (et des exemples de code) Travaux liés à JavaScript. Quel site utiliseriez-vous pour une référence? – Ampp3

+0

Hmm, le lien semble fonctionner maintenant ... bien que ce ne soit pas un très bon exemple, en utilisant regex pour obtenir la chaîne de requête au lieu de 'location.search', et en utilisant le' unescape 'déprécié. Pour les références, les spécifications du W3C et la référence JavaScript de Mozilla sont généralement les meilleures options. – Quentin

0

Vous pouvez obtenir la valeur des paramètres transmis via l'URL avec location.search. Pour obtenir la valeur du param, utilisez le location.search puis trouver la valeur url spécifique, puis définissez que dans un autre champ de texte caché ou quelque chose ...

if (location.search){ 
    var search = location.search.substr(1).split("&"), 
     url = search.split("=")[1]; 
    document.getElementById('hiddenInput').value = url; 
} 

Remarque- le code ci-dessus suppose que votre chaîne de recherche uniquement contient la valeur d'URL & que l'URL est en premier. Sinon, il est probable que cela échouera. Vous pouvez mettre à jour le code pour en tenir compte en vérifiant que search.split("=")[0]==="url" ou en l'agrandissant pour analyser tous les paramètres de recherche dans un objet que vous pouvez référencer par clé.