Reduction des images sur forum phpBB

Statut
N'est pas ouverte pour d'autres réponses.

[HuNTeR]

Touriste
J'explique, je test un forum en phpBB mais quand je poste une image elle vient sur le forum dans ca taille d'origine.
Sur le forum de gamerz ca n'arrive, donc ma question comment dois-je faire pour garder une image reduite sur le forum.
 

ketum

Touriste
Deja poste ici meme , essaye de retrouver le post en passant par google ou si il est dans les post it :)
 

Carambar

Elite
Il y a quelques décrits sur phpBB.com qui font quelque chose de similaire. Je compte implémenter ca sur un forum alors je te tiens au courant.
 

neo

23 HOUR PARTY PEOPLE
[HuNTeR a dit:
]J'explique, je test un forum en phpBB mais quand je poste une image elle vient sur le forum dans ca taille d'origine.
Sur le forum de gamerz ca n'arrive, donc ma question comment dois-je faire pour garder une image reduite sur le forum.
va voir sur www.phpBB.com
 

sebge2

Elite
http://be.php.net/manual/fr/ref.image.php

Code:
//
/// REDIMENTIONNE UNE IMAGE
//
	//	$fileName = Nom du fichier
	//	$source = repertoire source
	//	$target = repertoire de destination
	//	$width et $height = laegeur et hauteur maximums
	//	$del => 1 ou 0 pour effacer le fichier source

	function redim($fileName,$source,$target,$widht,$height,$del){
		
		$pos = strrpos($fileName,"."); //Posititon du . dans le nom de fichier
		$extension = substr($fileName,$pos+1,strlen($fileName)-$pos); //Recupere l'extension du fichier
		$nom = substr($fichier,0,$pos); //Recupere le nom du fichier
		
		switch (strtolower($extension)){
			// case "png"  : {$origin = imagecreatefrompng($source.$fileName); break;}				
			case "jpg"  : {$origin = imagecreatefromjpeg($source.$fileName); break;}
			case "jpeg" : {$origin = imagecreatefromjpeg($source.$fileName); break;}
			case "jpe" : {$origin = imagecreatefromjpeg($source.$fileName); break;}
			// case "jfif" : {$origin = imagecreatefromjpeg($source.$fileName); break;}				
			// case "gif"  : {$origin = imagecreatefromgif($source.$fileName); break;}				
			default : {echo "<b>FICHIER NON SUPPORTE</b><br><br>Les fichiers supportés sont : jpg,jpeg,jpe(taille maximum 800*600)."; exit;}			
		}
		
		$taille = filesize($source.$fileName);// echo "<b>Taille: </b><i>$taille octets</i><br>";						
		$larg = imagesx($origin);
		$haut = imagesy($origin);
				
		if ($larg>$widht || $haut>$height) {
			$pc_l = $larg / $widht;
			$pc_h = $haut / $height;
		}
		else $pc_l = $pc_h = 1;
				
		$pc_m = $pc_l; if ($pc_h > $pc_l) $pc_m = $pc_h;// echo "<b>Dimension %: </b><i>$pc_m</i><br>";								
		$haut2 = $haut / $pc_m;
		$larg2 = $larg / $pc_m;
	
		//$iqual = ($taille / $pc_m) /1000;
		$qual = 50; //Sert pour le jpg
		//if ($iqual > 50) $qual = 100 * (50 / $iqual);
		//echo "<b>Indice de qualité: </b><i>$iqual</i><br><b>Adaptation qualité %:</b><i>$qual</i><br> ".$chemin."thumb$image généré<br><br>";
				
		$thumb = imagecreatetruecolor($larg2,$haut2);
		imagecopyresized($thumb,$origin, 0, 0, 0, 0,$larg2, $haut2, $larg, $haut);
		// imagepng($thumb,$target.$fileName); //Pour créer un PNG
		imagejpeg($thumb,$target."/".$fileName,$qual); // Pour créer un JPG				
		//if ($del==1)unlink($source.$fileName);				
		//imagedestroy($origin);
		//imagedestroy($thumb);
	}
// 
/// Fin de REDIMENTIONNE UNE IMAGE	
//
c'est une fonction créé par guslinux que j'utilise dans un module d'album photos :wink:
 
1er
OP
[HuNTeR]

[HuNTeR]

Touriste
Et (je suis vraiment noob) je dois mettre ca ou ? J'utilise un forum en phpBB.
 

Carambar

Elite
En fait, tu dois faire en sorte que phpBB fais appel à ce script à chaque fois que les balises
 
1er
OP
[HuNTeR]

[HuNTeR]

Touriste
J'ai cherché apres un mod sur http://www.phpbb.com mais je n'ai pas trouvé. si tu pouvait m'indiquer lequel c ou si tu pouvait me donner un liens c serait tof. :oops:
 

Carambar

Elite
Je jetterais un coup d'oeil ce soir. Je n'ai pas vu de mod équivalent à celui de Gamerz mais ceux qui sont proposés font quelque chose de similaire.
 

Carambar

Elite
Hop, j'ai oublié de poster des liens. Je ferais ca dans l'après-midi ;)
 
S

Spich

ex membre
sinon y a un moyen simple.
les forum phpBB2.x permettent d'utilise les balises html,
il suffit ds la configuration de ton forum d'autoriser la balise img.

et ds ton poste de faire un truc comme ca qd tu veux mettre une image.
<img SRC=url width=500 height=500> </img>

width=500 height=500 c'est avec c'est deux valeurs que tu peux definir la taille de ton image.
 

alan

Elite
Spich a dit:
sinon y a un moyen simple.
les forum phpBB2.x permettent d'utilise les balises html,
il suffit ds la configuration de ton forum d'autoriser la balise img.

et ds ton poste de faire un truc comme ca qd tu veux mettre une image.
<img SRC=url width=500 height=500> </img>

width=500 height=500 c'est avec c'est deux valeurs que tu peux definir la taille de ton image.
yep mais si c'est une image de 1-2 Mo ... la BP va chier ...
le mieux c'est un script intégré par module ou non qui crée une miniature de l'image et avec un lien ... kom les autres proposent ...
ton CPU 'chier' pour creer la miniature mais apres la Bande passante du serveur remercie ton cpu et un peu ton HD vu ke l'image est dessus une fois en taille originale et une fois en miniature ...
 

Carambar

Elite
alan a dit:
yep mais si c'est une image de 1-2 Mo ... la BP va chier ...
le mieux c'est un script intégré par module ou non qui crée une miniature de l'image et avec un lien ... kom les autres proposent ...
ton CPU 'chier' pour creer la miniature mais apres la Bande passante du serveur remercie ton cpu et un peu ton HD vu ke l'image est dessus une fois en taille originale et une fois en miniature ...
Pour ca il faudrais modifier le bbcode img pour qu'il fasse appel à un script externe comme ici sur Gamerz. Je pourrais le faire mais il faudrais que je retrouves des informations sur comment implémenter des bbcodes ou les modifier. J'ai déjà un module qui fais des vignettes mais il faut voir si [HuNTeR] possède un site qui supporte le GD.

Aucun des liens que j'ai donné n'offres une fonctionnalité similaire à celui de Gamerz, pour la simple raison que ce forum a été légèrement modifié en profondeur par Seb (qui dois très bien s'y connaître en matière de PHP ^^).
 

Ezekiel !

Elite
sebge2 a dit:
http://be.php.net/manual/fr/ref.image.php

Code:
//
/// REDIMENTIONNE UNE IMAGE
//
	//	$fileName = Nom du fichier
	//	$source = repertoire source
	//	$target = repertoire de destination
	//	$width et $height = laegeur et hauteur maximums
	//	$del => 1 ou 0 pour effacer le fichier source

	function redim($fileName,$source,$target,$widht,$height,$del){
		
		$pos = strrpos($fileName,"."); //Posititon du . dans le nom de fichier
		$extension = substr($fileName,$pos+1,strlen($fileName)-$pos); //Recupere l'extension du fichier
		$nom = substr($fichier,0,$pos); //Recupere le nom du fichier
		
		switch (strtolower($extension)){
			// case "png"  : {$origin = imagecreatefrompng($source.$fileName); break;}				
			case "jpg"  : {$origin = imagecreatefromjpeg($source.$fileName); break;}
			case "jpeg" : {$origin = imagecreatefromjpeg($source.$fileName); break;}
			case "jpe" : {$origin = imagecreatefromjpeg($source.$fileName); break;}
			// case "jfif" : {$origin = imagecreatefromjpeg($source.$fileName); break;}				
			// case "gif"  : {$origin = imagecreatefromgif($source.$fileName); break;}				
			default : {echo "<b>FICHIER NON SUPPORTE</b><br><br>Les fichiers supportés sont : jpg,jpeg,jpe(taille maximum 800*600)."; exit;}			
		}
		
		$taille = filesize($source.$fileName);// echo "<b>Taille: </b><i>$taille octets</i><br>";						
		$larg = imagesx($origin);
		$haut = imagesy($origin);
				
		if ($larg>$widht || $haut>$height) {
			$pc_l = $larg / $widht;
			$pc_h = $haut / $height;
		}
		else $pc_l = $pc_h = 1;
				
		$pc_m = $pc_l; if ($pc_h > $pc_l) $pc_m = $pc_h;// echo "<b>Dimension %: </b><i>$pc_m</i><br>";								
		$haut2 = $haut / $pc_m;
		$larg2 = $larg / $pc_m;
	
		//$iqual = ($taille / $pc_m) /1000;
		$qual = 50; //Sert pour le jpg
		//if ($iqual > 50) $qual = 100 * (50 / $iqual);
		//echo "<b>Indice de qualité: </b><i>$iqual</i><br><b>Adaptation qualité %:</b><i>$qual</i><br> ".$chemin."thumb$image généré<br><br>";
				
		$thumb = imagecreatetruecolor($larg2,$haut2);
		imagecopyresized($thumb,$origin, 0, 0, 0, 0,$larg2, $haut2, $larg, $haut);
		// imagepng($thumb,$target.$fileName); //Pour créer un PNG
		imagejpeg($thumb,$target."/".$fileName,$qual); // Pour créer un JPG				
		//if ($del==1)unlink($source.$fileName);				
		//imagedestroy($origin);
		//imagedestroy($thumb);
	}
// 
/// Fin de REDIMENTIONNE UNE IMAGE	
//
c'est une fonction créé par guslinux que j'utilise dans un module d'album photos :wink:
Est-ce que guslinux verrait un incovénient à ce que je l'utilise dans mes scripts ^^ ? Je sais pas encore ou ni comment l'utiliser mais elle va certainement me servir à un moment...
 

Smart

Touriste
Ez3kieL a dit:
sebge2 a dit:
Est-ce que guslinux verrait un incovénient à ce que je l'utilise dans mes scripts ^^ ? Je sais pas encore ou ni comment l'utiliser mais elle va certainement me servir à un moment...
Son code utilise les fonctions de php...
Visite un peu le site de php.net tu apprendras surement plein de choses :roll:
 

Ezekiel !

Elite
Smart a dit:
Ez3kieL a dit:
sebge2 a dit:
Est-ce que guslinux verrait un incovénient à ce que je l'utilise dans mes scripts ^^ ? Je sais pas encore ou ni comment l'utiliser mais elle va certainement me servir à un moment...
Son code utilise les fonctions de php...
Visite un peu le site de php.net tu apprendras surement plein de choses :roll:
Euh oui je sais que son code utilise les fonctions php...
Mais vu que je n'ai jamais vraiment trouvé le courage de m'intéresser à la librairie GD, le fait de pouvoir profiter du travail d'un autre m'intéresserait.
Et pour php.net ben oui j'y vais régulierement mais bon vu la masse de doc qui sy trouve c'est normal de pas tt connaitre...
 
Statut
N'est pas ouverte pour d'autres réponses.
Haut