Liens en dur

Résolu
LaurentKOogar Messages postés 369 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 20 octobre 2013 - 10 août 2005 à 16:14
arnal69130 Messages postés 445 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 22 mars 2007 - 10 août 2005 à 23:52
Bonjour,

J'ai plusieurs annuaires, mais mon probleme est que je n'ai pas les liens en dur
j'ai du style
http://www.monannuaire/in.php?id=100
donc j'apel le fichier in.php qui fait un ptit traitement sql, place un cookie et enfin renvoi sur le site de l'auteur

Est-ce possible de transformer cela et d'avoir un lien en dur qui renvoi direct sur le site de l'auteur mais me fait quand meme mon ptit traitement sql et place un cookie ??

Help pls, au niveau référencement ca me serait fort utile
:)

10 réponses

LaurentKOogar Messages postés 369 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 20 octobre 2013
10 août 2005 à 21:22
hum hum, regarde le code en dessous, j'ai pas tester mais ca devrait le faire, vé me piauté, trop naze aujourdh'ui..

<script type="text/javascript">
function mise_a_jour(id)
{
(new Image()).src="in.php?id="+id;
return true;
}
</script>


echo "$row[titre]";
3
arnal69130 Messages postés 445 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 22 mars 2007 2
10 août 2005 à 16:30
Oui, c'est possible, il faut que tu fasse une requête dans ta base avant d'afficher le lien...
Donne-nous plus de code...
0
LaurentKOogar Messages postés 369 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 20 octobre 2013
10 août 2005 à 17:58
ca c'est le script in:

$id = isset($_GET['id']) ? (int)$_GET['id'] : 0;
if($id <= 0)
exit;
$delai_clic = 12*3600;
$tab_id = array();
if (isset($_COOKIE["goto_france-relations"]))
$tab_id = explode("#",$_COOKIE["goto_france-relations"]);

//creation des requetes pour l'annuaire
$sql_upd "UPDATE $T_sites SET nb_clics nb_clics+1 WHERE id = '$id' ";
$sql_sel "SELECT url FROM $T_sites WHERE id '$id' ";

//envoi des requetes
$sel = send_sql($sql_sel,"trouver l'url du site dans goto");
//si on a pas encore visiter le site
if (!isset($_COOKIE["goto_france-relations"]) || !is_in_array($id,$tab_id))
{
//envoi de la requete pour comptabiliser le clic
$upd = send_sql($sql_upd,"utiliser le compteur de clics (annuaire)");
//creation (ou modifications) du cookie
$cookie = isset($_COOKIE["goto_france-relations"]) ? $_COOKIE["goto_france-relations"] : '';
setcookie("goto_france-relations",$cookie."#".$id,time()+$delai_clic,"/");
}
//fermeture de la connexion
mysql_close($lk);

$url = mysql_result($sel,0,"url");
if (substr($url,0,4) == "http")
{
header("Location: $url");
exit;
}


} //fin du else
?>


puis sur l'annuaire :
http://www.phpsources.org/in.php?id=4257

moi je voudrais
http://www.lesitedugars.com/

En fait je pensais a du JS, avec onclick, au moment ou le client click sur le lien, ca lance la mise a jour de la table et initilise le cookie.

Mais la je nage PS/PHP , pas simple : )

des idées ???
0
arnal69130 Messages postés 445 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 22 mars 2007 2
10 août 2005 à 18:22
ok, et l'affichage des liens, tu le fais où ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
LaurentKOogar Messages postés 369 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 20 octobre 2013
10 août 2005 à 18:34
peut importe ca,

je le fais sur l'index.php par exemple et le lien donne ca:

[in.php?id=<?php echo $row[ " target="_blank"><?php echo $chaine; ?>]

moi je voudrais :

<scipt>
mise-a-jour()
{
c'est la que je sais pas faire le code(:
}
</script>

[echo " target="_blank"
onload="mise-a-jour();" ><?php echo $chaine; ?>]
0
arnal69130 Messages postés 445 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 22 mars 2007 2
10 août 2005 à 18:42
Perso, ça me semble plus simple et plus propre de le faire sur la page où il y a la liste des liens. En fait, tu ne peux pas lancer une requête sur un évènement javascript (ou alors il faut charger toute la page php).
Donc, le mieux, c'est que tu fasse une requête sur les url :

$res=mysql_querry("SELECT url FROM $T_sites",$connexion);
while ($obj=mysql_fetch_object($res)) {
echo '['.$obj->url.' '.$chaine.']';
}
0
LaurentKOogar Messages postés 369 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 20 octobre 2013
10 août 2005 à 18:58
ola tu as pas compris !! Les urls viennent d'une table donc ton script j'ai deja

c'est un annuaire donc a chaque fois qu'une personne clique, je dois faire une mise a jour + cookies.

Tu as dis::
En fait, tu ne peux pas lancer une requête sur un évènement javascript
ah bon ???
heusement que c'est possible :)
je peux au moins faire une windows open qui ouvre une fenetre avec le traitement et la ferme aussitot mais c'est pas clean.

Des idées ??

Merci d'avance
0
arnal69130 Messages postés 445 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 22 mars 2007 2
10 août 2005 à 19:17
J'ai bien compris que les url viennent d'une table sinon je n'aurais pas utilisé de requête !!!
J'ai dit (si tu avais lu la phrase jusqu'au bout)
« tu ne peux pas lancer une requête sur un évènement javascript (ou alors il faut charger toute la page php).»
C'est donc bien ça : le seul moyen est de lancer le chargement d'une page !

Qd tu parle d'ouvrir une popup pour la fermer juste après, non seulement ce ne sera pas très clean, mais en plus se sera très long, et ce juste pour afficher un lien. A chaque lien tu recommenceras ! autant fa ire la requête avant, une bonne fois pour toute...

Une autre solution serait de faire en sorte d'avoir ça sur l'annuaire :
http://www.lesitedugars.com
Comme ça le visiteur voit l'adresse "du gars", mais en cliquant, il est bien dirigé sur ta page in.php... Mais cela implique (encore une fois) de faire la requête avant d'afficher la liste des liens.
0
LaurentKOogar Messages postés 369 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 20 octobre 2013
10 août 2005 à 21:41
en fait j'ai pas résiter à l'envie de tester
ca marche nickel :)
Vé faire ca sur tous les annuaires, Google va avoir du boulot :)

exemple :
http://annuaire.annevalerie.com/index.php?cat_id=25

+++
0
arnal69130 Messages postés 445 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 22 mars 2007 2
10 août 2005 à 23:52
super ! content que tu aies trouvé.
a+
0