Random Images

A perfect place for code snippets to small to be a MOD or a library.
Or for examples on how to use our libraries.
Post Reply
Elglobo
Past Contributor
Past Contributor
Posts: 119
Joined: 15 Jul 2008, 19:42

Random Images

Post by Elglobo »

This post was originally posted by Kenny at 6 String MODs.
Can be used on any html or php page - doesn't need phpBB, but quite good for randomising header images or an advertisement block :)

Code: Select all

<?php
/*
&nbsp;&nbsp;&nbsp;&nbsp;AUTOMATIC&nbsp;IMAGE&nbsp;ROTATOR
&nbsp;&nbsp;&nbsp;&nbsp;Version&nbsp;2.2&nbsp;-&nbsp;December&nbsp;4,&nbsp;2003
&nbsp;&nbsp;&nbsp;&nbsp;Copyright&nbsp;(c)&nbsp;2002-2003&nbsp;Dan&nbsp;P.&nbsp;Benjamin,&nbsp;Automatic,&nbsp;Ltd.
&nbsp;&nbsp;&nbsp;&nbsp;All&nbsp;Rights&nbsp;Reserved.

&nbsp;&nbsp;&nbsp;&nbsp;http://www.hiveware.com/imagerotator.php
&nbsp;&nbsp;&nbsp;&nbsp;http://www.automaticlabs.com/


&nbsp;&nbsp;&nbsp;&nbsp;DISCLAIMER
&nbsp;&nbsp;&nbsp;&nbsp;Automatic,&nbsp;Ltd.&nbsp;makes&nbsp;no&nbsp;representations&nbsp;or&nbsp;warranties&nbsp;about
&nbsp;&nbsp;&nbsp;&nbsp;the&nbsp;suitability&nbsp;of&nbsp;the&nbsp;software,&nbsp;either&nbsp;express&nbsp;or
&nbsp;&nbsp;&nbsp;&nbsp;implied,&nbsp;including&nbsp;but&nbsp;not&nbsp;limited&nbsp;to&nbsp;the&nbsp;implied
&nbsp;&nbsp;&nbsp;&nbsp;warranties&nbsp;of&nbsp;merchantability,&nbsp;fitness&nbsp;for&nbsp;a&nbsp;particular
&nbsp;&nbsp;&nbsp;&nbsp;purpose,&nbsp;or&nbsp;non-infringement.&nbsp;Dan&nbsp;P.&nbsp;Benjamin&nbsp;and&nbsp;Automatic,&nbsp;Ltd.
&nbsp;&nbsp;&nbsp;&nbsp;shall&nbsp;not&nbsp;be&nbsp;liable&nbsp;for&nbsp;any&nbsp;damages&nbsp;suffered&nbsp;by&nbsp;licensee
&nbsp;&nbsp;&nbsp;&nbsp;as&nbsp;a&nbsp;result&nbsp;of&nbsp;using,&nbsp;modifying&nbsp;or&nbsp;distributing&nbsp;this
&nbsp;&nbsp;&nbsp;&nbsp;software&nbsp;or&nbsp;its&nbsp;derivatives.


&nbsp;&nbsp;&nbsp;&nbsp;ABOUT
&nbsp;&nbsp;&nbsp;&nbsp;This&nbsp;PHP&nbsp;script&nbsp;will&nbsp;randomly&nbsp;select&nbsp;an&nbsp;image&nbsp;file&nbsp;from&nbsp;a
&nbsp;&nbsp;&nbsp;&nbsp;folder&nbsp;of&nbsp;images&nbsp;on&nbsp;your&nbsp;webserver.&nbsp;&nbsp;You&nbsp;can&nbsp;then&nbsp;link&nbsp;to&nbsp;it
&nbsp;&nbsp;&nbsp;&nbsp;as&nbsp;you&nbsp;would&nbsp;any&nbsp;standard&nbsp;image&nbsp;file&nbsp;and&nbsp;you'll&nbsp;see&nbsp;a&nbsp;random
&nbsp;&nbsp;&nbsp;&nbsp;image&nbsp;each&nbsp;time&nbsp;you&nbsp;reload.

&nbsp;&nbsp;&nbsp;&nbsp;When&nbsp;you&nbsp;want&nbsp;to&nbsp;add&nbsp;or&nbsp;remove&nbsp;images&nbsp;from&nbsp;the&nbsp;rotation-pool,
&nbsp;&nbsp;&nbsp;&nbsp;just&nbsp;add&nbsp;or&nbsp;remove&nbsp;them&nbsp;from&nbsp;the&nbsp;image&nbsp;rotation&nbsp;folder.


&nbsp;&nbsp;&nbsp;&nbsp;VERSION&nbsp;CHANGES
&nbsp;&nbsp;&nbsp;&nbsp;Version&nbsp;1.0
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Release&nbsp;version

&nbsp;&nbsp;&nbsp;&nbsp;Version&nbsp;1.5
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Tweaked&nbsp;a&nbsp;few&nbsp;boring&nbsp;bugs

&nbsp;&nbsp;&nbsp;&nbsp;Version&nbsp;2.0
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Complete&nbsp;rewrite&nbsp;from&nbsp;the&nbsp;ground-up
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Made&nbsp;it&nbsp;clearer&nbsp;where&nbsp;to&nbsp;make&nbsp;modifications
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Made&nbsp;it&nbsp;easier&nbsp;to&nbsp;specify/change&nbsp;the&nbsp;rotation-folder
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Made&nbsp;it&nbsp;easier&nbsp;to&nbsp;specify/change&nbsp;supported&nbsp;image&nbsp;types
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Wrote&nbsp;better&nbsp;instructions&nbsp;and&nbsp;info&nbsp;(you're&nbsp;them&nbsp;reading&nbsp;now)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Significant&nbsp;speed&nbsp;improvements
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;More&nbsp;error&nbsp;checking
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Cleaner&nbsp;code&nbsp;(albeit&nbsp;more&nbsp;PHP-specific)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Better/faster&nbsp;random&nbsp;number&nbsp;generation&nbsp;and&nbsp;file-type&nbsp;parsing
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Added&nbsp;a&nbsp;feature&nbsp;where&nbsp;the&nbsp;image&nbsp;to&nbsp;display&nbsp;can&nbsp;be&nbsp;specified
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Added&nbsp;a&nbsp;cool&nbsp;feature&nbsp;where,&nbsp;if&nbsp;an&nbsp;error&nbsp;occurs&nbsp;(such&nbsp;as&nbsp;no
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;images&nbsp;being&nbsp;found&nbsp;in&nbsp;the&nbsp;specified&nbsp;folder)&nbsp;*and*&nbsp;you're
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lucky&nbsp;enough&nbsp;to&nbsp;have&nbsp;the&nbsp;GD&nbsp;libraries&nbsp;compiled&nbsp;into&nbsp;PHP&nbsp;on
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;your&nbsp;webserver,&nbsp;we&nbsp;generate&nbsp;a&nbsp;replacement&nbsp;"error&nbsp;image"&nbsp;on
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;the&nbsp;fly.

&nbsp;&nbsp;&nbsp;&nbsp;Version&nbsp;2.1
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Updated&nbsp;a&nbsp;potential&nbsp;security&nbsp;flaw&nbsp;when&nbsp;value-matching
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;filenames

&nbsp;&nbsp;&nbsp;&nbsp;Version&nbsp;2.2
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Updated&nbsp;a&nbsp;few&nbsp;more&nbsp;potential&nbsp;security&nbsp;issues
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Optimized&nbsp;the&nbsp;code&nbsp;a&nbsp;bit.
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;Expanded&nbsp;the&nbsp;doc&nbsp;for&nbsp;adding&nbsp;new&nbsp;mime/image&nbsp;types.

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Thanks&nbsp;to&nbsp;faithful&nbsp;ALA&nbsp;reader&nbsp;Justin&nbsp;Greer&nbsp;for
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lots&nbsp;of&nbsp;good&nbsp;tips&nbsp;and&nbsp;solid&nbsp;code&nbsp;contribution!


&nbsp;&nbsp;&nbsp;&nbsp;INSTRUCTIONS
&nbsp;&nbsp;&nbsp;&nbsp;1.&nbsp;Modify&nbsp;the&nbsp;$folder&nbsp;setting&nbsp;in&nbsp;the&nbsp;configuration&nbsp;section&nbsp;below.
&nbsp;&nbsp;&nbsp;&nbsp;2.&nbsp;Add&nbsp;image&nbsp;types&nbsp;if&nbsp;needed&nbsp;(most&nbsp;users&nbsp;can&nbsp;ignore&nbsp;that&nbsp;part).
&nbsp;&nbsp;&nbsp;&nbsp;3.&nbsp;Upload&nbsp;this&nbsp;file&nbsp;(rotate.php)&nbsp;to&nbsp;your&nbsp;webserver.&nbsp;&nbsp;I&nbsp;recommend
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;uploading&nbsp;it&nbsp;to&nbsp;the&nbsp;same&nbsp;folder&nbsp;as&nbsp;your&nbsp;images.
&nbsp;&nbsp;&nbsp;&nbsp;4.&nbsp;Link&nbsp;to&nbsp;the&nbsp;file&nbsp;as&nbsp;you&nbsp;would&nbsp;any&nbsp;normal&nbsp;image&nbsp;file,&nbsp;like&nbsp;this:

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img&nbsp;src="http://example.com/rotate.php">

&nbsp;&nbsp;&nbsp;&nbsp;5.&nbsp;You&nbsp;can&nbsp;also&nbsp;specify&nbsp;the&nbsp;image&nbsp;to&nbsp;display&nbsp;like&nbsp;this:

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img&nbsp;src="http://example.com/rotate.php?img=gorilla.jpg">

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This&nbsp;would&nbsp;specify&nbsp;that&nbsp;an&nbsp;image&nbsp;named&nbsp;"gorilla.jpg"&nbsp;located
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;in&nbsp;the&nbsp;image-rotation&nbsp;folder&nbsp;should&nbsp;be&nbsp;displayed.

&nbsp;&nbsp;&nbsp;&nbsp;That's&nbsp;it,&nbsp;you're&nbsp;done.
*/


/*&nbsp;-------------------------&nbsp;CONFIGURATION&nbsp;-----------------------

&nbsp;&nbsp;&nbsp;&nbsp;Set&nbsp;$folder&nbsp;to&nbsp;the&nbsp;full&nbsp;path&nbsp;to&nbsp;the&nbsp;location&nbsp;of&nbsp;your&nbsp;images.
&nbsp;&nbsp;&nbsp;&nbsp;For&nbsp;example:&nbsp;$folder&nbsp;=&nbsp;'/user/me/example.com/images/';
&nbsp;&nbsp;&nbsp;&nbsp;If&nbsp;the&nbsp;rotate.php&nbsp;file&nbsp;will&nbsp;be&nbsp;in&nbsp;the&nbsp;same&nbsp;folder&nbsp;as&nbsp;your
&nbsp;&nbsp;&nbsp;&nbsp;images&nbsp;then&nbsp;you&nbsp;should&nbsp;leave&nbsp;it&nbsp;set&nbsp;to&nbsp;$folder&nbsp;=&nbsp;'.';
*/

&nbsp;&nbsp;&nbsp;&nbsp;$folder&nbsp;=&nbsp;'.';

/*&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;Most&nbsp;users&nbsp;can&nbsp;safely&nbsp;ignore&nbsp;this&nbsp;part.&nbsp;&nbsp;If&nbsp;you're&nbsp;a&nbsp;programmer,
&nbsp;&nbsp;&nbsp;&nbsp;keep&nbsp;reading,&nbsp;if&nbsp;not,&nbsp;you're&nbsp;done.&nbsp;&nbsp;Go&nbsp;get&nbsp;some&nbsp;coffee.

&nbsp;&nbsp;&nbsp;&nbsp;If&nbsp;you'd&nbsp;like&nbsp;to&nbsp;enable&nbsp;additional&nbsp;image&nbsp;types&nbsp;other&nbsp;than
&nbsp;&nbsp;&nbsp;&nbsp;gif,&nbsp;jpg,&nbsp;and&nbsp;png,&nbsp;add&nbsp;a&nbsp;duplicate&nbsp;line&nbsp;to&nbsp;the&nbsp;section&nbsp;below
&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;the&nbsp;new&nbsp;image&nbsp;type.
&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;Add&nbsp;the&nbsp;new&nbsp;file-type,&nbsp;single-quoted,&nbsp;inside&nbsp;brackets.
&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;Add&nbsp;the&nbsp;mime-type&nbsp;to&nbsp;be&nbsp;sent&nbsp;to&nbsp;the&nbsp;browser,&nbsp;also&nbsp;single-quoted,
&nbsp;&nbsp;&nbsp;&nbsp;after&nbsp;the&nbsp;equal&nbsp;sign.
&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;For&nbsp;example:
&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;PDF&nbsp;Files:

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$extList['pdf']&nbsp;=&nbsp;'application/pdf';
&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;CSS&nbsp;Files:

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$extList['css']&nbsp;=&nbsp;'text/css';

&nbsp;&nbsp;&nbsp;&nbsp;You&nbsp;can&nbsp;even&nbsp;serve&nbsp;up&nbsp;random&nbsp;HTML&nbsp;files:

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$extList['html']&nbsp;=&nbsp;'text/html';
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$extList['htm']&nbsp;=&nbsp;'text/html';

&nbsp;&nbsp;&nbsp;&nbsp;Just&nbsp;be&nbsp;sure&nbsp;your&nbsp;mime-type&nbsp;definition&nbsp;is&nbsp;correct!

*/

&nbsp;&nbsp;&nbsp;&nbsp;$extList&nbsp;=&nbsp;array();
&
nbsp;&nbsp;&nbsp;&nbsp;$extList['gif']&nbsp;=&nbsp;'image/gif';
&
nbsp;&nbsp;&nbsp;&nbsp;$extList['jpg']&nbsp;=&nbsp;'image/jpeg';
&
nbsp;&nbsp;&nbsp;&nbsp;$extList['jpeg']&nbsp;=&nbsp;'image/jpeg';
&
nbsp;&nbsp;&nbsp;&nbsp;$extList['png']&nbsp;=&nbsp;'image/png';
&
nbsp;&nbsp;&nbsp;&nbsp;

//&nbsp;You&nbsp;don't&nbsp;need&nbsp;to&nbsp;edit&nbsp;anything&nbsp;after&nbsp;this&nbsp;point.


//&nbsp;---------------------&nbsp;END&nbsp;CONFIGURATION&nbsp;-----------------------

$img&nbsp;=&nbsp;null;

if&
nbsp;(substr($folder,-1)&nbsp;!=&nbsp;'/')&nbsp;{
&
nbsp;&nbsp;&nbsp;&nbsp;$folder&nbsp;=&nbsp;$folder.'/';
}

if&
nbsp;(isset($_GET['img']))&nbsp;{
&
nbsp;&nbsp;&nbsp;&nbsp;$imageInfo&nbsp;=&nbsp;pathinfo($_GET['img']);
&
nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(
&
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;isset(&nbsp;$extList[&nbsp;strtolower(&nbsp;$imageInfo['extension']&nbsp;)&nbsp;]&nbsp;)&nbsp;&&
&
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;file_exists(&nbsp;$folder.$imageInfo['basename']&nbsp;)
&
nbsp;&nbsp;&nbsp;&nbsp;)&nbsp;{
&
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$img&nbsp;=&nbsp;$folder.$imageInfo['basename'];
&
nbsp;&nbsp;&nbsp;&nbsp;}
}&
nbsp;else&nbsp;{
&
nbsp;&nbsp;&nbsp;&nbsp;$fileList&nbsp;=&nbsp;array();
&
nbsp;&nbsp;&nbsp;&nbsp;$handle&nbsp;=&nbsp;opendir($folder);
&
nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(&nbsp;false&nbsp;!==&nbsp;(&nbsp;$file&nbsp;=&nbsp;readdir($handle)&nbsp;)&nbsp;)&nbsp;{
&
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$file_info&nbsp;=&nbsp;pathinfo($file);
&
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(
&
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;isset(&nbsp;$extList[&nbsp;strtolower(&nbsp;$file_info['extension']&nbsp;)&nbsp;]&nbsp;)
&
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)&nbsp;{
&
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$fileList[]&nbsp;=&nbsp;$file;
&
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&
nbsp;&nbsp;&nbsp;&nbsp;}
&
nbsp;&nbsp;&nbsp;&nbsp;closedir($handle);

&
nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(count($fileList)&nbsp;>&nbsp;0)&nbsp;{
&
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$imageNumber&nbsp;=&nbsp;time()&nbsp;%&nbsp;count($fileList);
&
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$img&nbsp;=&nbsp;$folder.$fileList[$imageNumber];
&
nbsp;&nbsp;&nbsp;&nbsp;}
}

if&
nbsp;($img!=null)&nbsp;{
&
nbsp;&nbsp;&nbsp;&nbsp;$imageInfo&nbsp;=&nbsp;pathinfo($img);
&
nbsp;&nbsp;&nbsp;&nbsp;$contentType&nbsp;=&nbsp;'Content-type:&nbsp;'.$extList[&nbsp;$imageInfo['extension']&nbsp;];
&
nbsp;&nbsp;&nbsp;&nbsp;header&nbsp;($contentType);
&
nbsp;&nbsp;&nbsp;&nbsp;readfile($img);
}&
nbsp;else&nbsp;{
&
nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(&nbsp;function_exists('imagecreate')&nbsp;)&nbsp;{
&
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;header&nbsp;("Content-type:&nbsp;image/png");
&
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$im&nbsp;=&nbsp;@imagecreate&nbsp;(100,&nbsp;100)
&
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;or&nbsp;die&nbsp;("Cannot&nbsp;initialize&nbsp;new&nbsp;GD&nbsp;image&nbsp;stream");
&
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$background_color&nbsp;=&nbsp;imagecolorallocate&nbsp;($im,&nbsp;255,&nbsp;255,&nbsp;255);
&
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$text_color&nbsp;=&nbsp;imagecolorallocate&nbsp;($im,&nbsp;0,0,0);
&
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;imagestring&nbsp;($im,&nbsp;2,&nbsp;5,&nbsp;5,&nbsp;&nbsp;"IMAGE&nbsp;ERROR",&nbsp;$text_color);
&
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;imagepng&nbsp;($im);
&
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;imagedestroy($im);
&
nbsp;&nbsp;&nbsp;&nbsp;}
}

?>

Save the code to the folder where your images will be saved (easier to do it this way).
Now, in the template file, simply set the SRC of the image to the php file.
So e.g. say you call the php file Random.php - your random image code might be something like:

Code: Select all

<div align="center">
<img src="images/random/Random.php" width="400" height="100" alt="Alt picture code" title="Random Image" /></a>
</div>

You can remove the width/height tags so the image isn't confined to certain dimensions.
And you could use something like $alt or $title for the alt/title tags - where in your main php file (index.php, portal.php - or where you'll have the block displayed) the $vars will output the image name or something.
phpBB-Services.com: L'hébergement et l'assistance de votre forum phpBB en toute tranquillité.

Myff.fr - My First forum, créer votre forum phpBB3 facilement !
themission
New member
New member
Posts: 44
Joined: 06 Jul 2011, 06:55
Location: Devon UK
Contact:

Re: Random Images

Post by themission »

Would this work in a sidebar using phpBB-3.1.2 to show a random image every time page is refreshed ? If yes how ? :lol:
steve
Master of posting
Master of posting
Posts: 1213
Joined: 12 Jul 2009, 19:14
Location: uk
Contact:

Re: Random Images

Post by steve »

Loads of my styles used this iirc ,google it !
Steve ©
Post Reply