UBB.Dev
Posted By: Zarzal Random Image from gallery - 01/17/2019 4:05 PM
There are 2 ways to get a nice random image island box.
The first code will show a random picture and if you click the box it takes you to the gallery which contains the image. Copy & Paste it in a custom island and set the generation time as you like. I use 15 minutes.
PHP Code
/* PHP CODE HERE */
$query = "
SELECT
`POST_ID`, `FILE_DIR`, `FILE_NAME`
FROM
`
{$config['TABLE_PREFIX']}FILES`
WHERE
`FILE_DIR`<>''
ORDER BY
rand()
LIMIT
1
"
;
$sth = $dbh->do_query($query,__LINE__,__FILE__);
list(
$postId,$fDir,$fName) = $dbh->fetch_array($sth);

/* BODY HERE */
$body = <<<EOF
<div class="p2" style="height:180px;overflow:hidden;position:relative;width:180px;display:inline-block;">
<a href="
{$config['BASE_URL']}/ubbthreads.php?ubb=showgallery&Number=$postId">
<img src="
{$config['BASE_URL']}/gallery/$fDir/medium/$fName" alt="" title="" class="p2 cp oi" style="position:absolute;left:-100%;right:-100%;top:-100%;bottom:-100%;margin:auto;min-height:100%;height:180px;">
</a>
</div>
EOF;


This second code is nearly identical. But if you click the image in the box it open the image in a lightbox and dont take you to the gallery.
PHP Code
/* PHP CODE HERE */
$query = "
SELECT
`POST_ID`, `FILE_DIR`, `FILE_NAME` , `FILE_DESCRIPTION`
FROM
`
{$config['TABLE_PREFIX']}FILES`
WHERE
`FILE_DIR`<>''
ORDER BY
rand()
LIMIT
1
"
;
$sth = $dbh->do_query($query,__LINE__,__FILE__);
list(
$postId,$fDir,$fName,$fDesc) = $dbh->fetch_array($sth);

/* BODY HERE */
$body = <<<EOF
<div class="p2" style="height:180px;overflow:hidden;position:relative;width:180px;display:inline-block;">
<a href="
{$config['BASE_URL']}/gallery/$fDir/full/$fName" data-lightbox="gallery" data-title="$fDesc">
<img src="
{$config['BASE_URL']}/gallery/$fDir/medium/$fName" alt="" title="" class="p2 cp oi" style="position:absolute;left:-100%;right:-100%;top:-100%;bottom:-100%;margin:auto;min-height:100%;height:180px;">
</a>
</div>
EOF;

© UBB.Developers