Ayuda para mostrar imagenes aleatorias en página de inicio

  • Autor Autor sienteasturias
  • Fecha de inicio Fecha de inicio
S

sienteasturias

Gamma
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Hola buenas!!!
Tengo el siguiente código de una aplicación que muestra un background o imagen de fondo en la página de inicio y me gustaría ponerlo de tal manera que por ejemplo cada vez que se acceda mostrase una imagen aleatoria de una carpeta donde meteria las diferentes imagenes que se pudiesen mostrar...
El código sería el siguiente:
PHP:
<?php
use Core\Http\Url;
$request = $this->getRequest();
$base_url = $request->getBaseUrl();
$background = NULL;
$video = \Base\Config::get('welcome_video') ?: NULL;

if(\Base\Config::get('config_welcome_image') && file_exists(BASE_PATH . '/uploads/data/' . \Base\Config::get('config_welcome_image')))
	$background = $request->getBaseUrl() . 'uploads/data/' . \Base\Config::get('config_welcome_image');

if($background)
	$background = ' style="background-image: url(\'' . $background . '\')"';

$document = $this->getComponent('document');
$document->reset();
$document->addCssFile($base_url . 'assets/css/main.css');
$document->addScriptFile($base_url . 'assets/js/jquery-1.11.1.min.js');
$document->addScriptFile($base_url . 'assets/js/jquery.magnific-popup.min.js');
$document->addScriptFile($base_url . 'assets/js/jquery.history.js');
$document->addScriptFile($base_url . 'assets/js/Model.js');
$this->getModule('Welcome')->addScript();
?>
<!doctype html>
<html>
<head>
	<meta charset="utf-8" />
	<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1.0, user-scalable=no" />

	<title><?php echo \Meta\Meta::getGlobal('meta_title') ? \Meta\Meta::getGlobal('meta_title') : \Meta\Meta::getGlobal('title') ?></title>
</head>

<body class="welcome-cover"<?php echo $background ?>>


Alguién me puede ayudar con esto???? Muchas gracias de antemano 🙂
 
Lo que se me ocurre, es que definas un array con el nombre de todas las imagenes que estarias usando de background y seleccionar una de manera aleatoria con la funcion array_rand() de php. :encouragement:
 
si es buena idea lo de santiago131
 
Gracias!!! voy a ver si consigo algo.... aunque los conocimientos son escasos 🙂
 
Gracias!!! voy a ver si consigo algo.... aunque los conocimientos son escasos 🙂

es algo facil 🙂 a la imagenes solo ponerle numeros del 0 a tal y tal.

entonces con php rando pone que genere un numero del 0 a tal y listo, asi lo hacia yo

aca te dejo el codigo

PHP:
<?php
  $d=mt_rand(0,1);
  echo $d ;
?>

esto genera un numero del 0 al 1

aca un ejemplo de como yo lo uso

PHP:
<div class="pen-header" style="background-image: url(<?=$url_site?>/include/themes/<?=$theme?>/img/banner0<?php
  $d=mt_rand(0,1);
  echo $d ;
?>.jpg)">

OJO: la imagenes debe de tener el 0 comenzado ejemplo tengo una carpeta llamada Fondos

y la imagenes son 4 entonces yo le pongo

fondo00
fondo01
fondo02
fondo03
fondo04

y entonces el codigo seria

PHP:
<?php
  $d=mt_rand(0,4);
  echo $d ;
?>
 
Última edición:
Atrás
Arriba