Galerie photo + fichier::: lunatic pandarun 1.0a ::: php simple avec de multiple petite fonction a teste merci

Description

Update : Lunatic pandarun 1.0a

complète grosse mise à jours
option de déploiement non active encore
gestion des fichiers sans avoir besoin d'image externe
indentation enfin fini!!!

Source / Exemple :


<?php
//////////////////////////////////////////////////////
// Galerie Photo . gestion de fichier .
// L E     L U N A T I C  P A N D A R U N  !!! 
// par Synsun depuis le 5 janvier 2009
// evoyer moi vos modification et proposition sur mon mail
// synnus@gmail.com
// merci :) a tous !!! le Panda cour toujours !!!
// 
// @! j'aurai besoin d'un bon correcteur pour mes fautes d'orthographe ;) merci a  vous .
///////////////////////////////////////////////////////
set_time_limit(60); 	//fonction qui peut étre activer pour éviter les erreurs du au temps d'execution dépassant 30 second 
						//a activer si votre serveur le support 
$time_start = microtime(true); //permetra de contabiliser le temps d'affichage 
$version = "Lunatic-Pandarun 1.0 (beta-test) deploiement : http://syn.sun.free.fr";

##################################################################################################
# #  D E P L O I E M E N T  # ## ## ### ### #### #### ##### ######################################
#!!! !!! !!! !!! !!! !!! !!! !!!
#!!! pas encore en fonction  !!!
#!!! !!! !!! !!! !!! !!! !!! !!!
$activer_deploiement = "non"; 	///  Cette option permetra au Lunatic pandarun de vous proposer une assistance visuel de configuration 
								/// en d'autre terme de proposer une configuration par clic ou par choix depuis la page web
								/// que faire a partir de maintenant ? 
								/// le dépoyement vas créé des fichiers pour sécurisé la configuration et aussi métre en place des dossiers
								/// et fichier de configration externe avec un index.php configuré .par contre le fichier index.php actiel sera détruit
								/// pour ne pas étre pirater pendant votre configuration :p 
								/// votre deuxiéme option est de configuré a la main si dessous votre galerie :p^
								/// si vous activer le déployement pas besoin de configuré si dessous votre galerie.
								/// cela n'avancera pas plus vite le déplyement
								///  "yes" pour activer le déployement.
								
# #  D E P L O Y E M E N T  # ## ## ### ### #### #### ##### ######################################
##############################################################################################
# debut de configuration ICI!!! SI DESSOU !
#
#################################
# # C O N F I G U R A T I O N # #
#################################
#
// T I T R E  E T  S O U S - T I T R E  D E L A  P A G E
$titre_de_la_page = " Serial Experiment LUNATIC PANDARUN 1.x wwww.lunatic-pandarun.1x.fr "; //si vous voulez ne rien afficher laisser "";
$sous_titre_de_la_page = "<br><font size=2 color=#000000 >
<br>Voili voila la nouvelle version de la galerie photo Lunatic pandarun 0.2a !!
<br><br>Mise à jours du site < Mon Jan 19 7:20:00 CET 2009 >
</font><br>"; //si vous voulez ne rien afficher laisser "";
#
$taille_titre = "4"; //la taille du titre
$taille_soustitre = "3"; //la taille du sous titre
$taille_text_photo = "2"; //la taille du texte sous la photo 1,2,3,4,5,6  1 etant la plus petite taille
#
#
$activer_la_numerotation_de_visiteur = "yes";  	//active le compteur pour chaque arriver d'un visiteur sur la page 
$texte_bienvenu = "<font color=#000000 >Bienvenu visiteur n°" ;		// ce compteur n'est pas d'une grande fiablilitée mais permet d'avoir une idéee du nombre de visiteur 
$texte_derniére_visite = " :) <br><br> derniére visite : ";
#
//\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\
// ## ## ## T  A  B  L  E  A  U  ###############################################################################################
$nombre_de_colone = "6"; 
// le nombre de colone de photo0 . pour 10 photo je vous conseil "3" ou "4" pour une 50éne de photo "8"
// je vous déconseil de depassé "8" . enfin a vous de tester a plus de 8 colones.
#
$hauteur_dimage = "140"; // Hauteur et largeur des miniatures 
$largeur_dimage = "140"; // valeur par default "120" si le show splash est acitver je vous conseil "100" 
// minimum pas moins de 40 pour un résulta convenable 
// lorsque vous reconfigurez la taille des miniatures pensez a détruire le dossier miniature 
// je n'ai pas encore implémenter une fonction qui analyse si les image dans le ./tmp concorde avec la tail demander.
// en claire fier vous a moi et garder une résolution pas en dessous de 100 pixel en hauteur et en largeur si vous avez beaucoup d'image 
// beaucoup veu dire plus de 50 si vous en avez moins je vous conseil 120 ou 140 :) .
#
//\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\
// A C T I V E   L A   G E S T I O N    D E S   F I C H I E R S
$active_gestion_des_fichier = "1"; // permet au lunatic pandarun de reconnaitre certain fichier comme les .txt zip 7z et page web
$active_gestion_simple_fichier = "oui"; // permet de ne pas dépandre des images externe et donc fabrique une imiatures 
#
#
// S H O W S P L A S H \\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\
$activer_le_show_splash = "0"; // LE SHOW SPLASH  Activer , créé un deux éme groupe de miniature fesan 2 ou 3 fois la taille 
// des miniatures . cette optioon active un code java script qui permetra en survolant les image
// de les agrandirs . une option interessente . par default "0" 
// ATTENTION !!!  des problémes rencontré sous internet Explorer 8 sous windows seven donc j'estime que sous vista aussi 
// apprement le browser n'aime pas trop le java ... je continu les recherches la dessus 
#
$force_taille_show_splash = "2"; //ette option force le mutiplicateur de taille du Show splash .default "2"
#
$affiche_show_splash_clic =  "1"; // Cette option force a afficher le show splash par clic et non en survolant la miniature
#
#
//\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\
// C O U L E U R 
// rouge / blanc /$bleu / gris / noir / marron / vert / jaune / violet
//-------------------------------------------------------------------------------
// rouge_claire / bleu_claire  / gri_claire /
// vert_claire  / jaune_claire  / violet_claire 
//-------------------------------------------------------------------------------
// rouge_sombre / bleu_sombre / gris_sombre /
// vert_sombre / jaune_sombre / violet_sombre
//-------------------------------------------------------------------------------
//vous pouvez aussi utiliser les couleurs en code Hexa RGB exemple #FF00FF
// pour ceux qui ne connaisse vraiment pas , exemple : $couleur_arrier_plan = "#FFEA03";
// mais je vous conseil d'utiliser les couleurs préconfiguré 
// exemple: $couleur_arrier_plan = "$blanc";
//\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\
#
$couleur_cadre_photo_et_texte = "noir";
$couleur_texte_photo = "blanc";
$couleur_arrier_plan_texte_photo = "noir"; //!malheureusement pose des problémes avec les options css mais reste en cour de réimplémentation
#
$couleur_arrier_plan_photo = "trans"; // couleur d'arriére plan de la photo et du cadre 
$couleur_arrier_plan_cadre = "trans"; // pour obtenir une transparence laisser le pardefault : "trans"  ou "transparence"
#
$cadre_photo = "0"; // rendre visible le cadre photo "1" sinon par default "0"
$cadre_proch_photo = "0";	// affiche le cadre autour de la photo 
$cadre_arrier_plan = "1";	// rendre visible toute les lignes et colone des photos "1" par default "0"
$nombre_titre = "no";		// rendre visible la numerotation des photos
//\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\
$cisure_du_texte = "15"; // propose une cisure du nom de la photo si celle si est trop grande par default "16"
$force_cisure_par_espace = "1"; //cette option propose de couper le texte de vos photo par rapport au caractére espace " " ou "_"
//exemple le texte de ma photo sera : photo 1er janvier 2009.jpg ou photo_1er_janvier_2009.jpg
//mais je vous conseil le caractére "_" a la place des espaces. 
//par default l'option est a "0".
#
//\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\
// U R L  SI  V O U S   A V E Z  U N E  A U T R E  G A L E R I E  P H O T O  
//
#
$url_page_suivante = ""; 	// exemple: $url_page_suivante = "http://syn.sun.free.fr/galerie_photo2/index.php";
$url_page_texte = ""; 		// si rien n'est ecrit l'url si haut sera visible sinon le texte prenda sa place
							// exemple : $url_page_texte = "Galerie photo n°2"; 
							// si les deux son vide il n'y aura pas d'url afficher 
#							
//\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\
// D O S S I E R 
$dossier_dir    = "./"; // ici indiquer ou ce trouve vos photo . si elle sont dans le méme dossier que index.php 
// alors laissez  : $dir = './';
#
//\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\
// L O G O 1 ET 2 je vous conseil des dimention de 30x30 pour les logos
$logo = "./logo/logo_pandarun.gif"; // logo haut de page 
$logo_largeur = "27";
$logo_hauteur = "27";
$activer_logo_de_droite = "oui"; // active l'affichage du logo de droite en haut
// je me suis dit que pour des raisons d'esthétisme si le log était aussi de chaque coté ce serai mieu ;p 
#
$logo2 = "./logo/logo_pandarun.gif"; // Active le logo de bas de page 
$logo2_largeur = "27";
$logo2_hauteur = "27";
$activer_logo2_de_droite = "oui"; // active l'affichage du logo de droite en bas
#
//\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\
// C O N F I G   D E S  S K I N  
// ne plus rien toucher si vous n'étes pas un expert du skinage ;p 
// mais voir plus haut les couleurs proposé 
//\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\
#
$couleur_titre = "blanc";
$couleur_soustitre = "noir";
$skin_haut = "";
$couleur_haut = "noir";
$skin_bas = "";
$couleur_bas = "noir";
$skin_droite = "";
$couleur_droite = "blanc";
$skin_gauche = "";
$couleur_gauche = "blanc";
$skin_milieu = "sunset72506mod.jpg";
$couleur_milieu = "blanc";

//la taile ou épesseur des quatre partie skinable (le cadre de la page donc)
$taille_bar_skin_haut = "10";
$taille_bar_skin_bas ="10";
$taille_bar_skin_droite = "10";
$taille_bar_skin_gauche = "10";

#
//\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\
############################################################################################
## N E   P L U S   R I E N   T O U C H E R   A   P A R T I R   D' I C I ! ! ! !           ##
############################################################################################
//\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\
############################################################################################
## N E   P L U S   R I E N   T O U C H E R   A   P A R T I R   D' I C I ! ! ! !           ##
############################################################################################
//\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\
//Option devellopement teste // elle finira par disparétre a la prochaine version
$toujours_supprimer_le_dossier_miniature = "0"; // cette option mise a "1" sipprime le dossier des miniatures
// Si cette option est activer vous perdrez beaucoup de temps 
// sur l'affichage . par default "0".
//\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\
//
// GLOIRE AU DIEU MACHINE !!!!! :p :p :p :p :p 
//\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\
#########################
#x# F O N C T I O N S #x#
#########################
//\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\\\//\\
/*------------ Fonction resize all images --------------*/
class SimpleImage 
{

  var $image;
  var $image_type;

  function load($filename) 
  {
    $image_info = getimagesize($filename);
    $this->image_type = $image_info[2];
    if( $this->image_type == IMAGETYPE_JPEG ) 
    {
      $this->image = imagecreatefromjpeg($filename);
    } 
    elseif( $this->image_type == IMAGETYPE_GIF ) 
    {
      $this->image = imagecreatefromgif($filename);
    } 
    elseif( $this->image_type == IMAGETYPE_PNG ) 
    {
      $this->image = imagecreatefrompng($filename);
    }
  }
  function save($filename, $image_type=IMAGETYPE_JPEG, $compression=93, $permissions=null) 
  {
    if( $image_type == IMAGETYPE_JPEG ) 
    {
      imagejpeg($this->image,$filename,$compression);
    } 
    elseif( $image_type == IMAGETYPE_GIF ) 
    {
      imagegif($this->image,$filename);         
    } 
    elseif( $image_type == IMAGETYPE_PNG ) 
    {
      imagepng($this->image,$filename);
    }   
    if( $permissions != null) 
    {
      chmod($filename,$permissions);
    }
  }
  function output($image_type=IMAGETYPE_JPEG) {
    if( $image_type == IMAGETYPE_JPEG ) {
      imagejpeg($this->image);
      } elseif( $image_type == IMAGETYPE_GIF ) {
      imagegif($this->image);         
      } elseif( $image_type == IMAGETYPE_PNG ) {
      imagepng($this->image);
    }   
  }
  function getWidth() {
    return imagesx($this->image);
  }
  function getHeight() {
    return imagesy($this->image);
  }

  function resizeToHeight($height) {
    $ratio = $height / $this->getHeight();
    $width = $this->getWidth() * $ratio;
    $this->resize($width,$height);
  }
  function resizeToWidth($width) {
    $ratio = $width / $this->getWidth();
    $height = $this->getheight() * $ratio;
    $this->resize($width,$height);
  }
  function scale($scale) {

    $width = $this->getWidth() * ($scale/100);
    $height = $this->getheight() * ($scale/100);
    $this->resize($width,$height);
  }
  function resize($width,$height) {
    if($height > $width) { 
      $width2 = $width;
      $width = $width - ($height - $width) ;
      $height = $width2; 
    }
    $new_image = imagecreatetruecolor($width, $height);
    imagecopyresampled($new_image, $this->image, 0, 0, 0, 0, $width, $height, $this->getWidth(), $this->getHeight());
    $this->image = $new_image;   
  }      
}

/*------------ End Fonction resize all images ----------*/
#########################################################
#########################################################

function affichage($logo,$logo_hauteur,$logo_largeur,$logo2,$logo2_hauteur,$logo2_largeur,$taille_titre,$couleur_titre,$taille_soustitre,$couleur_soustitre,$skin_haut,$couleur_haut,$skin_bas,$couleur_bas,$skin_droite,$couleur_droite,$skin_gauche,$couleur_gauche,$skin_milieu,$couleur_milieu,$titre_de_la_page,$sous_titre_de_la_page,$activer_la_numerotation_de_visiteur,$url_page_suivante,$url_page_texte,$milieu_de_page,$version,$texte_bienvenu,$texte_derniére_visite) 
{
  $couleur_titre = couleur($couleur_titre);
  $couleur_soustitre = couleur($couleur_soustitre);
  $couleur_haut = couleur($couleur_haut);
  $couleur_bas = couleur($couleur_bas);
  $couleur_droite = couleur($couleur_droite);
  $couleur_gauche = couleur($couleur_gauche);
  $couleur_milieu = couleur($couleur_milieu);

  if($activer_la_numerotation_de_visiteur == "yes") { $sous_titre_de_la_page = bienvenu($texte_bienvenu,$texte_derniére_visite).$sous_titre_de_la_page; }
  if($logo != "") { $ajoute_logo = "<TH bgcolor=$couleur_haut background='$logo' height=$logo_hauteur width=$logo_largeur ></TH>"; $colspan = 2; } else { $ajoute_logo = ""; $colspan = 3; }
  if($logo2 != "") { $ajoute_logo2 = "<TH bgcolor=$couleur_haut background='$logo2' height=$logo2_hauteur width=$logo2_largeur ></TH>"; $colspan2 = 2; } else { $ajoute_logo2 = ""; $colspan2 = 3; }
  if($url_page_suivante != "") { $page_galerie2 = "<a href=$url_page_suivante >$url_page_texte</a><br>"; } else { $page_galerie2 = ""; }

  return "
  <TABLE BORDER='0' height=100% width=100% >
  <TR>
  $ajoute_logo <TH colspan=$colspan bgcolor=$couleur_haut background='$skin_haut' height=10 ><font size=$taille_titre color=$couleur_titre >$titre_de_la_page</font></TH>
  </TR>
  <TR>
  <TD bgcolor=$couleur_gauche background='$skin_gauche' width=10 ></TD>
  <TD bgcolor=$couleur_milieu background='$skin_milieu' align=center valign=center ><br><font size=$taille_soustitre color=$couleur_soustitre >$sous_titre_de_la_page</font><br><br><br> $page_galerie2 $milieu_de_page</TD>
  <TD bgcolor=$couleur_droite background='$skin_droite' width=10 ></TD>
  </TR>
  <TR>
  $ajoute_logo2 <TD  align=left valign=bottom colspan=$colspan2 bgcolor=$couleur_bas background='$skin_bas' height=10 ><font size=2 color=#FF0000> $version </font></TD>
  </TR>
  </TABLE> 
  ";
}

function couleur($couleur) {
  $color = array(
  "rouge" => "#FF0000",
  "blanc" => "#FFFFFF", 
  "bleu" => "#0000FF", 
  "gris" => "#969696", 
  "noir" => "#000000", 
  "marron" => "#903300", 
  "vert" => "#00FF00",
  "jaune" => "#FFFF00", 
  "violet" => "#B500B5",
  "rouge_claire" => "#FF8D8D", 
  "bleu_claire" => "#A0A0FF", 
  "gri_claire" => "#C0C0C0", 
  "vert_claire" => "#A0FFA0", 
  "jaune_claire" => "#FFFF7A", 
  "violet_claire"  => "#FF55FF",
  "rouge_sombre" => "#D70000", 
  "bleu_sombre" => "#0000AB", 
  "gris_sombre" => "#606060", 
  "vert_sombre" => "#009800", 
  "jaune_sombre" => "#DCDC00", 
  "violet_sombre" => "#A600A6",
  "transparence" => "''",
  "trans" => "''"
  );
  if( array_key_exists($couleur,$color)) 
  {
    return $color[$couleur];
  } 
  else { 
    		return $couleur; 
    		}
  }

  function photo_show($nombre_titre,$active_gestion_des_fichier,$activer_le_show_splash,$force_taille_show_splash,$affiche_show_splash_clic ,$nombre_de_colone,$hauteur_dimage,$largeur_dimage,$taille_text_photo,$couleur_texte_photo,$couleur_arrier_plan_texte_photo,$couleur_arrier_plan_photo,$couleur_arrier_plan_cadre,$cadre_photo,$cadre_arrier_plan,$cisure_du_texte,$url_page_suivante,$url_page_texte ,$dossier_dir,$force_cisure_par_espace,$toujours_supprimer_le_dossier_miniature) 
  {

    $couleur_texte_photo = couleur($couleur_texte_photo);
    $couleur_arrier_plan_texte_photo = couleur($couleur_arrier_plan_texte_photo);
    $couleur_arrier_plan_photo = couleur($couleur_arrier_plan_photo);
    $couleur_arrier_plan_cadre = couleur($couleur_arrier_plan_cadre);

    if($affiche_show_splash_clic == 1){
    $message_x = "<th colspan=".($nombre_de_colone)." ><font size=2 color=#FF0000>*Cliquez sur la photo pour l'agrandir </font></th></tr><tr>";
    } else {
    $message_x = "<th colspan=".($nombre_de_colone)." ><font size=2 color=#FF0000>*Cliquez sur le nom de la photo pour l'afficher </font></th></tr><tr>";
  }
  $tableo = "<table  border=".$cadre_arrier_plan."><tr>$message_x";
  // Ouvre un dossier bien connu, et liste tous les fichiers
  $files2 = "";
  $file = "";
  $r = "0";
  $f = "0";
  if (is_dir("./tmp")) 
  {
    if ($dh = opendir("./tmp")) 
    {
      while (($file = readdir($dh)) !== false) 
      {

        if($f > 1) {
          $subdir_exist = substr($file,0,-4);
          if (file_exists($subdir_exist)) {
            	   $files2[$r] = $file;
            $r++;
            } else {
            unlink('./tmp/'.$file);
            				if($activer_le_show_splash == 1) {
              				unlink('./shw/'.$file);
              				}
            }
            	}

            $f++;

          }
          closedir($dh);
        }
      }

      $x = count($files2);
      $r = 0;
      $f = 1;
      while($r <= $x-1) 
      {
        $dosxc = $files2[$r];

        if($f > $nombre_de_colone) 
        {
          $tableo = $tableo."</tr><tr>";
          $f = 1;
        }
        $dosxcxx = substr($dosxc,0,-4);

        if($nombre_titre == "yes") {
          $nombre_titre_ok = "<tr><th height=10 ><font size=1>".($r)."</font></th></tr>";
          } else {
          $nombre_titre_ok = "";
        }

        if($active_gestion_des_fichier == "1") {
          #$teste = substr($dosxc, 0, -4);
          $teste2 = strtolower(substr($dosxcxx, -3));
          if(
          $teste2 == "txt" or $teste2 == "php" or $teste2 == "htm" or $teste2 == "zip" or $teste2 == "7z" or $teste2 == "rar" or $teste2 == "gz" or $teste2 == "tar.gz") {
            $dosxcxx = $dosxcxx;
          }
        }

        $texte_ia = texto($dosxcxx,$cisure_du_texte,$force_cisure_par_espace);
        if($activer_le_show_splash == 1) 
        {
          if($affiche_show_splash_clic == 0) 
          {
            $tableo = $tableo.
            '<td  bgcolor='.$couleur_arrier_plan_cadre.' align=center valign=middle >
            <table class=ccm border='.$cadre_photo.'> '.$nombre_titre_ok.'
            <tr>
            <td bgcolor='.$couleur_arrier_plan_photo.' >
            <table class=ccmx height='.($hauteur_dimage + 10).'  width='.$largeur_dimage.'  ><td align=center valign=middle height='.($hauteur_dimage + 5 ).'>
            <A href="#'.$dosxcxx.'" onMouseOver="ShowButton(document.images[\''.$dosxc.'\'], \'shw/'.$dosxc.'\')" 
            onMouseOut="ShowButton(document.images[\''.$dosxc.'\'], \'tmp/'.$dosxc.'\')">
            <img border="none"  src="./tmp/'.$dosxc.'" name=\''.$dosxc.'\'>
            </A>
            </td></table>
            </td>
            </tr><tr>
            <td class=ccm align=center valign=center bgcolor='.$couleur_arrier_plan_texte_photo.' height='.round(($hauteur_dimage / 2.8),0).' >
            <a href="'.$dosxcxx.'" target="blank"><font size='.$taille_text_photo.' color='.$couleur_texte_photo.'>'.$texte_ia.'</font></a>
            </td></tr>
            </table>
            </td>';
          }
          else 
          {
            $tableo = $tableo.
            '<td  bgcolor='.$couleur_arrier_plan_cadre.' align=center valign=middle >
            <table class=ccm border='.$cadre_photo.'> '.$nombre_titre_ok.'
            <tr>
            <td bgcolor='.$couleur_arrier_plan_photo.' >
            <table class=ccmx height='.($hauteur_dimage + 10).'  width='.$largeur_dimage.'  ><td align=center valign=middle height='.($hauteur_dimage + 5 ).'>
            <A href="#'.$dosxcxx.'" 
            onMouseOver="ShowButton(document.images[\''.$dosxc.'\'],\'tmp/'.$dosxc.'\')" 
            onMouseOut="ShowButton(document.images[\''.$dosxc.'\'],\'tmp/'.$dosxc.'\')"
            onMouseDown="ShowButton(document.images[\''.$dosxc.'\'],\'shw/'.$dosxc.'\')"
            onMouseUp="ShowButton(document.images[\''.$dosxc.'\'],\'tmp/'.$dosxc.'\')"
            <img border="none"  src="./tmp/'.$dosxc.'" name=\''.$dosxc.'\'>
            </A>
            </td></table>
            </td>
            </tr><tr>
            <td align=center valign=center bgcolor='.$couleur_arrier_plan_texte_photo.' height='.round(($hauteur_dimage / 2.8),0).' >
            <a href="'.$dosxcxx.'" target="blank"><font size='.$taille_text_photo.' color='.$couleur_texte_photo.'>'.$texte_ia.'</font></a>
            </td></tr>
            </table>
            </td>';
          }
        }
        else 
        {
          $tableo = $tableo.
          '<td  bgcolor='.$couleur_arrier_plan_cadre.' align=center valign=up >
          <table class=ccm border='.$cadre_photo.'> '.$nombre_titre_ok.'
          <tr>
          <td align=center bgcolor='.$couleur_arrier_plan_photo.' >
          <table class=ccmx height='.($hauteur_dimage + 10).' width='.$largeur_dimage.' ><td align=center valign=middle height='.($hauteur_dimage + 5 ).'>
          <a href="'.$dosxcxx.'" target="blank"><img border="none"  src="./tmp/'.$dosxc.'" name=\''.$dosxc.'\' ></a>
          </td></table>
          </td>
          </tr><tr>
          <td align=center valign=center bgcolor='.$couleur_arrier_plan_texte_photo.' height='.round(($hauteur_dimage / 2.8),0).' >
          <font size='.$taille_text_photo.' color='.$couleur_texte_photo.'>'.$texte_ia.'</font>
          </td></tr>
          </table>
          </td>';
        }
        $f++;
        $r++;
      }
      $tableo = $tableo."</tr></table>";
      return $tableo;
    }
    //FONCTION TEXTE D'IMAGE
    function texto($dosxc,$cisure_du_texte,$force_cisure_par_espace) 
    {
      $nombre_debar = substr_count($dosxc, '_');
      $nombre_despace = substr_count($dosxc, ' ');
      $texte_ia = "";
      $texte_image = substr($dosxc, 0, -4);
      $texte_image_lent = strlen($texte_image);
      if((($nombre_debar > 0) or ($nombre_despace > 0)) and ($force_cisure_par_espace == 1) ) 
      {
        if($nombre_debar > $nombre_despace) { $espace = "_"; } 
        else { $espace = " "; }
        $r = 1;
        $f = 0;

        $texte_ia2 = "";
        while($r <= $texte_image_lent) 
        {
          $texte_placement = strpos($texte_image, $espace, $r);
          if($texte_placement == 0) { $texte_placement = $texte_image_lent;  }
          $texte_couper = substr($texte_image, $f, $texte_placement - $f);
          $texte_ia2 = $texte_ia2.$texte_couper;
          if(strlen($texte_ia2) <= 16) 
          {
            $f = $texte_placement;
            $r = $texte_placement + 1;
          }
          else 
          {
            $texte_ia = $texte_ia.$texte_ia2."<br>";
            $texte_ia2 = "";
            $f = $texte_placement;
            $r = $texte_placement + 1;
          }
        }
        $texte_ia = $texte_ia.$texte_ia2;
        if($nombre_debar >= $nombre_despace) 
        { 
          $texte_ia = str_replace("_", " ",$texte_ia); 
        }
      } 
      else 
      {
        $texte_produit = ($texte_image_lent / $cisure_du_texte);
        if($texte_produit != 0) 
        {
          $texte_resulta = ($texte_image_lent - $cisure_du_texte);

          if($texte_resulta <= 4) 
          {
            $texte_ia = $texte_image;
          }
          else 
          {
            $texte_ia = "";
            $rr = 0;
            while($rr <= $texte_image_lent) 
            {
              $texte_ia = $texte_ia.substr($texte_image, $rr, $cisure_du_texte)."<BR>";
              $rr = $rr + $cisure_du_texte;
            }
          }
        }
        else 
        {
          $texte_ia = $texte_image;
        }
      }
      return $texte_ia;
    }

    function fichier_tmp($toujours_supprimer_le_dossier_miniature,$activer_le_show_splash) 
    {
      if($toujours_supprimer_le_dossier_miniature == 1) 
      {
        $files2 = "";
        $r = "0";
        if (is_dir("./tmp")) 
        {
          if ($dh = opendir("./tmp")) 
          {
            while (($file = readdir($dh)) !== false) 
            {
              $files2[$r] = $file;
              $r++;
            }
            closedir($dh);
          }
        }
        $x = count($files2);
        $r = 2;
        while($r <= $x-1) 
        {
          $dosxc = $files2[$r];
          unlink('./tmp/'.$dosxc);
          $r++;
        }
        rmdir('tmp');
      }
      if (!file_exists("./tmp")) 
      {
        mkdir("./tmp", 0777);
      }
      if($activer_le_show_splash == 1) 
      {
        if (!file_exists("./shw")) 
        {
          mkdir("./shw", 0777);
        }
      } 
    }

    function template_image($dossier_dir,$hauteur_dimage,$largeur_dimage,$activer_le_show_splash,$force_taille_show_splash) 
    {
      // Ouvre un dossier bien connu, et liste tous les fichiers
      $files1 = "";
      $r = "0";
      if (is_dir($dossier_dir)) 
      {
        if ($dh = opendir($dossier_dir)) 
        {
          while (($file = readdir($dh)) !== false) 
          {
            $files1[$r] = $file;
            $r++;
          }
          closedir($dh);
        }
      }
      $x = count($files1);
      $r = 2;
      $f = 1;
      while($r <= $x-1) 
      {
        $dosxc = $files1[$r];
        $extention = substr($dosxc, -3);
        $extention = strtolower($extention);
        if( in_array($extention,array("txt","php","html","htm","zip","7z","rar","gz","tar.gz","png","jpg","gif"))) 
        {

          if (!file_exists("./tmp/$dosxc".".jpg") and (!in_array($extention,array("png","jpg","gif"))) and ($dosxc != "index.php")) 
          {

            $dosxc2 = substr($dosxc, 0,-4);
            $image = new SimpleImage();
            			if($active_gestion_simple_fichier = "oui") {
              			$type_fichier = array(
              			"txt" => "fichier texte",
              			"php" => "page web ",
              			"htm" => "page html",
              			"zip" => "fichier archive",
              			"7z" => "fichier archive",
              			"rar" => "fichier archive",
              			"gz" => "fichier archive",
              			"tar.gz" => "fichier archive");
              			
              			creation_dimage_fichier("./tmp/".$dosxc2.".".$extention.".jpg",$dosxc2,"Type: ".$extention,$type_fichier[$extention],"tail:".round((filesize($dosxc2.".".$extention) / 1000),4)."kb",$hauteur_dimage,$largeur_dimage);
              			} else {
                $photos = "./img/".$extention."_page.jpg";//$dossier_photo."/".$nom_fichier;
                			
                $image->load($photos);
                $image->resizeToWidth($hauteur_dimage,$largeur_dimage);

                $image->save("./tmp/".$dosxc2.".".$extention.".jpg");
                			}
              }

              if( in_array($extention,array("png","jpg","gif"))) 
              {
                if (!file_exists("./tmp/$dosxc".".jpg")) 
                {
                  //img_resize($dosxc,"$dosxc",$hauteur_dimage,$largeur_dimage);

                  $image = new SimpleImage();
                  $photos = "./$dosxc";//$dossier_photo."/".$nom_fichier;
                  $image->load($photos);
                  $image->resizeToWidth($hauteur_dimage,$largeur_dimage);
                  $image->save("./tmp/".$dosxc.".jpg");
                }
                if (!file_exists("./shw/$dosxc".".jpg") and ($activer_le_show_splash == 1)) 
                {
                  $image = new SimpleImage();
                  $photos = "./$dosxc";//$dossier_photo."/".$nom_fichier;
                  $image->load($photos);
                  $image->resizeToWidth(($hauteur_dimage * $force_taille_show_splash),($largeur_dimage * $force_taille_show_splash));
                  $image->save("./shw/".$dosxc.".jpg");
                }
                //img_resize_show($dosxc,"$dosxc",$hauteur_dimage,$largeur_dimage,$activer_le_show_splash,$force_taille_show_splash);

              }
            }
            $r++;
          }
        }

        function bienvenu($texte_bienvenu,$texte_derniére_visite) {

          $today = date("D M j G:i:s T Y");
          $lines = file('./time.xxx');
          $numbre_time =  "0";

          foreach ($lines as $line_num => $line) {

            $numbre_time = htmlspecialchars($line);
            $fp = fopen('./time.xxx', 'w');
            fwrite($fp, $today);
            fclose($fp);
          }
          $lines = file('./number.xxx');
          $numbre_de_visite =  "0";

          foreach ($lines as $line_num => $line) {

            $numbre_de_visite = htmlspecialchars($line);
            $fp = fopen('./number.xxx', 'w');
            fwrite($fp, $numbre_de_visite + 1);
            fclose($fp);

          }

          return  $texte_bienvenu.$numbre_de_visite.$texte_derniére_visite.$numbre_time;
        }
        	function creation_dimage_fichier($nomfichier,$nomfichier2,$type,$texte,$texte2,$hauteur,$largeur) {
          	
          // Nouvelle image 100*30
          $im = imagecreate($hauteur,$largeur);

          // Fond blanc et texte bleu
          $bg = imagecolorallocate($im, 0, 0, 255);
          $textcolor = imagecolorallocate($im, 255, 255, 255);
          $textcolor1 = imagecolorallocate($im, 0, 0, 0);
          $textcolor2 = imagecolorallocate($im, 0, 255, 0);
          $textcolor3 = imagecolorallocate($im, 0, 0, 255);
          $textcolor4 = imagecolorallocate($im, 255, 0, 0);

          imagefilledrectangle($im, 1, 1, ($largeur - 2),($hauteur - 2) , $textcolor1);
          imagefilledrectangle($im, 3,3, ($largeur - 4), 20, $textcolor);
          imagefilledrectangle($im, 3,22, ($largeur - 4), ($hauteur - 20), $textcolor3);
          imagefilledrectangle($im, 30,22, ($largeur - 4), 20, $textcolor2);
          imagefilledrectangle($im, 30,22, ($largeur - 20), 20, $textcolor3);
          imagefilledrectangle($im, 3,22, ($largeur - 40), 20, $textcolor1);
          imagefilledrectangle($im, 3,($hauteur - 21), ($largeur - 4), ($hauteur - 19), $textcolor2);
          imagefilledrectangle($im, 3,($hauteur - 49), ($largeur - 4), ($hauteur - 46), $textcolor4);

          // Ajout de la phrase en haut à gauche
          imagestring($im, 6, 5, 2, $type, $textcolor1);
          imagestring($im, 4, 5, 30, $texte, $textcolor);
          imagestring($im, 2, 5, 80, $nomfichier2, $textcolor);
          imagestring($im, 4, 5, $hauteur - 18, $texte2, $textcolor);

          imagejpeg($im,$nomfichier,100);
          	}
          	
          	
          #########################
          # # A F F I C H A G E # #
          #########################
          //print affichage($logo,$logo_hauteur,$logo_largeur,$logo2,$logo2_hauteur,$logo2_largeur,$taille_titre,$couleur_titre,$taille_soustitre,$couleur_soustitre,$skin_haut,$couleur_haut,$skin_bas,$couleur_bas,$skin_droite,$couleur_droite,$skin_gauche,$couleur_gauche,$skin_milieu,$couleur_milieu,$titre_de_la_page,$sous_titre_de_la_page,$activer_la_numerotation_de_visiteur,$url_page_suivante,$url_page_texte,$milieu_de_page,$version,$texte_bienvenu,$texte_derniére_visite);

          fichier_tmp($toujours_supprimer_le_dossier_miniature,$activer_le_show_splash);
          template_image($dossier_dir,$hauteur_dimage,$largeur_dimage,$activer_le_show_splash,$force_taille_show_splash);

          $milieu_de_page = photo_show($nombre_titre,$active_gestion_des_fichier,$activer_le_show_splash,$force_taille_show_splash,$affiche_show_splash_clic,$nombre_de_colone,$hauteur_dimage,$largeur_dimage,$taille_text_photo,$couleur_texte_photo,$couleur_arrier_plan_texte_photo,$couleur_arrier_plan_photo,$couleur_arrier_plan_cadre,$cadre_photo,$cadre_arrier_plan,$cisure_du_texte,$url_page_suivante,$url_page_texte,$dossier_dir,$force_cisure_par_espace,$toujours_supprimer_le_dossier_miniature);

          #contenu table.ccm{float:left; border:solid 1px #6480B8; background-color:#6480B8; border-collapse:collapse; border-spacing:0; padding:0; margin:0; width:100%; margin-top:5px}
          $couleur_cadre_photo_et_texte = couleur($couleur_cadre_photo_et_texte);
          $couleur_texte_photo = couleur($couleur_texte_photo);
          $couleur_arrier_plan_texte_photo = couleur($couleur_arrier_plan_texte_photo);
          $couleur_arrier_plan_photo = couleur($couleur_arrier_plan_photo);
          $couleur_arrier_plan_cadre = couleur($couleur_arrier_plan_cadre);
          $couleur_titre = couleur($couleur_titre);
          $couleur_soustitre = couleur($couleur_soustitre);
          $couleur_haut = couleur($couleur_haut);
          $couleur_bas = couleur($couleur_bas);
          $couleur_droite = couleur($couleur_droite);
          $couleur_gauche = couleur($couleur_gauche);
          $couleur_milieu = couleur($couleur_milieu);

          ###########################################################################
          $ajoute_logo_droite = "";
          $ajoute_logo_droite2 = "";

          	  $ajoute_logo2 = ""; 
          		  $colspan2 = 3;  
          	  $ajoute_logo = ""; 
          		  $colspan = 3;
          if($activer_la_numerotation_de_visiteur == "yes") { 
            	  $sous_titre_de_la_page = bienvenu($texte_bienvenu,$texte_derniére_visite).$sous_titre_de_la_page; 
          	  }
          if($logo != "") { 
            		  $ajoute_logo = '<TH height="'.$logo2_hauteur.'"   width="'.$logo2_largeur.'" ><img border="none"  src="'.$logo.'" name="'.$logo.'" ></TH>'; 
            		  $colspan = 2; 
            		  if ($activer_logo_de_droite == "oui") {
              		  $ajoute_logo_droite = '<TH height="'.$logo2_hauteur.'"   width="'.$logo2_largeur.'" ><img border="none"  src="'.$logo.'" name="'.$logo.'" ></TH>';
              $colspan = 1;
            }
          	  } 

          if($logo2 != "") { 
            	  $ajoute_logo2 = '<TH height="'.$logo2_hauteur.'"   width="'.$logo2_largeur.'" ><img border="none"  src="'.$logo2.'" name="'.$logo2.'" ></TH>'; 
            		  $colspan2 = 2; 
            		  if ( $activer_logo2_de_droite == "oui" ) {
              		  $ajoute_logo_droite2 = '<TH height="'.$logo2_hauteur.'"   width="'.$logo2_largeur.'" ><img border="none"  src="'.$logo2.'" name="'.$logo2.'" ></TH>';
              $colspan2 = 1;
            }
          	  } 

          if($url_page_suivante != "") { 
            	  $page_galerie2 = "<a href=$url_page_suivante >$url_page_texte</a><br>"; 
          	  } 
          	  else {
            	  $page_galerie2 = ""; 
          	  }

          ###########################################################################
          print "
          <HTML>
          <HEAD><TITLE> ".$titre_de_la_page." </TITLE>
          <style type=\"text/css\">
          table.ccm{float:none; border:solid ".$cadre_photo."px ".$couleur_cadre_photo_et_texte." ; background-color:".$couleur_arrier_plan_photo." ; border-collapse:collapse; border-spacing:0; padding:0; margin:0; margin-top:0px}
          table.ccm td{ border:solid ".$cadre_photo."px ".$couleur_cadre_photo_et_texte."; background-color:'' ; border-collapse:collapse; border-spacing:0; padding:0; margin:0; margin-top:0px}
          table.ccm th{ border:solid ".$cadre_photo."px ".$couleur_cadre_photo_et_texte."; background-color:''  ; border-collapse:collapse; border-spacing:0; padding:0; margin:0; margin-top:0px}
          table.ccmx{float:none; border:solid ".$cadre_proch_photo."px ".$couleur_cadre_photo_et_texte." ; background-color:''  ; border-collapse:collapse; border-spacing:2; padding:2; margin:2; margin-top:2px}
          table.ccmx td{ border:solid ".$cadre_proch_photo."px ".$couleur_cadre_photo_et_texte."; background-color:'' ; border-collapse:collapse; border-spacing:2; padding:2; margin:2; margin-top:2px}
          </style>
          <SCRIPT LANGUAGE=\"JavaScript\">
          function ShowButton(objName, ImageName) 
          {
            objName.src=ImageName
          }
          </SCRIPT>
          </HEAD>
          <BODY>
          <TABLE class=ccm border='0' height=100% width=100%>
          <TR>
          ".$ajoute_logo." <TH colspan=".$colspan." bgcolor=$couleur_haut background='".$skin_haut."' height=".$taille_bar_skin_haut." ><font size=".$taille_titre." color=".$couleur_titre." >".$titre_de_la_page."</font></TH>".$ajoute_logo_droite."
          </TR>
          <TR>
          	  
          <TD bgcolor=".$couleur_gauche." background='".$skin_gauche."' width=".$taille_bar_skin_gauche." ></TD>
          <TD bgcolor=".$couleur_milieu." background='".$skin_milieu."' align=center valign=center ><br><font size=".$taille_soustitre." color=".$couleur_soustitre." >".$sous_titre_de_la_page."</font><br><br><br>".$page_galerie2." ".$milieu_de_page."<br><br><br><br></TD>
          <TD bgcolor=".$couleur_droite." background='".$skin_droite."' width=".$taille_bar_skin_droite."></TD>

          </TR>
          <TR>
          ".$ajoute_logo2." <TD  align=left valign=bottom colspan=".$colspan2." bgcolor=".$couleur_bas." background='".$skin_bas."'height=".$taille_bar_skin_bas." ><font size=2 color=#FF0000> ".$version." </font></TD>".$ajoute_logo_droite2."
          </TR>
          </TABLE> 
          ";
          ###################################################################################

          //calcul  du temps d'execution de la page 
          $time_end = microtime(true);
          $time = $time_end - $time_start;
          print "<br><font size=2>Temps d'affichage : ".round($time,6)." seconds\n</font></BODY></HTML>";
          	  

          ?>

Conclusion :


version 1.0a active et trés fonctionel

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.