Google rempli mon panier

WRInaute discret
Salut, j ai un problème sur un site , google et autres spiders remplissent mon panier sur un site ecommerce et sature ma base de donnée

sachant que ma page de panier est celle ci

-http://www.site.com/repertoire/shopping-cart.php

j ai mis ceci dans mon robots.txt

User-agent: *
Disallow:/repertoire/shopping-cart.php

mais rien ne change, google continue tranquillement à cliquer sur le bouton de formulaire "add to cart" qui l enmème sur shopping-cart.php ;(

ai je fait une erreur de synthaxe ?

sinon comment contourner ce problème ?
 
WRInaute passionné
Quand il y'a un problème, une solution pour le résoudre consiste à l'extrapoler au maximum. Essaie de faire en sorte que Google valide ses achats !

Sinon je ne vois pas trop comment faire, désolé.
 
WRInaute accro
...

... sinon la solution peut consister à modifier un peu ton ajout au panier, et le faire plutôt en javascript, si tu veux être sur que Google ne passe pas par ta page d'ajout au panier.

Tu peux nous montrer un bout de ton code html, qu'on y voit plus clair ?
 
WRInaute passionné
Ou alors un champ caché au visiteur, si jamais il est rempli automatiquement, c'est que c'est un robot et tu bloques.
 
WRInaute discret
oui j ai pensé a rajouter quelques chose en js dans mon formulaire genre :

document.write('<input type="hidden" name="no_spider" value="1" /'>)


et verifier derriere l arrivé de cette variable pour valider., ca me semble bien en effet


sinon mon code est le suivant (simplifié)

Code:
echo "<form id='shop_form' style='display:inline;' method='post' action='shopping-cart.php'>
<input type='hidden' name='id' value='".$id."' />
<input type='image' src='images/buy-now.gif' name='submit' value='submit' />
</form>";
 
WRInaute discret
exemple a adapter vite fait :

Code:
<form id="monarticle<?php echo $iddemonarticle"> method="post" action="mapageajoutaupanier">
<fieldset>
<legend>Article machin</legend>
<p>
<input type ="hidden" name="nom_de_la_variable_qui_transmet_l_id_de_mon_article" " value="<?php echo $iddemonarticle?> /></p>
<!-- Les autres instructions eventuelles coloris, taille,quantite,stock, bref je sais pas... -->
<p><a href="#" onclick="document.forms['monarticle<?php echo $iddemonarticle">'].submit();return false;" title="cequetuveux" hreflang="fr">Ajouter au panier</a></p>
</fieldset>
</form>
 
WRInaute accro
et se priver des clients qui n'ont pas activé javascript (même si il n'y en a pas beaucoup)...
 
WRInaute passionné
venomelektro a dit:
j ai mis ceci dans mon robots.txt

Code:
User-agent: *
Disallow:/repertoire/shopping-cart.php

Et si tu mets ça dans ton robots.txt, ca donne quoi ?

Code:
User-Agent: *
Disallow: /repertoire/shopping-cart.php
 
WRInaute discret
je tente le coup de la majuscule et te dis quoi ;)
sinon l ideé javascript ne me derange pas trop, le site contient deja du flash et de l ajax sur certains parties , les clients sont deja prevenus qu ils ont besoin de ces technologies pour naviguer
 
WRInaute passionné
En fait, ce n'est pas la majuscule (c'est supposé être en miniscule) mais l'espace après Disallow:
 
WRInaute passionné
venomelektro a dit:
oui j ai pensé a rajouter quelques chose en js dans mon formulaire genre :

document.write('<input type="hidden" name="no_spider" value="1" /'>)


et verifier derriere l arrivé de cette variable pour valider., ca me semble bien en effet


sinon mon code est le suivant (simplifié)

Pourquoi en javascript ? Tu le laisses normalement en hidden et tu testes en PHP à l'arrivé. Sinon comme dit blman les clients ayant désactivé javascript vont avoir un problème.
 
WRInaute discret
je sais pas pour google mais bon nombre de robots spammers soumettent aussi les champs hidden des formulaire qui sont ecrits en bete html..

je vais faire un test pour voir si le spider balance les var en post en cliquant sur le bouton tiens..
 
WRInaute accro
Euh aux dernières nouvelles, aucun crawler ne remplis les formulaires.
Donc il s'agit de robots spammeurs. Vérifie en loguant l'ip.

Après, pour éviter ça, c'est les méthodes habituelles antispam, qui permettent de vérifier qu'un utilisateur est bien un humain.
 
WRInaute discret
tu as raison il remplit par le formulaire, mais suit le lien quand meme


Code:
crawl-66-249-72-16.googlebot.com 

Mozilla/5.0 (compatible; Googlebot/2.1; +https://www.google.com/bot.html)
 
WRInaute discret
blman a dit:
et se priver des clients qui n'ont pas activé javascript (même si il n'y en a pas beaucoup)...

oui dans mon cas j'utilise un lien avec du javascript
un bouton stylé en css peut faire l'affaire également. :P
 
WRInaute discret
envoi un email à google , lui demandant de bien vouloir régler ce qu'il met dans son panier, c radical. :idea:
 
WRInaute occasionnel
Bonjour à tous !

J'ai le même problème qu'évoqué ici : sans "remplir" le formulaire, Google constitue une requête GET avec les noms des variables pré-remplies et m'ajoute un article dans le panier...

Le problème étant que arpès l'ajout dans le panier je redirige vers la page de sélection des articles d'où deux URI pour la même page !

Quelle méthode pour l'arrêter ? Quelqu'un a trouvé ?

oops : Une recherche sur robots.txt m'a apporté la solution : les caracteres * étant maintenant acceptés dans robots.txt.

Francois
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut