Code de suivi Google Analytics sur onClick

Eléphanteau du PHP | 30 Messages

10 oct. 2013, 11:08

Bonjour

Je dois mettre en place un traceur Google Analytics lors de la validation de mon formulaire.
Je n'ai qu'une page, juste un petit message pour signaler que le formulaire à bien était envoyer une fois tous les champs remplis.

pour le moment j'ai sur le bouton du formulaire

Code : Tout sélectionner

onClick="_gaq.push(['_trackEvent', 'devis', 'Clic', 'file campagnes']);"
et juste après la balise <body> le code de suivi Google Analytics

Code : Tout sélectionner

<!-- START code de suivi Google Analytics --> <script type="text/javascript"> var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-xxxxxxxxx-x']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://' : 'http://') + 'stats.g.doubleclick.net/dc.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); </script> <!-- END code de suivi Google Analytics -->
Le problème c'est que même si les champs ne sont pas bien remplis le onClick génère un comptage donc ce n'est pas une solution qualitatif :cry:

J'aimerai plutôt créer une fonction lors du onClick qui en même temps que le message pour signaler que le formulaire à bien était envoyer, générerait un comptage pour Google Analytics.
Mais je ne sais pas comment faire.

Un petit coup de main :oops:
A bientôt

Eléphant du PHP | 116 Messages

10 oct. 2013, 11:19

Hellow,

Ben en voilà une de bonne idée : sur ton onClick tu appelles une fonction que tu as toi même crée. Cette fonction peut être du genre :
var erreur = false;
Si champ1 n'est pas OK, erreur = true
Si champ2 n'est pas OK, erreur = true
...
Si champN n'est pas OK, erreur = true

Si erreur = false : appel à ton google Analytics
Ou si tu as peu de champs :
si CHAMP1 et CHAMP2
Si champ1 n'est pas OK, erreur = true
Et comment on vérifie les champs ? Comme ça : http://fr.openclassrooms.com/informatiq ... formulaire
Et la fonction ? Comme ça : http://www.commentcamarche.net/contents ... -fonctions

Bonne journée et bon courage,
Computarelier
@+,
Computarelier

Eléphanteau du PHP | 30 Messages

10 oct. 2013, 11:50

Bonjour et merci pour la réponse

Mais en fait si tous les champs sont bien remplis j'ai déjà un vérificateur.

Code : Tout sélectionner

if(isset($_POST['submit']) && $nbrErrors==0){ $lang = $_GET['lang']; // si le message a bien été transmis $tabLangSuccess['fr'] = "Les informations que vous avez <br />saisies ont bien &eacute;t&eacute; transmises. <br />Nous vous en remercions."; // France // si le message n'a pu être transmis $tabLangFailure['fr'] = "Les informations que vous avez <br />saisies n'ont pu &ecirc;tre transmises, <br />veuillez r&eacute;essayer ult&eacute;rieurement."; // France $messageText = $tabLangSuccess[$lang]; $successMessage=<<<msn <script type="text/javascript"> var SUCCESS_MESSAGE="$messageText"; </script> msn; echo $successMessage; ?> <script type="text/javascript"> $(document).ready(function(){ var bgColor = $('fieldset').css('backgroundColor'); // effet lumineux et confirmation de soumission du formulaire $('fieldset').animate({backgroundColor:"#9ee19a", opacity:0},500) .animate({backgroundColor:bgColor,opacity:1},500 ) .animate({opacity:0},500 ) .queue(function(){ $('fieldset').html('<div id="success">'+SUCCESS_MESSAGE+'</div>').css({opacity:1}); $('#success').hide().fadeIn('slow'); }) }); </script>
C'est la fonction sur le onClick pour Google Analytics que je ne sais pas faire :oops:
un petit coup de main

Eléphant du PHP | 116 Messages

10 oct. 2013, 13:34

Bah c'est bien,ça...

pourquoi tu le veux uniquement sur un onclick, alors ? Ca marche pas dans un truc du genre $(document).ready(function(){ ?
@+,
Computarelier