execution d'une requete MySQL dans un Onclick ?

execution d'une requete MySQL dans un Onclick ? - Programmation

Marsh Posté le 05-11-2001 à 15:34:16    

J'ai un paragraphe de liens, qui ouvrent des pages sur d'autres sites avec une target=_blank
 
je voudrais qu'a chaque click, il y ait execution d'une requete qui incremente un compteur dans la base ( celle des liens ) pour savoir combien de fois le liens a été accédé a partir de mon site ..  
 
en gros , il faudrait un espece de javascript, avec un onclick qui ferait un update dans la base
 
est ce que cela est possible ? ( la page qui propose les liens n'etant pas rechargée a chaque click sur un lien )
 
plizz help

Reply

Marsh Posté le 05-11-2001 à 15:34:16   

Reply

Marsh Posté le 05-11-2001 à 15:36:50    

non, c pas possible, le js s'execute uniquement sur le client et peut donc pas mettre à jour la table... il faut trouver autre ch...

Reply

Marsh Posté le 05-11-2001 à 15:42:12    

une autre solution possible ? une idée quelqu'un ?

Reply

Marsh Posté le 05-11-2001 à 17:50:11    

tu pourrais pas ouvrir une page qui exécuterait ton truc et que tu refermerais ensuite ?
 
sinon, ton onClick pourrait recharger ta page avec des paramètres...

 

[edtdd]--Message édité par art_dupond--[/edtdd]


---------------
oui oui
Reply

Marsh Posté le 05-11-2001 à 17:54:25    

ben c'est simple
a la place de mettre le vrai lien
tu mets un lien style
http://monsite/comptelien.php?url=monvrailien
et comptelien.php fait un redirect vers "monvrailien"
et mets a jour ta page..
rien de bien sorcier.

Reply

Marsh Posté le 06-11-2001 à 07:35:16    

yes merci pour cette aide precieuse, j'y avé po pensé :)

Reply

Marsh Posté le 06-11-2001 à 13:19:47    

l'inconvénient, c que t'es obligé de faire appelle au serveur pour recharger une page que tu as déjà... dc perte de tps pour l'utilisateur :(

Reply

Marsh Posté le 06-11-2001 à 13:36:17    

dropsy a écrit a écrit :

l'inconvénient, c que t'es obligé de faire appelle au serveur pour recharger une page que tu as déjà... dc perte de tps pour l'utilisateur :(  




 
heu... tu fais appel au 1er serveur qui possède le lien, c'est totalement transparent pour l'utilisateur.  a moins que le serveur ou se trouve ton site ne soit lent, ça ne ralentit pas le surf de l'utilisateur. Mais tu ne recharges rien en tout cas ;)

Reply

Marsh Posté le 06-11-2001 à 16:40:34    

ah bon, on ne recharge rien  :??:  
t sur? si tu rappelles la page où est le lien, elle sera rechargée, non? Sauf si le navigateur la prend ds le cache... je c pas trop comment ça marche...
 
tiens une question toute conne (vraiment très conne) que je c pas où poser... comment faut faire pr inclure le message auquel on répond? (j c c con et ca n'a rien à voir avec le sujet..)  :)

Reply

Marsh Posté le 06-11-2001 à 18:47:00    

Troisième icône en partant de la gauche au niveau du nom à celui à qui tu veux répondre en incluant le message.

Reply

Marsh Posté le 06-11-2001 à 18:47:00   

Reply

Marsh Posté le 06-11-2001 à 19:18:22    

Dost67 a écrit a écrit :

Troisième icône en partant de la gauche au niveau du nom à celui à qui tu veux répondre en incluant le message.  




OK merci :hello:

Reply

Marsh Posté le 06-11-2001 à 21:20:58    

dropsy a écrit a écrit :

ah bon, on ne recharge rien  :??:  
t sur? si tu rappelles la page où est le lien, elle sera rechargée, non? Sauf si le navigateur la prend ds le cache... je c pas trop comment ça marche...




 
tapage.php
<A HREF="voir.php?url=adresse" TARGET=_blank">un autre site super</A>
 
voir.php
incrémentation de la BD pour le lien $url
Header("location:$url" );
 
donc tu vas cliquer sur le lien, ça ouvre une nouvelle fenêtre.
il va très vite (si tout va bien sur ton serveur) mettre à jour la Base de Données, puis te redirriger sur la page que tu veux.
Il n'envoie rien à l'utilisateur entre les deux.
C'est totalement transparent ;)

Reply

Marsh Posté le 07-11-2001 à 01:18:31    

ah ok... j'avais pas vu ca comme ca...
la j'ai compris, merci :hap:

Reply

Marsh Posté le 07-11-2001 à 10:21:23    

il envoie tout de meme quelque chose
au navigateur: la reponse de redirection
(un simple header disant: redirige vers
telle adresse).
Tu peux aussi ajouter un fichier html derriere
le header pour faire un ecran d'attente si
la redirection est lente.
L'interet d'utiliser cette directive http
c'est que le navigateur est fait de telle
sorte qu'il ne memorise pas qu'il
est passe par cette adresse, et ainsi
faire des 'back' propres: dans le cas d'un formulaire
pour eviter que les donnees soient repostees en cas de retour dans l'historique ou d'un script qui compte les click comme dans ton cas.
 
A+
LEGREG

Reply

Marsh Posté le 07-11-2001 à 10:48:44    

thx legreg,
 
arf vi je les avais oublié les headers ;)
bête que je suis ! :(
 
mais bon, c'est pas eux qui vont ralentir le chargement des pages.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed