Comunidad de diseño web y desarrollo en internet online

mostrar imagenes segun mes (PHP)

Citar            
MensajeEscrito el 16 Dic 2010 07:57 pm
hola chicos arme esta mini funcion para mostrar una imagen de acuerdo al mes

Código ActionScript :

<?php 
            function muestra($periodo) 
            { 
               $imagen[1] = '<img src="img/maestro_mini.jpg"/>'; //aqui kiero hacer una modificacion
               $imagen[2] = '<img src="img/busito.gif"/>'; 
               $imagen[3] = '<img src="img/busito.gif"/>'; 
               $imagen[4] = '<img src="img/busito.gif"/>'; 
               $imagen[5] = '<img src="img/busito.gif"/>'; 
               $imagen[6] = '<img src="img/busito.gif"/>'; 
               $imagen[7] = '<img src="img/busito.gif"/>'; 
               $imagen[8] = '<img src="img/busito.gif"/>'; 
               $imagen[9] = '<img src="img/busito.gif"/>'; 
               $imagen[10] = '<img src="img/busito.gif"/>'; 
               $imagen[11] = '<img src="img/busito.gif"/>'; 
               $imagen[12] = '<img src="img/trineito_mini.jpg"/>'; 
               return "$imagen[$periodo]"; 
            } 
            $periodo = date("m"); 
            ?>    


en la primera linea, la q carga la imagen corespondiente a enero, quiero hacer una modificación cosa que pueda cargar 3 imagenes cn una respectiva duracion de dias cada una por ejemplo, del 1ero de enero al 5 de enero quiero mostrar algo como "Feliz año nuevo", del 6 al 8 = "feliz dia de reyes" y del 8 al final de mes kiero que esté una haciendo alusion a la celebracion que se hace en mi pais por el día del maestro.

estoy apenas aprendiendo php y en clase ns hablaron de la funcion mktime() pero la verdad no entiendo aun muy bn como usarla y no se si es lo que necesito en este caso ¿podrian ayudarme por favor?

Por jakiras

Claber

148 de clabLevel



Genero:Femenino  

firefox
Citar            
MensajeEscrito el 17 Dic 2010 01:48 am
Que tal Jakiras como yo lo veo no necesitas definir una función ni utilizar la función mktime().
Este código que hice te muestra una imagen dependiendo del mes y el día actual lo único que necesitas definir es el nombre de tus imagenes ( mes_consecutivodeimagen.extensión ) en este caso para diciembre el nombre de tus imagenes sería así: 12_1.jpg otra 12_2.jpg y 12_3.jpg

Código PHP :

<?php
$m = date("m");
$d = date("d");
if (date("d") < 5)
   $d=1;
else if (date("d") < 8)
   $d=2;
else
   $d=3;
echo "<img src=\"".$m."_".$d.".jpg\" />";
?>


Espero que te sirva

PS. Pace out!

Por Zcarpa

6 de clabLevel



 

firefox
Citar            
MensajeEscrito el 18 Dic 2010 02:05 pm
gracias por tu pronta respuesta, este código q me facilitas me serviria para el caso de enero, pero el resto de los meses en su mayoria usan la imagen del logo por defecto y hace variaciones en ciertos meses, execto por enero q usa esas 3 imagenes, como podria adaptarlo?

Por jakiras

Claber

148 de clabLevel



Genero:Femenino  

firefox
Citar            
MensajeEscrito el 18 Dic 2010 03:32 pm
puedes implementar una pequeña DB en texto plano
fijate el codigo y estudialo un poco

Código PHP :

<?php
/**
* @author tuadmin
**/
$datos = parse_ini_file ("imagenes.ini");//obtenemos nuestra DB en texto plano
$m = date("m");// retorna el numero de mes en dos digitos ejemplo enero es 01
$d = date("d");//retorna el numero de dia en 2 digitos ejemplo el segundo dia seria 02
$url_imagen_por_defecto = "imagen_por_defecto.gif";// la imagen por defecto
$variable = 'mes_'.$m.'_dia_'.$d;//la forma en la que deben estar las variables
//comprobamos que la variable exista si es asi mostramos la imagen
if(isset($datos[$variable]))
{
   echo '<img src="'.$datos[$variable].'" />'; 
}
else
{
   echo '<img src="'.$url_imagen_por_defecto.'" />';
}

nuestra db en texto plano
imagenes.ini

Código :

mes_01_dia_01="anho_nuevo.gif"
mes_01_dia_06="reyes.gif"
mes_01_dia_08="reyes.gif"
mes_01_dia_12="mi_cumple.gif"
mes_03_dia_24="cumple_de_mi_novia.gif"
;mes_05_dia_03="esto_esta_comentado.gif"

bueno es solo un ejemplo, se podria automatizar y optimizar mas y mejor
ya debes saber como es el formato de un archivo .ini o podrias usar otras cosas como un XML o los archivos en JSON
tienes muchas opciones

Por tuadmin

Claber

598 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 19 Dic 2010 01:56 am
gracias por tu respuesta! ahora bn O.o no se de .ini , me enreda un poco xml y q es un json?? O.o no se mucho de estas cosas apenas estoy aprendiendo php hice esto hace rato, lo probe y me anda bn

Código PHP :


 function muestra($periodo)  
            {  
            $periodo = date("m");
            $d = date("d");
                  if($periodo == 1)
                  {
                     if (date("d") < 4) 
                        $d=1; 
                     else if (date("d") < 8) 
                        $d=2; 
                     else 
                        $d=3; 
                     echo "<img src=\"img/img_".$periodo."_0".$d.".gif\"/>";
                  }
                  else
                  {
                     $imagen[$periodo] = '<img src="img/img_'.$periodo.'.gif"/>';
                  }
             return "$imagen[$periodo]";  
            }  
         echo muestra($periodo);
?>


Por jakiras

Claber

148 de clabLevel



Genero:Femenino  

firefox
Citar            
MensajeEscrito el 19 Dic 2010 03:45 pm

jakiras escribió:

gracias por tu respuesta! ahora bn O.o no se de .ini , me enreda un poco xml y q es un json?? O.o no se mucho de estas cosas apenas estoy aprendiendo php hice esto hace rato, lo probe y me anda bn

bueno por lo visto ya tienes una forma de resolver tu problema solo para aclarar lo que son archivos .ini .xml .json son solamente archivos de texto plano con la peculiaridad de que llevan un formato por ejemplo los de .ini son variables que se separan por un enter o mejor dicho por los caracteres de "\n\r" y la asigacion del valor de una variable es con el simbolo "=" precedido del valor de la misma los que usan este tipo de archivos es WINDOWS puedes ver el contenido de los mismos y fijarte como estan.
Ahora XML es un poco mas complejo pero mejor entendible es un archivo de marcas que tienen un inicio y fin, las paginas web usan las mismas si te fijas tienen marcas como <html></html> <head></head> bueno el punto es que puedes crear algo como

Código XML :

<?xml encoding="UTF-8" version="1.0" ?>
<imagenes>
   <imagen>
      <titulo>mis vagaciones</titulo>
      <url>http://example.com/vacaiones.gif</url>
   </imagen>
   <imagen>
      <titulo>este soy yo</titulo>
      <url>http://web.example.com/yo.png</url>
   </imagen>
</imagenes>

le puedes dar el nombre a las marcas como tu quieras ahora lo de JSON significa JavaScriptObjectNotation
es al forma en que javascript crea por decir "objetos"
es una alternativa a XML para transportar datos ya que su notacion es mas corta por ejemplo tomenos lo anterior en xml y ahora en json con eso ahorras un par de buenos bytes

Código Javascript :

{
   "imagenes": {
      "imagen": [
         {
            "titulo": "mis vagaciones", 
            "url": "http://example.com/vacaiones.gif"
         }, 
         {
            "titulo": "este soy yo", 
            "url": "http://web.example.com/yo.png"
         }
      ]
   }
}

el objeto de esto es que php tiene ya funciones y clases especiales para covnertir estos tipos de archivos en arrays en php u objetos para xml existe SimpleXmlElement el cual convierte todo un archivo XML en arrays lo mismo para Json con json_decode o a la inversa con json_encode para el .ini ahi arriba esta el ejemplo que puse

Por tuadmin

Claber

598 de clabLevel



Genero:Masculino  

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.