Audiences TV  |  Annuaire TV  |  Jeux Flash  |  Google PR  |  YourPHPAnnuaire
Rewrite YourPHPAnnuaire, version modifiée de Categorizator 0.3.10 supportant l'URL Rewriting
Modifs : 1.0.1 | 1.0.5 | 1.0.5b | 1.0.9 | 1.0.9b | 1.0.9c | 1.2.0 | 1.2.0b

NOTE : CE SCRIPT NE S'APPELAIT PAS ENCORE "Rewrite YourPHPAnnuaire" MAIS "Rewrite MyPHPAnnuaire"

Cette page liste toutes les modifications effectuées entre la version 1.0.9c et la version 1.2.0
Si vous ne souhaitez pas vous embêter à effectuer toutes ces modifications manuellement, il vous suffit de télécharger le fichier ryourphpannuaire12.zip et de copier les fichiers : .htaccess, bas.php, functions.php, index.php, installspj.php, search.php, search_form_inc.php, admin.php, param_annuaire.php, top_mots.php (nouveau) et param_keywords.php (nouveau) sur votre serveur, mais sachez dans ce cas que ces fichiers écraseront ceux qui figurent déjà sur votre serveur et que donc au cas où vous auriez effectué personnellement des modifications à ces fichiers, elles seront perdues !
MODIFICATIONS : 15/08/05 à 23h58

> Classement général des mots-clef les plus recherchés de l'annuaire
> La durée d'une session Admin n'est plus de 30min mais d'1h (afin d'éviter les déconnexions brutales)
> Lors de la soumission d'un site, le fait qu'il soit accessible n'est plus vérifié : soumissions plus rapides !
> L'auto-détection du titre d'un site est beaucoup plus rapide !
> Le nombre de catégories affiché à l'accueil est désormais le même que celui de la page de listing des catégories

Fichier modifié  : .htaccess  (répertoire principal)
Fichier modifié  : bas.php  (répertoire principal)
Fichier modifié  : functions.php  (répertoire principal)
Fichier modifié  : index.php  (répertoire principal)
Fichier modifié  : installspj.php  (répertoire principal)
Fichier modifié  : search.php  (répertoire principal)
Fichier modifié  : search_form_inc.php  (répertoire principal)
Fichier modifié  : admin.php  (répertoire ADMIN)
Fichier modifié  : param_annuaire.php  (répertoire ADMIN)
 
Fichier ajouté  : top_mots.php  (répertoire principal)
Fichier ajouté  : param_keywords.php  (répertoire ADMIN)

INSTALLSPJ.PHP
--------------

SUPPRIMER ligne 54 :
echo "<P><FONT SIZE=2 COLOR=Green><B>>>> Si vous mettez à jour une version précédente de Rewrite YourPHPAnnuaire, il est normal que vous ayez rencontré des erreurs ci-dessus !</B></FONT></P>\n";

... puis REMPLACER la ligne 60 :
mysql_close($lk);
PAR :
	echo "<P><FONT SIZE=2 COLOR=Green><B>>>> Si vous mettez à jour une version précédente de Rewrite YourPHPAnnuaire, il est normal que vous ayez rencontré des erreurs ci-dessus !</B></FONT></P>\n";
	
	if ( !@mysql_query("ALTER TABLE $T_infos ADD detect_url TINYINT(1) unsigned NOT NULL default '0' AFTER detect_images") )
		echo "<FONT COLOR=Red><B>Table $T_infos : Echec de création du champ \"detect_url\" ! Ce champ existe peut-être déjà.</B></FONT>";
	else	echo "<FONT COLOR=Green><B>Table $T_infos : Le champ \"detect_url\" a été correctement créé !</B></FONT>";
		echo "<BR>\n";
	if ( !@mysql_query("ALTER TABLE $T_infos ADD kw_max TINYINT(3) unsigned NOT NULL default '100' AFTER url_rewritting ") )
		echo "<FONT COLOR=Red><B>Table $T_infos : Echec de création du champ \"kw_max\" ! Ce champ existe peut-être déjà.</B></FONT>";
	else	echo "<FONT COLOR=Green><B>Table $T_infos : Le champ \"kw_max\" a été correctement créé !</B></FONT>";
		echo "<BR>\n";
	if ( !@mysql_query("ALTER TABLE $T_infos ADD kw_cliquables TINYINT(3) unsigned NOT NULL default '10' AFTER kw_max ") )
		echo "<FONT COLOR=Red><B>Table $T_infos : Echec de création du champ \"kw_cliquables\" ! Ce champ existe peut-être déjà.</B></FONT>";
	else	echo "<FONT COLOR=Green><B>Table $T_infos : Le champ \"kw_cliquables\" a été correctement créé !</B></FONT>";
		echo "<BR>\n";
	if ( !@mysql_query("ALTER TABLE $T_infos ADD kw_delai MEDIUMINT(5) unsigned NOT NULL default '1' AFTER kw_cliquables ") )
		echo "<FONT COLOR=Red><B>Table $T_infos : Echec de création du champ \"kw_delai\" ! Ce champ existe peut-être déjà.</B></FONT>";
	else	echo "<FONT COLOR=Green><B>Table $T_infos : Le champ \"kw_delai\" a été correctement créé !</B></FONT>";
		echo "<BR>\n";
	if ( !@mysql_query("ALTER TABLE $T_infos ADD kw_google TINYINT(1) unsigned NOT NULL default '0' AFTER kw_delai ") )
		echo "<FONT COLOR=Red><B>Table $T_infos : Echec de création du champ \"kw_google\" ! Ce champ existe peut-être déjà.</B></FONT>";
	else	echo "<FONT COLOR=Green><B>Table $T_infos : Le champ \"kw_google\" a été correctement créé !</B></FONT>";
		echo "<BR>\n";
	if ( !@mysql_query("ALTER TABLE $T_infos ADD kw_exclude VARCHAR(255) NOT NULL default '' AFTER kw_google ") )
		echo "<FONT COLOR=Red><B>Table $T_infos : Echec de création du champ \"kw_exclude\" ! Ce champ existe peut-être déjà.</B></FONT>";
	else	echo "<FONT COLOR=Green><B>Table $T_infos : Le champ \"kw_exclude\" a été correctement créé !</B></FONT>";
		echo "<P>\n";
	
	if ( !isset($T_keyw) ) {
		if ( !@mysql_query("CREATE TABLE keywords_annuaire ( id MEDIUMINT(7) unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY, time INT(10) unsigned NOT NULL default '0', keyw VARCHAR(75) NOT NULL default 'vide', nbkw MEDIUMINT(8) unsigned NOT NULL default '1', google TINYINT(1) unsigned NOT NULL default '0' ) ") )
			echo "<FONT COLOR=Red><B>CREATION DE LA TABLE keywords_annuaire : La création a échoué ! Cette table existe peut-être déjà.</B></FONT>";
		else	echo "<FONT COLOR=Green><B>CREATION DE LA TABLE keywords_annuaire : La table a été correctement créée !</B></FONT>";
			echo "<P>\n";
	};

mysql_close($lk);



ADMIN.PHP
---------

REMPLACER ligne 47 :
Vous pourrez modifier tous les paramètres que vous avez rentrés lors de l'installation du script.
PAR :
Vous pourrez modifier tous les paramètres que vous avez rentrés lors de l'installation du script.
<tr>
<td width=150 align="center" valign="middle">
<a href="<?php echo addsess2url("param_keywords.php",$session_id); ?>">Gérer le Top mots-clef</a>
<td width=500>
Vous pourrez définir ici tous les paramètres d'enregistrement et d'affichage des mots-clefs.



PARAM_ANNUAIRE.PHP
------------------

REMPLACER ligne 57 :
Souhaitez-vous activer la protection anti-spam lors de la soumission de sites ?
PAR :
Souhaitez-vous vérifier automatiquement lors d'une inscription si le site soumis est accessible ?
oui <input type="radio" name="detect_url" value=1<?php if($resultat["detect_url"] == 1) echo " checked"; ?>>   |   non <input type="radio" name="detect_url" value=0<?php if($resultat["detect_url"] != 1) echo " checked"; ?>><BR>
<font face=arial size=1>Il est conseillé de répondre NON car cela peut être lent. Répondez OUI si vous avez décidé de valider automatiquement les sites soumis.</font>
<br><br>
Souhaitez-vous activer la protection anti-spam lors de la soumission de sites ?


REMPLACER ligne 29 :
$allow_images = isset($_POST['allow_images']) ? (int)$_POST['allow_images'] : 1;
PAR :
$allow_images = isset($_POST['allow_images']) ? (int)$_POST['allow_images'] : 1;
$detect_url = isset($_POST['detect_url']) ? (int)$_POST['detect_url'] : 0;


REMPLACER ligne 90 :
$sql = "UPDATE $T_infos SET nb_sites_in_topclics='$nb_sites_in_topclics', nb_sites_in_topvotes='$nb_sites_in_topvotes', nb_days2benew='$nb_days2benew', nb_scats_on_index='$nb_scats_on_index', max_presence='$max_presence', nb_sites_on_page='$nb_sites_on_page', auto_validate='$auto_validate', func_mail='$func_mail', func_get_meta_tags='$func_get_meta_tags', code_verif='$code_verif', allow_images='$allow_images'".($detect_images?", detect_images='$detect_images'":'').", search_mots_complets='$search_mots_complets', url_rewritting='$url_rewritting', titre_site='$titre_site', url_site='$url_site', url_rep='$url_rep', nom_master='$nom_master', email_master='$email_master', use_newsletter='$use_newsletter' ";
PAR :
$sql = "UPDATE $T_infos SET nb_sites_in_topclics='$nb_sites_in_topclics', nb_sites_in_topvotes='$nb_sites_in_topvotes', nb_days2benew='$nb_days2benew', nb_scats_on_index='$nb_scats_on_index', max_presence='$max_presence', nb_sites_on_page='$nb_sites_on_page', auto_validate='$auto_validate', func_mail='$func_mail', func_get_meta_tags='$func_get_meta_tags', code_verif='$code_verif', allow_images='$allow_images'".($detect_images?", detect_images='$detect_images'":'').", detect_url='$detect_url', search_mots_complets='$search_mots_complets', url_rewritting='$url_rewritting', titre_site='$titre_site', url_site='$url_site', url_rep='$url_rep', nom_master='$nom_master', email_master='$email_master', use_newsletter='$use_newsletter' ";



SEARCH.PHP
----------

SUPPRIMER lignes 142-143 :
//connexion a la BD
$lk = connection_BD();


... puis REMPLACER lignes 7-8 :
$mots = isset($_REQUEST['mots']) ? $_REQUEST['mots'] : '';
$mots = trim($mots);
PAR :
// Si le nom de la table keywords ($T_keywords) n'a pas été défini dans "data_bd_annuaire.php" ...
// ... alors on considère qu'elle n'a pas été renommée et qu'elle s'appelle donc toujours "keywords_annuaire"
$T_keywords = isset($T_keywords) ? $T_keywords : 'keywords_annuaire';

$mots = isset($_REQUEST['mots']) ? $_REQUEST['mots'] : '';
$mots = trim($mots);

// Connexion a la BD
$lk = connection_BD();

// Vérifier si une ID a été envoyée en tant que mot
if ( preg_match("!^id(\d+)$!",$mots,$id) )
{
	$sql_keyw = "SELECT keyw FROM $T_keywords WHERE id='$id[1]' ";
	$res_keyw = send_sql( $sql_keyw, "chercher keyword à partir de son ID dans la base" );
	$keyw = mysql_fetch_array( $res_keyw, MYSQL_ASSOC );
	$mots = $keyw['keyw'];
}
else
{	// Ajout des mots clefs dans la base de données
	put_keyw($mots,'0');
};


REMPLACER ligne 289 :
$recherche = implode("+",$mots_reels_recherches);
PAR :
$recherche = implode(" ",$mots_reels_recherches);



FUNCTIONS.PHP
-------------

REMPLACER ligne 359 :
/************************************* FONCTIONS DIVERSES ****************************************/
PAR :
/************************************* FONCTIONS DIVERSES ****************************************/

function put_keyw($mots,$google='0')
// Insérer les mots-clefs dans la BDD
{
	global $PMA_infos, $T_keywords;
	
	// Si le nom de la table keywords ($T_keywords) n'a pas été défini dans "data_bd_annuaire.php" ...
	// ... alors on considère qu'elle n'a pas été renommée et qu'elle s'appelle donc toujours "keywords_annuaire"
	$T_keywords or $T_keywords = 'keywords_annuaire';
	
	// Si on a le droit d'enregistrer des mots-clef, qu'il fait plus de 2 caractères et ne contient pas 'http'
	if ( $PMA_infos['kw_max'] && strlen($mots)>2 && !preg_match("/http/",$mots) )
	{
		// On récupère en particulier la liste des lettres accentuées
		list( $suffixe, $caracteres, $car_speciaux, $car_normaux ) = id_to_url_info();
		// On supprime les accents et les caractères non-alphanumériques, convertit en minuscules, supprime les espaces inutiles, et limite la chaîne aux 75 premiers caractères
		$mots = substr( trim( eregi_replace( " +", ' ', strtolower( eregi_replace( "[^A-Za-z0-9&\$\%\'\.\-]", ' ', str_replace($car_speciaux, $car_normaux, $mots) ) ) ) ), 0, 75 );
		
		// On regarde s'il y a des mots bannis
		$exclu = false;
		foreach ( split(' ',$PMA_infos['kw_exclude']) as $mot_exclu ) {
			foreach ( split(' ',$mots) as $mot_cherche ) {
				if ( $mot_exclu == $mot_cherche ) {
					$exclu = true;
					break 2;
				};
			};
		};
		
		// S'il n'y a pas de mots bannis, on peut continuer
		if ( !$exclu )
		{	
			$time = time();
			
			$sql_keyw = "SELECT keyw,time FROM $T_keywords WHERE keyw='$mots' ";
			$res_keyw = send_sql( $sql_keyw, "chercher le mot-clef dans la base" );
			$keyw     = mysql_fetch_array( $res_keyw, MYSQL_ASSOC );
			
			if ( $keyw['keyw'] )
			{
				if ( $keyw['time']<$time-$PMA_infos['kw_delai'] ) {
					$sql_keyw  = "UPDATE $T_keywords SET time='$time',nbkw=nbkw+1,google='$google' WHERE keyw='$mots' ";
					send_sql( $sql_keyw, "mettre a jour le mot-clef de la base" );
				};
			}
			else
			{
				$sql_keyw = "SELECT count(id) as count FROM $T_keywords ";
				$res_keyw = send_sql($sql_keyw,"trouver le nombre de mots-clef de la base");
				$keyw = mysql_fetch_array( $res_keyw, MYSQL_ASSOC );
				
				if ( $keyw['count'] >= $PMA_infos['kw_max'] )
				{
					$surplus = $keyw['count'] - $PMA_infos['kw_max'] + 1;
					
					$sql_keyw = "SELECT id FROM $T_keywords ORDER BY time ASC, keyw ASC LIMIT $surplus";
					$res_keyw = send_sql($sql_keyw,"trouver les plus vieux mots-clef");
					
					while ( $keyw = mysql_fetch_array($res_keyw,MYSQL_ASSOC) )
					{
						$sql_keyw = "DELETE FROM $T_keywords WHERE id='$keyw[id]' ";
						send_sql( $sql_keyw, "effacer les mots-clef les plus vieux" );
					};
				};
				
				$sql_keyw  = "INSERT INTO $T_keywords (time,keyw,nbkw,google) VALUES ('$time','$mots','1','$google') ";
				send_sql( $sql_keyw, "inserer un nouveau mot-clef dans la base" );
			};
		};
	};
};


REMPLACER ligne 936 :
$message = "";
PAR :
global $PMA_infos;
$message = "";


REMPLACER lignes 961-963 :
$tab_return = check_connect($host,$path);
if ($tab_return["statut"] == 0)
	{};//$message .= "<br>Impossible de trouver le site $url !\n";
PAR :
if ( $PMA_infos['detect_url'] ) {
	$tab_return = check_connect($host,$path);
	if ($tab_return["statut"] == 0)
		$message .= "<br>Impossible de trouver le site $url !\n";
};


REMPLACER ligne 617 :
$head = @fread($fp, 8192);
PAR :
$head = @fread($fp, 1024);


REMPLACER ligne 91 :
return $page==1 ? "index.php?cat_id=$id" : "index.php?cat_id=$id&page=$page";
PAR :
if ( $type=='keyw' ) {
	return "search.php?action=seek&mots=id$id&nb_results2show=20&booleen=AND";
} else {
	return $page==1 ? "index.php?cat_id=$id" : "index.php?cat_id=$id&page=$page";
};


REMPLACER ligne 1165 :
function create_session($admin_id,$delai = 1800)
PAR :
function create_session($admin_id,$delai = 3600)



INDEX.PHP
---------

REMPLACER lignes 14-22 :
if ($cat_id)
{
	$lk = connection_BD();
	// Récupère les infos de la catégorie pour les metatags
	$sql_infos = "SELECT cat_name,texte FROM $T_categories WHERE id = '$cat_id' ";
	$res_infos = send_sql($sql_infos,"trouver les infos de cette catégorie");
	$res_infos = mysql_fetch_array($res_infos,MYSQL_ASSOC);
	mysql_close($lk);
};
PAR :
$lk = connection_BD();

	if ($cat_id)
	{
		// Récupère les infos de la catégorie pour les metatags
		$sql_infos = "SELECT cat_name,texte FROM $T_categories WHERE id = '$cat_id' ";
		$res_infos = send_sql($sql_infos,"trouver les infos de cette catégorie");
		$res_infos = mysql_fetch_array($res_infos,MYSQL_ASSOC);
	};
	
	// On récupère les mots-clef en provenance de Google ;o)
	if ( $PMA_infos['kw_google'] )
	{
		if ( preg_match( "!^http://[^/]+\.google\.[^/]+/search.+q=([^&]+)!i", $_SERVER['HTTP_REFERER'], $ref ) ) {
			$mots = utf8_decode( urldecode($ref[1]) );
			put_keyw( $mots, '1' );
		};
	};
	
mysql_close($lk);


REMPLACER ligne 59 :
$sql_nbcats = "SELECT id FROM $T_categories WHERE activation = '1' ";
PAR :
$sql_nbcats = "SELECT id FROM $T_categories ";



BAS.PHP
-------

REMPLACER ligne 13 :
<center><a href="allcategs.php" class="link_footer_annuaire">liste complète des catégories de l'annuaire</a></center>
PAR :
<center><a href="top_mots.php" class="link_footer_annuaire">mots-clef les plus recherchés</a> | <a href="allcategs.php" class="link_footer_annuaire">catégories de l'annuaire</a></center>


REMPLACER ligne 16 :
<a href="http://yourphpannuaire.audiencestv.com" target="_blank" class="link_footer_annuaire" title="Rewrite MyPHPAnnuaire 1.0.9c est une version modifiée de MyPHPAnnuaire 3.10 supportant entre autres l'URL Rewritting">Rewrite</a> <a href="http://www.creation-de-site.net" target="_blank" class="link_footer_annuaire" title="Site officiel de MyPHPAnnuaire">MyPHPAnnuaire</a>
PAR :
<a href="http://yourphpannuaire.audiencestv.com" target="_blank" class="link_footer_annuaire" title="Rewrite MyPHPAnnuaire 1.2.0 est une version modifiée de MyPHPAnnuaire 3.10 supportant entre autres l'URL Rewritting">Rewrite</a> <a href="http://www.creation-de-site.net" target="_blank" class="link_footer_annuaire" title="Site officiel de MyPHPAnnuaire">MyPHPAnnuaire</a>



SEARCH_FORM_INC.PHP
-------------------

SUPPRIMER la ligne 4 :
$mots = isset($_REQUEST['mots']) ? $_REQUEST['mots'] : '';



.HTACCESS
---------

REMPLACER ligne 2 :
RewriteRule -p([0-9]*)-([0-9]+)\.html$  /annuaire/index.php?cat_id=$2&page=$1 [L]
PAR :
RewriteRule -p([0-9]*)-([0-9]+)\.html$  /annuaire/index.php?cat_id=$2&page=$1 [L]
RewriteRule -k[0-9]*-([0-9]+)\.html$	/annuaire/search.php?action=seek&mots=id$1&nb_results2show=20&booleen=AND [L]




COPIE DE FICHIERS
-----------------

N'oubliez pas pour finir de copier les fichiers suivants :
top_mots.php       => à copier dans le répertoire principal de YourPHPAnnuaire
param_keywords.php => à copier dans le répertoire ADMIN de YourPHPAnnuaire

Sonneries et logos de portable GSM Le Meilleur du Web ! ApocalX AscreeN Thumbshots, aperçus graphiques de sites internet Rewrite YourPHPAnnuaire, version modifiée de Categorizator 0.3.10 supportant l'URL Rewriting Le Répertoire, annuaire d'annuaires Webcron, service de taches automatisés à heure fixe Audiences TV - Audience Télé - Télévision Annuaire TV - Annuaire Télé - Télévision Alexa Google, le meilleur moteur de recherche
Autres liens : Rubriques TV, Recherches TV, Présentatrices TV, Clara Morgane, Stars Nues, Hentai Gratuit, Sexe Gratuit, Vrai Sexe Amateur, Rubriques Amateur, Recherches Amateur