Membres


Pas encore membre ?
inscrivez-vous ici

Connexion :
Login
Code
Mot de passe perdu ?
Liste des membres

derniers referants

Derniers referants


Pages : [1] 2

Derniers referants     Posté le 15/02/2006 à 00:00
Cityves
Membre
cityves
Site perso
547 posts
Inscrit le : 10/12/2004
bonsoir,
j'essaie de mettre les referants sur mon site mais ils s'affichent pas .
la page qui contient l'include s'affiche mais pas les liens ...

je pense qu'il me manque le fichier " affiche.php "

________________________
c'est déjà assez triste de n'avoir rien à dire !!!
Si en plus il fallait se taire.....
 
Réponse à : Derniers referants     Posté le 15/02/2006 à 20:25
sky
Administrateur
Avatar
Site perso
4158 posts
Inscrit le : 13/08/2003
utilise qu'elle script deja là?
j'ai plus le lien en tête ^^

_______________________
Graphiks : Cours PHP
Image
=> à quoi sert internet explorer ?
=> à télécharger firefox
 
Réponse à : Derniers referants     Posté le 15/02/2006 à 21:37
cityves
Membre
Avatar
Site perso
547 posts
Inscrit le : 10/12/2004
j'ai retrouvé celui la sur forum
http://www.graphiks.net/forum/lecture-1-1235-0.html
mais bon j'ai du louper une etape ..


_______________________
c'est déjà assez triste de n'avoir rien à dire !!!
Si en plus il fallait se taire.....
 
Réponse à : Derniers referants     Posté le 15/02/2006 à 21:46
sky
Administrateur
Avatar
Site perso
4158 posts
Inscrit le : 13/08/2003
Tu as créer les fichiers comme indiqué ?
Poste le code exact que tu utilise pour voir.

Sky

_______________________
Graphiks : Cours PHP
Image
=> à quoi sert internet explorer ?
=> à télécharger firefox
 
Réponse à : Derniers referants     Posté le 15/02/2006 à 21:57
cityves
Membre
Avatar
Site perso
547 posts
Inscrit le : 10/12/2004
ben celui du lien post precedent juste mis le nom de mon site oueps p'tet là j'ai foiré ...

mais j'ai vu sur des plus vieux posts tu parles du fichier affiche.php
mais bon pas trouvé....


<?php
//Configuration ::::
$_votresite='chtyves.freeheberge.com'//Url de votre site sans http:// ni / a la fin
$_rep="refer"//Repertoire ou ce trouve les 3 fichiers  (badlinks.txt, goodlinks.txt et ref.txt) (a laisser vde si directemen t à la racine)
$_listePerso='sexe|test.com|'//Liste de mots qui banniré un site refereant
$_listeok='in-extremis.graphiks.net|chtyves.freeheberge.com'//Il est possible aussi d'avoir une liste de site a toujours accepté
//Configuration ::::




//
//Le script en lui même ::
//On récupère le référant 
//Vu qu'il ne faut jamais faire confiance à qqchose fourni par l'utilisateur, on utilise htmlentities pour enlever&nbs p;tut risque de piratage.
$ref=htmlentities($_SERVER['HTTP_REFERER'], ENT_QUOTES);

//Initialisons les erreurs a 0 (pas d'erreur)
$error=0;

//On recupere la liste des bon domaines et des mauvais domaines : 
$badlinks=implode(""file("http://".$_votresite."/".$_rep."/badlinks.txt"));
$goodlinks=implode(""file("http://".$_votresite."/".$_rep."/goodlinks.txt"));

//Si le referant est vide, ou s'il existe dans la liste des mauvais domaine : error = 1
if(empty($ref) OR ereg(set_domain($ref),$badlinks)){
  
$error=1;
}

//Les cas particuliers
//Mettre a jours la variable $_listeperso pour ajouter vos propres cas. (mot1|mot2|mot3)
if($error==0){
  
$refTest=preg_replace('`(^|W*)('.$_listePerso.')s?(W|$)`Usi','$1 _###_ $3'$ref);
  if(
ereg('_###_',$refTest)){
    
$error=1;
  }
}
//Si le referant existe dans la liste blanche, on remet les erreurs a 0
if(eregi(set_domain($ref), $_listeok)){
  
$error=0;
}
//Fin des cas particluliers

//Si error=1, on test si ce domaine existe deja dans la liste des bon domaine
//S'il n'existe pas, on le rajoute, puis, on met à jours la liste des referer.
if($error==0){

  
$dataTemp=implode(""file($ref));
  if(
eregi($_votresite,$dataTemp) OR eregi(set_domain($ref), $_listeok)){
    
add_good_link($ref,$goodlinks);
  }else{ 
    
add_bad_link($ref$badlinks);
  }
  
}
//Fin du script ::
//




//
//Les fonctions : 
//Fonction qui extrait le nom de domaine de l'url
function set_domain($ref){
  
$serveur ereg_replace("(http://[^/]*/)(.*)""1"$ref);
  return 
$serveur;
}

//Fonction qui ajoute un domaine à la liste des MAUVAIS domaine
function add_bad_link($ref$badlinks){
  global 
$_rep;
  
$domain=set_domain($ref);
  if(!
ereg($domain,$badlinks)){
$data="
"
.$domain;
    
$fp fopen($_rep."/badlinks.txt""a+");
    
fwrite($fp$data);
    
fclose($fp);
  }
}

//Fonction qui ajoute un domaine à la liste des BON domaine
function add_good_link($ref$goodlinks){
  global 
$_rep;
  
$domain=set_domain($ref);
  if(!
ereg($domain,$goodlinks)){
$data="
"
.$domain;
    
$fp fopen($_rep."/goodlinks.txt""a+");
    
fwrite($fp$data);
    
fclose($fp);
  }
  
update_referers($ref);
}

//Mise à jours de la liste des referer.
//En meme temps, on supprime les ligne en trop.
function update_referers($ref){
  global 
$_rep$_votresite;
  
$tableau=file($_rep."/ref.txt");
  
$nb=count($tableau);
  if(
$nb>=10){ // on supprime les refs en trop
    
$fp fopen($_rep."/ref.txt""w+");
    
$T=$nb-10;
      for(
$i=$T$i<$nb$i++){
      
fwrite($fp$tableau[$i]);
      }
    
fclose($fp);
  }
  
    
$refsActuel=implode(""file("http://".$_votresite."/".$_rep."/ref.txt"));
    if(!
eregi(set_domain($ref), $refsActuel)){
$d="
"
.$ref;
    
$fp fopen($_rep."/ref.txt""a+");
    
fwrite($fp$d);
    
fclose($fp);
    }
}
?>


_______________________
c'est déjà assez triste de n'avoir rien à dire !!!
Si en plus il fallait se taire.....
 
Réponse à : Derniers referants     Posté le 15/02/2006 à 23:09
sky
Administrateur
Avatar
Site perso
4158 posts
Inscrit le : 13/08/2003
Ajout ceci à l'endrot ou tu veut voir les derniers référants :
<?php
    $tableau
=file("refer/ref.txt");
    
$nblignes=count($tableau)-1;
    
$oo=$nblignes-6;
    
      for(
$i=$nblignes$i>=$oo$i--){
        
$o++;
        
$chaine=$tableau[$i];
        
$chaine set_domain($chaine);
        
$chaine htmlentities($chaine);
        
$tableau[$i]=htmlentities($tableau[$i]);
        
$tableau[$i] = str_replace('&amp;','&'$tableau[$i]);
        
$referantTout.='&nbsp;'.$o.' - <a href="'.$tableau[$i].'" target="_blank">'.$chaine.'</a><br />'."\n";
      }
      
    echo 
$referantTout;
?>


_______________________
Graphiks : Cours PHP
Image
=> à quoi sert internet explorer ?
=> à télécharger firefox
 
Réponse à : Derniers referants     Posté le 16/02/2006 à 00:43
cityves
Membre
Avatar
Site perso
547 posts
Inscrit le : 10/12/2004
arf , ca affiche maintenant la liste des n° ( jai mis 10) mais en fait y'a plus rien qui se met dans les fichiers .txt

j'ai mis le bout de code pour afficher dans la page qui est appellée en include
j'ai essayé en le mettant a la fin du fichier referants.php ca fait pareil j'ai que les n° qui se mettent
donc maintenenat c'est les referants qui sont pas mis dans le fichier txt....

_______________________
c'est déjà assez triste de n'avoir rien à dire !!!
Si en plus il fallait se taire.....
 
Réponse à : Derniers referants     Posté le 16/02/2006 à 01:27
3run0
Administrateur
Avatar
1759 posts
Inscrit le : 1/10/2004
tu a bien les droits d'ecriture pour /refer/ et ref.txt ?
et le bon chemin de fichier par rapport à la page où tu affiche le code? smiley

_______________________
_ww.gabian-herault.com
 
Réponse à : Derniers referants     Posté le 16/02/2006 à 10:27
sky
Administrateur
Avatar
Site perso
4158 posts
Inscrit le : 13/08/2003
Yop

alors, le 1er code est pour alimenter les fichiers et les maintenair à jours. Il doit être mis en include en haut de la page.

le petit morceau de code que je t'ai filer en dernier, il ce place à l'endroit ou tu veut que les référants s'affiche.

Je considère que ce sont deux codes distinctes.

Il faudrai que je fasse un script plus simple peut être ou on alimente le fichier badlinks.txt à la main ou via une petite interface admin.

Sky

_______________________
Graphiks : Cours PHP
Image
=> à quoi sert internet explorer ?
=> à télécharger firefox
 
Réponse à : Derniers referants     Posté le 16/02/2006 à 11:50
cityves
Membre
Avatar
Site perso
547 posts
Inscrit le : 10/12/2004
bonjour,
3run0 -->oui j'ai tout mis en 777
le chemin doit etre bon vu que mon mode debug me mets pas d'erreur...

sky--> bon j'ai essayer de mettre include du fichier referants. php a divers endroits (index.php, mainfile, header, page que j'inclue dans le bloc ect..) pareil rien se met dans les .txt
le code pour afficher lui est sur la page du bloc et il marche vu qui a les n° de 1 à 10 qui s'affichent...

par contre j'ai du enlever ca :
$chaine = set_domain($chaine);

sinon erreur :
Fatal error: Call to undefined function set_domain() in /home/ftp/chtyves/public_html/afficherefer.php on line 8

_______________________
c'est déjà assez triste de n'avoir rien à dire !!!
Si en plus il fallait se taire.....
 
Réponse à : Derniers referants     Posté le 16/02/2006 à 12:08
sky
Administrateur
Avatar
Site perso
4158 posts
Inscrit le : 13/08/2003
Mise à jours du script à 12:15
Mise à jours du script à 12:21

Bon, ce qu'on va faire c'est mettre ce code et faire des test parceque là ^^
Fais un copier coller de ceci et fais un include là ou tu veut afficher les référants.

<?php
//Configuration ::::
$_votresite='chtyves.freeheberge.com'//Url de votre site sans http:// ni / a la fin
$_rep="refer"//Repertoire ou ce trouve les 3 fichiers  (badlinks.txt, goodlinks.txt et ref.txt) (a laisser vde si directemen  t à la racine)
$_listePerso='sexe|test.com|'//Liste de mots qui banniré un site refereant
$_listeok='test.com|chtyves.freeheberge.com'//Il est possible aussi d'avoir une liste de site a toujours accepté
//Configuration ::::


//
  //Les fonctions : 
  //Fonction qui extrait le nom de domaine de l'url
function set_domain($ref){
  
$refDomain ereg_replace("http://"""$ref);
  
$refDomain ereg_replace("/(.*)"""$refDomain);
  return 
$refDomain;
}

//Fonction qui ajoute un domaine à la liste des MAUVAIS domaine
function add_bad_link($ref$badlinks){
  global 
$_rep;
  
$domain=set_domain($ref);
  if(!
ereg($domain,$badlinks)){
$data="
"
.$domain;
    
$fp fopen($_rep."/badlinks.txt""a+");
    
fwrite($fp$data);
    
fclose($fp);
  }
}

//Mise à jours de la liste des referer.
//En meme temps, on supprime les ligne en trop.
function update_referers($ref){
  global 
$_rep$_votresite;
  
$tableau=file($_rep."/ref.txt");
  
$nb=count($tableau);
  if(
$nb>=10){ // on supprime les refs en trop
    
$fp fopen($_rep."/ref.txt""w+");
    
$T=$nb-10;
      for(
$i=$T$i<$nb$i++){
      
fwrite($fp$tableau[$i]);
      }
    
fclose($fp);
  }
  
    
$refsActuel=implode(""file("http://".$_votresite."/".$_rep."/ref.txt"));
    if(!
eregi(set_domain($ref), $refsActuel)){
$d="
"
.$ref;
    
$fp fopen($_rep."/ref.txt""a+");
    
fwrite($fp$d);
    
fclose($fp);
    }
}
  
//Fin des fonctions
//




$ref=htmlentities($_SERVER['HTTP_REFERER'], ENT_QUOTES);
$error=0;

$badlinks=implode(""file("http://".$_votresite."/".$_rep."/badlinks.txt"));

if(empty(
$ref) OR ereg(set_domain($ref),$badlinks)){
  
$error=1;
}
if(
set_domain($ref)!=''){
  if(
ereg(set_domain($ref), $_votresite)) {
    
$error=1;
  }
}else{
  
$error=1;
}
if(
$error==0){
  
$refTest=preg_replace('`(^|W*)('.$_listePerso.')s?(W|$)`Usi','$1 _###_ $3'$ref);
  if(
ereg('_###_',$refTest)){
    
$error=1;
  }
}

if(
$error==0){
  
$dataTemp=implode(""file($ref));
  if(!
eregi($_votresite,$dataTemp)){
    
add_bad_link($ref$badlinks);
  }else{
    
update_referers($ref);
  }
}




//on affiche les référants : 

    
$tableau=file("$_rep/ref.txt");
    
$nblignes=count($tableau)-1;
    
$o=0;
      for(
$i=$nblignes$i>0$i--){
        
$o++;
        
$chaine=$tableau[$i];
        
$chaine set_domain($chaine);
        
$chaine htmlentities($chaine);
        
$tableau[$i]=htmlentities($tableau[$i]);
        
$tableau[$i] = str_replace('&amp;','&'$tableau[$i]);
        
$referantTout.='&nbsp;'.$o.' - <a href="'.$tableau[$i].'" target="_blank">'.$chaine.'</a><br />'."n";
      }
      
    echo 
$referantTout;
?>


Si ça marche pas, fais un echo de chaque variable pour voir ce qui ce passe.

_______________________
Graphiks : Cours PHP
Image
=> à quoi sert internet explorer ?
=> à télécharger firefox
 
Réponse à : Derniers referants     Posté le 16/02/2006 à 12:41
cityves
Membre
Avatar
Site perso
547 posts
Inscrit le : 10/12/2004
bon j'ai mis echo devant les lignes qui sert a afficher j'ai erreur a la ligne 104
ligne 104= :
for($i=$nblignes; $i>0; $i--){


en fait j'ai fait ça:
//on affiche les référants :

echo $tableau=file("$_rep/ref.txt");
echo $nblignes=count($tableau)-1;
echo $o=0;
echo for($i=$nblignes; $i>0; $i--){
echo $o++;
echo $chaine=$tableau[$i];
echo $chaine = set_domain($chaine);
echo $chaine = htmlentities($chaine);
echo $tableau[$i]=htmlentities($tableau[$i]);
echo $tableau[$i] = str_replace('&amp;','&', $tableau[$i]);
echo $referantTout.='&nbsp;'.$o.' - <a href="'.$tableau[$i].'" target="_blank">'.$chaine.'</a><br />'."n";
}

echo $referantTout;
?>



Mais bon le prob je pense venait pas de là la partie affiche semblait fonctionner
mais c'est la partie recup des refers qui met rien dans les .txt....
enfin je pense

_______________________
c'est déjà assez triste de n'avoir rien à dire !!!
Si en plus il fallait se taire.....
 
Réponse à : Derniers referants     Posté le 16/02/2006 à 12:45
sky
Administrateur
Avatar
Site perso
4158 posts
Inscrit le : 13/08/2003
Bon, est ce que y'a qqchose dans le fichier ref.txt ?
Pour les echo ça va pas du tout lol ^^

fais ceci :

//on affiche les référants :

$tableau=file("$_rep/ref.txt");
print_r($tableau);
$nblignes=count($tableau)-1;
$o=0;
for($i=$nblignes; $i>0; $i--){
$o++;
$chaine=$tableau[$i];
$chaine = set_domain($chaine);
$chaine = htmlentities($chaine);
$tableau[$i]=htmlentities($tableau[$i]);
$tableau[$i] = str_replace('&amp;','&', $tableau[$i]);
$referantTout.='&nbsp;'.$o.' - <a href="'.$tableau[$i].'" target="_blank">'.$chaine.'</a><br />'."n";
}

echo $referantTout;
?>

_______________________
Graphiks : Cours PHP
Image
=> à quoi sert internet explorer ?
=> à télécharger firefox
 
Réponse à : Derniers referants     Posté le 16/02/2006 à 12:47
cityves
Membre
Avatar
Site perso
547 posts
Inscrit le : 10/12/2004
non y'a rien dans les .txt
oui je sais mais bon voulais voir des erreurs pour voir si ca affiche la page ;)
je mets ca a la place et je dis quoi...

_______________________
c'est déjà assez triste de n'avoir rien à dire !!!
Si en plus il fallait se taire.....
 
Réponse à : Derniers referants     Posté le 16/02/2006 à 12:55
cityves
Membre
Avatar
Site perso
547 posts
Inscrit le : 10/12/2004
ca affiche ceci:


Array ( )



_______________________
c'est déjà assez triste de n'avoir rien à dire !!!
Si en plus il fallait se taire.....
 
Réponse à : Derniers referants     Posté le 16/02/2006 à 13:15
sky
Administrateur
Avatar
Site perso
4158 posts
Inscrit le : 13/08/2003
MAJ le 16/02/2006 à 13:34

ben ... cequ est normal puisque ton fichier est vide smiley

Bref, le problème vient de l'enregistrement des référants.

Donc, on va travailler en url absolu.
Remplace ton code actuel par ceci :
<?php
//Configuration ::::
$_votresite='chtyves.freeheberge.com'//Url de votre site sans http:// ni / a la fin
$_rep="refer"//Repertoire ou ce trouve les 3 fichiers  (badlinks.txt, goodlinks.txt et ref.txt) (a laisser vde si directemen   t à la racine)
$_listeok='graphiks.net|cityves.graphiks.net'//Il est possible aussi d'avoir une liste de site a toujours accepté
//Configuration ::::


//
  //Les fonctions : 
  //Fonction qui extrait le nom de domaine de l'url
function set_domain($ref){
  
$refDomain ereg_replace("http://"""$ref);
  
$refDomain ereg_replace("/(.*)"""$refDomain);
  return 
$refDomain;
}

//Fonction qui ajoute un domaine à la liste des MAUVAIS domaine
function add_bad_link($ref$badlinks){
  global 
$_rep;
  
$domain=set_domain($ref);
  if(!
ereg($domain,$badlinks)){
$data="
"
.$domain;
    
$fp fopen($_rep."/badlinks.txt""a+");
    
fwrite($fp$data);
    
fclose($fp);
  }
}

//Mise à jours de la liste des referer.
//En meme temps, on supprime les ligne en trop.
function update_referers($ref){
  global 
$_rep$_votresite;
  
$tableau=file("/home/ftp/chtyves/public_html/refer/ref.txt");
  
$nb=count($tableau);
  if(
$nb>=10){ // on supprime les refs en trop
    
$fp fopen("/home/ftp/chtyves/public_html/refer/ref.txt""w+");
    
$T=$nb-10;
      for(
$i=$T$i<$nb$i++){
      
fwrite($fp$tableau[$i]);
      }
    
fclose($fp);
  }
  
    
$refsActuel=implode(""file("http://".$_votresite."/".$_rep."/ref.txt"));
    if(!
eregi(set_domain($ref), $refsActuel)){
$d="
"
.$ref;
    
$fp fopen("/home/ftp/chtyves/public_html/refer/ref.txt""a+");
    
fwrite($fp$d);
    
fclose($fp);
    }
}
  
//Fin des fonctions
//




$ref=htmlentities($_SERVER['HTTP_REFERER'], ENT_QUOTES);
$error=0;

$badlinks=implode(""file("http://".$_votresite."/".$_rep."/badlinks.txt"));

if(empty(
$ref) OR ereg(set_domain($ref),$badlinks)){
  
$error=1;
}
if(
set_domain($ref)!=''){
  if(
ereg(set_domain($ref), $_votresite)) {
    
$error=1;
  }
}else{
  
$error=1;
}

if(
$error==0){
  
$dataTemp=implode(""file($ref));
  if(!
eregi($_votresite,$dataTemp)){
    if(
ereg(set_domain($ref),$_listeok)) {
      
update_referers($ref);
    }else{
      
add_bad_link($ref$badlinks);
    }
  }else{
    
update_referers($ref);
  }
}




//on affiche les référants : 

    
$tableau=file("/home/ftp/chtyves/public_html/refer/ref.txt");
    
$nblignes=count($tableau)-1;
    
$o=0;
      for(
$i=$nblignes$i>0$i--){
        
$o++;
        
$chaine=$tableau[$i];
        
$chaine set_domain($chaine);
        
$chaine htmlentities($chaine);
        
$tableau[$i]=htmlentities($tableau[$i]);
        
$tableau[$i] = str_replace('&amp;','&'$tableau[$i]);
        
$referantTout.='&nbsp;'.$o.' - <a href="'.$tableau[$i].'" target="_blank">'.$chaine.'</a><br />'."\n";
      }
      
    echo 
$referantTout;
?>


Puis, clic sur un lien qui pointe vers ton site.

Sky

_______________________
Graphiks : Cours PHP
Image
=> à quoi sert internet explorer ?
=> à télécharger firefox
 
Réponse à : Derniers referants     Posté le 16/02/2006 à 13:21
3run0
Administrateur
Avatar
1759 posts
Inscrit le : 1/10/2004
il y a un bleme quelque part par là:
<?
if($error==0){
  
$refTest=preg_replace('`(^|W*)('.$_listePerso.')s?(W|$)`Usi','$1 _###_ $3'$ref);
  if(
ereg('_###_',$refTest)){
    
$error=1;
  }
}
?>


fait print $refTest le résultat est zarbi

_______________________
_ww.gabian-herault.com
 
Pages : [1] 2
Vous n'est pas connecté en temps que membre, parceque j'en ai marre du spam, SEUL les membres peuvent poster des messages sur le forum.

Nous  -  Plan du site  -  Informations légale  -  Contact  -  © Graphiks.net