Lien avec ajout de clic
24 messages
• Page 1 sur 2 • 1, 2
Consultez la formation sur les stratégies de liens de WebRankInfo / Ranking Metrics
-

chamagne - WRInaute discret

- Messages: 159
- Inscription: 23 Fév 2004
Lien avec ajout de clic
Bonjour
Je tourne en rond depuis des heures et n'arrive pas à m'en sortir et sollicite votre aide éclairée.
J'ai un lien de ce type :
avec add-hit.php comprenant :
Ca marche parfaitement, mais le lien n'est pas dur !
J'ai essayé (en supprimant du add-hit.php le header) :
ou
et bien d'autres ...
Lien en dur et ouverture ok, mais pas de click ajouté
Ca parait certainement simple pour beaucoup d'entre vous mais pour un amateur comme moi, c'est déjà du top niveau !
Merci de m'aider et bonne journée
Je tourne en rond depuis des heures et n'arrive pas à m'en sortir et sollicite votre aide éclairée.
J'ai un lien de ce type :
- Code: Tout sélectionner
echo "<a href='add-hit.php?link=$link' target='_blank'>$site_externe</a>; // lien vers un site avec ajout de clic en base de données
avec add-hit.php comprenant :
- Code: Tout sélectionner
header("location: ".$_GET['link']); // ouverture du site externe dans un autre onglet
include ('connexion.php'); // connection à la base de données
@mysql_query("UPDATE table_sites SET hits=hits+1 WHERE web_adress='".$_GET['link']."'",$db); // ajout d'un clic pour le site externe
Ca marche parfaitement, mais le lien n'est pas dur !
J'ai essayé (en supprimant du add-hit.php le header) :
- Code: Tout sélectionner
echo "<a href='$link' OnClick='window.open("."'add-hit.php?link=$link"."')' target='_blank'>$site</a>";
ou
- Code: Tout sélectionner
echo "<a href='$link' OnClick='document.location.href=("."'add-hit.php?link=$link')'"." target='_blank'>$site</a>";
et bien d'autres ...
Lien en dur et ouverture ok, mais pas de click ajouté
Ca parait certainement simple pour beaucoup d'entre vous mais pour un amateur comme moi, c'est déjà du top niveau !
Merci de m'aider et bonne journée
Dernière édition par chamagne le Mer Sep 15, 2010 8:57, édité 1 fois.
-

forty - WRInaute passionné

- Messages: 1701
- Inscription: 30 Oct 2008
Re: Lien avec ajout de clic
déjà tu devrais utiliser mysql_real_escape_string($_GET['link']) pour protéger ton paramètre dans l'UPDATE.
ensuite je mettrais le header à la fin (même si je ne suis pas sur que ca change grand chose à ton problème).
tu peux essayer d'ajouter après l'update cette ligne pour voir s'il n'y a pas d'erreur :
ensuite je mettrais le header à la fin (même si je ne suis pas sur que ca change grand chose à ton problème).
tu peux essayer d'ajouter après l'update cette ligne pour voir s'il n'y a pas d'erreur :
- Code: Tout sélectionner
die(mysql_error());
-

UsagiYojimbo - WRInaute accro

- Messages: 8575
- Inscription: 23 Nov 2005
Re: Lien avec ajout de clic
Perso je ferais ça en ajax, de manière à faire un appel asynchrone sur la page add-hit.php quand quelqu'un clique sur le lien href. Avec prototype ou Jquery, ca va tout seul. J'avais fait ça pour un client, faudrait que je retrouve mes sources.
-

Schwarzer Stern - WRInaute occasionnel

- Messages: 352
- Inscription: 16 Mai 2010
Re: Lien avec ajout de clic
Salut,
As-tu essayé en remplaçant le onclick par onmousedown ?
Ou "mieux" : utiliser le fichier add-hit avec la redirection et :
(je ne suis pas sûr du document.location mais c'est l'idée)
As-tu essayé en remplaçant le onclick par onmousedown ?
Ou "mieux" : utiliser le fichier add-hit avec la redirection et :
- Code: Tout sélectionner
echo '<a href="'.$link.'" onclick="document.location=add-hit.php?link='.$link .';return false;">'.$site_externe.'</a>';
(je ne suis pas sûr du document.location mais c'est l'idée)
Dernière édition par Schwarzer Stern le Mer Sep 15, 2010 8:42, édité 1 fois.
-

chamagne - WRInaute discret

- Messages: 159
- Inscription: 23 Fév 2004
Re: Lien avec ajout de clic
Merci de vos réponses rapides
Même si ne comprend pas bien cette commande, je l'ai rajouté, c'est ok !
RECTIFICATION : avec ma commande et fichier php d'origine, le clic n'est pas ajouté, revenu à @mysql_query, ça colle pour l'ajout clic
Ca ne change rien
Pas de retour d'erreur
Oui, je vois ça partout dans mes recherches, mais n'y connais vraiment que pouic en ajax !
A moins que de me fournir un code tout prêt et LARGEMENT documenté ?
Merci à tous 2 et j'espère une solution prochaine
forty a écrit:déjà tu devrais utiliser mysql_real_escape_string($_GET['link']) pour protéger ton paramètre dans l'UPDATE.
Même si ne comprend pas bien cette commande, je l'ai rajouté, c'est ok !
RECTIFICATION : avec ma commande et fichier php d'origine, le clic n'est pas ajouté, revenu à @mysql_query, ça colle pour l'ajout clic
forty a écrit:ensuite je mettrais le header à la fin (même si je ne suis pas sur que ca change grand chose à ton problème).
Ca ne change rien
forty a écrit:die(mysql_error());
Pas de retour d'erreur
UsagiYojimbo a écrit:Perso je ferais ça en ajax
Oui, je vois ça partout dans mes recherches, mais n'y connais vraiment que pouic en ajax !
A moins que de me fournir un code tout prêt et LARGEMENT documenté ?
Merci à tous 2 et j'espère une solution prochaine
Dernière édition par chamagne le Mer Sep 15, 2010 9:56, édité 2 fois.
-

forty - WRInaute passionné

- Messages: 1701
- Inscription: 30 Oct 2008
Re: Lien avec ajout de clic
as-tu essayé de remplacer mysql_query par die() pour voir si ton UPDATE est OK et si tu passes par là ?
- Code: Tout sélectionner
include ('connexion.php'); // connection à la base de données
die("UPDATE table_sites SET hits=hits+1 WHERE web_adress='".mysql_real_escape_string($_GET['link'], $db)."'"); // ajout d'un clic pour le site externe
-

Schwarzer Stern - WRInaute occasionnel

- Messages: 352
- Inscription: 16 Mai 2010
Re: Lien avec ajout de clic
Je t'ai pas conseillé l'ajax, tu t'es trompé de quote et t'as sauté mes suggestions au passage 
-

chamagne - WRInaute discret

- Messages: 159
- Inscription: 23 Fév 2004
Re: Lien avec ajout de clic
Schwarzter Stern a écrit:Je t'ai pas conseillé l'ajax, tu t'es trompé de quote et t'as sauté mes suggestions au passage
Mea culpa, m'étais trompé de destinataire (ai corrigé ci-dessus), c'est UsagiYojimbo qui proposait l'ajax.
Mea culpa 2 (pas bien réveillé !), j'ai pas essayé ta commande avec le return false
... essai ... clic non ajouté
Pas plus en changeant par document.location.href
forty a écrit:as-tu essayé de remplacer mysql_query par die() pour voir si ton UPDATE est OK et si tu passes par là ?
essayé >>> pas réagi
essayé en faisant :
- Code: Tout sélectionner
echo "<script>alert('je suis passé par ici')</script>";
include ('_connexion.php');
mysql_real_escape_string("UPDATE ".$table_prefix."sites SET hits=hits+1 WHERE web_adress='".mysql_real_escape_string($_GET['link'])."'",$db);
echo "<script>alert('je suis passé par là ')</script>";
Ni alert au début, ni à la fin, on n'entre donc pas dans add-hit.php, ni avec window(open), ni avec document.location.href
ET C'EST LA TOUT LE PROBLEME !
-

chamagne - WRInaute discret

- Messages: 159
- Inscription: 23 Fév 2004
Re: Lien avec ajout de clic
>>> forty
A moins que tu n'aies relu le message de 8h29, ma solution originale (sans lien en dur) n'ajoute pas de clic si on change mysql_query par mysql_real_escape_string
Etonnant, Google connait déjà ce message !
A moins que tu n'aies relu le message de 8h29, ma solution originale (sans lien en dur) n'ajoute pas de clic si on change mysql_query par mysql_real_escape_string
Etonnant, Google connait déjà ce message !
-

Schwarzer Stern - WRInaute occasionnel

- Messages: 352
- Inscription: 16 Mai 2010
Re: Lien avec ajout de clic
Un moyen qu'on puisse tester ça en ligne ?
-

chamagne - WRInaute discret

- Messages: 159
- Inscription: 23 Fév 2004
Re: Lien avec ajout de clic
Bien sûr, pas de pb (c'est ma version originale que vous verrez donc sans lien en dur)
L'ajout de clic n'est implémenté que sur les liens de l'annuaire
J'entend déjà crier 1 de plus, non c'est 1 de moins qui regroupera un ancien annuaire + un topsites
Je vous donne un lien rewrité (ajout de clic non implémenté sur random site)
Pardon pour l'anglais mais quand sera fini, je ferai une version française pour mon site bilingue
Et je n'ai ajouté que quelques liens pour le tester
Or donc : http://www.animated-gifs.eu/1two/animated-gifs-2.html
Et n'hésitez pas à me faire des remarques sur ce qui existe déjÃ
L'ajout de clic n'est implémenté que sur les liens de l'annuaire
J'entend déjà crier 1 de plus, non c'est 1 de moins qui regroupera un ancien annuaire + un topsites
Je vous donne un lien rewrité (ajout de clic non implémenté sur random site)
Pardon pour l'anglais mais quand sera fini, je ferai une version française pour mon site bilingue
Et je n'ai ajouté que quelques liens pour le tester
Or donc : http://www.animated-gifs.eu/1two/animated-gifs-2.html
Et n'hésitez pas à me faire des remarques sur ce qui existe déjÃ
-

UsagiYojimbo - WRInaute accro

- Messages: 8575
- Inscription: 23 Nov 2005
Re: Lien avec ajout de clic
- Code: Tout sélectionner
function count_click(link)
{
var xhr_object = null;
if(window.XMLHttpRequest) // Firefox
xhr_object = new XMLHttpRequest();
else if(window.ActiveXObject) // Internet Explorer
xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
else { // XMLHttpRequest non supporté par le navigateur
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");return}
xhr_object.open("GET", "add-hit.php?link="+link, false);
}
Il te suffit ensuite d'appeler cette fonction JS dans ton évènement onclick, ce qui aura pour effet d'exécuter de manière asynchrone ton script add-hit.php, en lui passant l'url à incrémenter. Pour la partie add-hit.php, ce que tu as déjà devrait donc marcher sans souci.
Bien sûr il y aurait moyen d'améliorer ce script, notamment en utilisant un framework ajax du genre prototype ou jquery.
-

forty - WRInaute passionné

- Messages: 1701
- Inscription: 30 Oct 2008
Re: Lien avec ajout de clic
chamagne a écrit:>>> forty
A moins que tu n'aies relu le message de 8h29, ma solution originale (sans lien en dur) n'ajoute pas de clic si on change mysql_query par mysql_real_escape_string
Etonnant, Google connait déjà ce message !
j'ai pas dis de remplacer mysql_query par mysql_real_escape_string mais de l'utiliser. Cette fonction permet de protéger les paramètres d'une instruction mysql (gère entre autre les paramètres contenant une quote).
il fallait donc comprendre :
- Code: Tout sélectionner
@mysql_query("UPDATE table_sites SET hits=hits+1 WHERE web_adress='".mysql_real_escape_string($_GET['link'],$db)."'",$db); // ajout d'un clic pour le site externe
-

chamagne - WRInaute discret

- Messages: 159
- Inscription: 23 Fév 2004
Re: Lien avec ajout de clic
Ah, que la sieste fut bonne !
Quand je vous dis que ne suis qu'un newbie !
Non pas remplacé mais utilisé (hors le 1er ,$db) qui était de trop), c'est ok et fonctionne de la même façon
>>> UsagiYojimbo
Dans un moment vais tester cette fonction javascript
furty a écrit:j'ai pas dis de remplacer mysql_query par mysql_real_escape_string mais de l'utiliser
Quand je vous dis que ne suis qu'un newbie !
Non pas remplacé mais utilisé (hors le 1er ,$db) qui était de trop), c'est ok et fonctionne de la même façon
>>> UsagiYojimbo
Dans un moment vais tester cette fonction javascript
-

chamagne - WRInaute discret

- Messages: 159
- Inscription: 23 Fév 2004
Re: Lien avec ajout de clic
UsagiYojimbo a écrit:function count_click(link)
...
Je résume :
1. Création de add-hits.js tel que tu l'as donné (sans en changer une lettre, sinon ajout de alert en entrée et sortie)
2. Fichier add-hit.php (avec alert en entrée et sortie) :
- Code: Tout sélectionner
echo "<script>alert(\"je suis entré dans add-hit.php\")</script>";
include ('_connexion.php');
@mysql_query("UPDATE table_sites SET hits=hits+1 WHERE web_adress='".mysql_real_escape_string($_GET['link'])."'",$db);
echo "<script>alert(\"je suis sorti de add-hit.php\")</script>";
3. Dans le head de ma page ajouté :
- Code: Tout sélectionner
<script type="text/javascript" src="add-hits.js"></script>
4. Dans ma page, appel de la fonction sur le lien vers page externe :
- Code: Tout sélectionner
echo "<a href='$link' onclick='return count_click($link);' target='_blank'>$site</a>";
Résultat : pas de clic ajouté, aucune des 4 alertes ne s'est présentée
24 messages
• Page 1 sur 2 • 1, 2
Formation recommandée sur ce thème :
Formation Netlinking (liens et référencement) : apprenez ce qu'est réellement un bon lien pour le référencement et surtout comment en obtenir. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Mix entre annuaire et Moteur, ajout immédiat en un clic.
- Problème ajout lien 'J'aime'
- ajout de lien sr mon site
- sandbox et ajout de lien sur des milliers de pages
- Ajout de code HTML (lien vers un annuaire ou un moteur)
- Ajout Gratuit + Sans lien de retour + Très bon référencement
- detection de clic sur un lien ?
- Rémunération clic/lien (CPM)
- Compteur de clic sur lien en dur
- Un compteur de clic sur lien efficace
- Tester la validité d'un lien
Cet outil vous permet de tester la validité d'un lien pour le référencement. Il vous indique la nature du lien (lien en dur, redirection bien gérée par les moteurs ou redirection mal gérée par les moteurs). - Calculer le ratio de liens profonds
Cet outil vous permet de calculer le taux de liens profonds vers un site web. Un lien profond est un lien qui ne pointe pas vers la page d'accueil mais au contraire vers une page interne du site. Les sites dont l'essentiel du référencement vient de leurs inscriptions dans des annuaires ont un taux de liens profonds faible ; à l'inverse, les sites de référence ont souvent un taux de liens profonds plus important, signe que leur contenu a suscité de nombreux liens spontanés. - Transformer des textes non cliquables en liens
Cet outil vous permet de trouver des pages citant votre site mais ne faisant pas (encore) de lien. Il suffira parfois d'un simple mail pour transformer cette simple citation en lien (backlink).
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités
