Textes 1.4b - Forum gratuit en PHP3/MySQL basé sur celui d'altern.org # ============================================================================= # # Ce forum a été écrit par Valentin Lacambre pour Altern.org # License: copyleft, GPL, http://www.april.org/gnu/gpl_french.html V. Lacambre # # Modifications: - Plam (220@chez.com) # - BohwaZ (zero@tilt.eu.org) # - Jérémy Audry (grandpa@altern.org) # - Micémoa (micemoa@altern.org) # - Guillaume (gjamet@altern.org) # # Plus d'infos, documentation, forum des utilisateurs, etc. sur : # http://pretextes.apinc.org ou par e-mail : grandpa@altern.org # ============================================================================= header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); header("Cache-Control: no-cache, must-revalidate"); header("Pragma: no-cache"); # Chronomètre de génération de la page : initialisation # =============================================== function getmicrotime(){ list($usec, $sec) = explode(" ",microtime()); return ((float)$usec + (float)$sec); } $time_start = getmicrotime(); # Définit les variables "d'environnement" pour PHP4 (pour rendre le script compatible avec le register_globals sur "off") if(isset($_SERVER['PHP_SELF'])){ $env_php_self = basename($_SERVER['PHP_SELF']); // convertit la variable d'environnement pour free.fr $env_php_ver = $_SERVER['SERVER_SOFTWARE']; $env_query_string = $_SERVER['QUERY_STRING']; } # Définit les variables "d'environnement" pour PHP3 else{ $env_php_self = basename($PHP_SELF); // convertit la variable d'environement pour free.fr $env_php_ver = $SERVER_SOFTWARE; $env_query_string = $QUERY_STRING; } # Détecte le format d'extension des fichiers # ================================================== $dir=opendir('.'); while ($file = readdir($dir)) { ereg("pretextes\.classe\.(php|php3)", $file, $temp); #if ( ereg("(pretextes.plugin.*)", $file, $plugin) ) { #@include("$plugin[1]"); #} } $extension = $temp[1]; closedir($dir); # Réupération des paramètres du forum # ================================================== include ("pretextes.preferences.".$extension); # Identification du visiteur (adresse IP et nom de la machine cliente) # =============================================== if(getenv(HTTP_X_FORWARDED_FOR)){$ip = getenv(HTTP_X_FORWARDED_FOR);} else{$ip = getenv(REMOTE_ADDR);} $ipl = gethostbyaddr($ip); # Compteur de visites # =============================================== $ip3 = getenv(REMOTE_ADDR); $fp = @fopen("$compteur","r+"); $nbvisites = @fgets($fp,10); $nbvisites++; @fseek($fp,0); @fputs($fp,$nbvisites); @fclose($fp); # Connexion à la table # ================================================== $lien = mysql_connect("$host", "$user", "$pass"); mysql_select_db("$bdd",$lien); include("pretextes.lang.".$langue.".".$extension); # Charge le fichier de langue include("pretextes.classe.".$extension); # Charge la classe # Initialise $debut if(!isset($debut) || empty($debut) || !ereg("[0-9]", $debut)){$debut=0;} if(!isset($page) || empty($page)){$page=1;} $pretxt = new Pretextes; # Initialise la classe $pretxt->pass_or_die($passit, $forumpassword, $env_php_self); $pretxt->quit_admin($env_query_string); $pretxt->postage($table, $postage, $cdsujet, $cdmail, $cdtxt, $cdnom, $premier, $lecture, $refresh, $env_php_self, $ip, $decalage); $pretxt->efface_msg($effacer, $passforum, $forumpassword, $env_php_self, $delete, $table); $pretxt->admin_table($table, $env_query_string, $env_php_self); $pretxt->erreur_recherche($recherche, $env_php_self, $lecture); $pretxt->debut_html($nomforum, $nlink, $alink, $vlink, $bgcolor, $table_bgcolor, $txt_color, $filinfobgcolor, $titresbgcolor, $filtxtbgcolor, $extension); # Début de la section "Introduction" # ================================================== echo("
cellules_recherche($env_php_self, $table_bgcolor, $_cellules_recherche, $lecture, $colspan="0", $recherche, $col_head); ?> | |
retour_message($message, $_retour_message); ?> |
'.$_retour_message[8].'
'; } else{ $recherche = addslashes($recherche); $recherche_nom_sujet = htmlentities($recherche); if(isset($in_file) && !empty($in_file)){ switch($rt){ case "tt"; $_where = "(nom LIKE '%$recherche_nom_sujet%' OR sujet LIKE '%$recherche_nom_sujet%' OR email='%$recherche%' OR texte LIKE '%$recherche%')"; break; case "tx"; $_where = "(texte LIKE '%$recherche%')"; break; case "ps"; $_where = "(nom LIKE '%$recherche%')"; break; case "sg"; $_where = "(sujet LIKE '%$recherche%')"; break; } $query = "SELECT * FROM $table WHERE (premier='$in_file' OR id='$in_file') AND ".$_where." ORDER BY tempo DESC LIMIT $debut, $parpage"; $nb = mysql_query("SELECT id FROM $table WHERE (premier='$in_file' OR id='$in_file') AND ".$_where); $total_resultats = mysql_num_rows($nb); // nombre total de résultats } else{ switch($rt){ case "tt"; $_where = " nom LIKE '%$recherche_nom_sujet%' OR sujet LIKE '%$recherche_nom_sujet%' OR email='%$recherche%' OR texte LIKE '%$recherche%'"; break; case "tx"; $_where = "texte LIKE '%$recherche%'"; break; case "ps"; $_where = "nom LIKE '%$recherche_nom_sujet%'"; break; case "sg"; $_where = "sujet LIKE '%$recherche_nom_sujet%'"; break; } $query = "SELECT * FROM $table WHERE ".$_where." ORDER BY tempo DESC LIMIT $debut, $parpage"; $nb = mysql_query("SELECT id FROM $table WHERE ".$_where); $total_resultats = mysql_num_rows($nb); // nombre total de résultats } $result = mysql_query($query); $nb_resultats = mysql_num_rows($result); // nombre de résultats affichés par pages $pretxt->cellule_admin($passforum, $forumpassword, "3", $col_head, $env_php_self, $_cellule_admin); echo "