Foros del Web » Programando para Internet » PHP »

BANNER ALEATORIO SCRIPT Ayuda plzzz

Estas en el tema de BANNER ALEATORIO SCRIPT Ayuda plzzz en el foro de PHP en Foros del Web. Hola, necesito modificar el siguiente script: --- Nta: Este script funciona solo para imagenes .GIF pero quiero que tambien sirva para ARCHIVOS .SWF (Flash) --- ...
  #1 (permalink)  
Antiguo 13/08/2005, 05:04
 
Fecha de Ingreso: mayo-2005
Mensajes: 148
Antigüedad: 18 años, 11 meses
Puntos: 0
BANNER ALEATORIO SCRIPT Ayuda plzzz

Hola, necesito modificar el siguiente script:

---

Nta: Este script funciona solo para imagenes .GIF pero quiero que tambien sirva para ARCHIVOS .SWF (Flash)

---

Código:
<?
$numbanners = 3 //numero de banners que se rotarán
$random = rand(1,$numbanners);
$img = array();
$url = array();
$txt = array();

$img[1] = "archivos/banner1.gif";
$url[1] = "http://www.enlace1.com";
$txt[1] = "Visita el enlace del banner 1";

$img[2] = "archivos/banner2.gif";
$url[2] = "http://www.enlace2.com";
$txt[2] = "Visita el enlace del banner 2";

$img[3] = "archivos/banner3.gif";
$url[3] = "http://www.enlace3.com";
$txt[3] = "Visita el enlace del banner 3";

echo "<a href='$url[$random]' target='_blank'><img src='$img[random]' alt='$txt[random]' border='0'></a>";
?>
---

Quiero conservar este mismo script, estilo, pero.. agregar algo para que se puedan visualizar archivos flash.

Como puedo hacer???

Desde ya, muchas gracias...
  #2 (permalink)  
Antiguo 13/08/2005, 13:11
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Antes que nada un par de cosas:
1.- para agregar archivos flash tenés que usar <object>.
2.- <a> es un elemento de línea y <object> un elemento de bloque, por lo que no se puede poner un <object> dentro de un <a> (según html 4).
3.- dado esto, el enlace deberá estar en el mismo swf.

Así que lo que podés hacer es un if que controle la extensión del archivo:

Código PHP:
$tipo explode("."$img[$random]);
$ext $tipo[sizeof($tipo) -1];

if ( 
$ext == "swf" ) {
 echo 
"<object data=\"".$img[$random]."\" type=\"application/x-shockwave-flash\">".$txt[$random]."</object>";
}
else {            
# $ext = "gif"
 
echo "<a href=\"".$url[$random]."\"><img src=\"".$img[$random]."\" alt=\"".$txt[$random]."\"></a>";

Espero que te sirva.
Saludos.
  #3 (permalink)  
Antiguo 13/08/2005, 13:34
 
Fecha de Ingreso: febrero-2005
Ubicación: Buenos Aires
Mensajes: 220
Antigüedad: 19 años, 2 meses
Puntos: 0
Cita:
Iniciado por alvlin
el enlace deberá estar en el mismo swf.
Hola amigo...

Aver si puedes darme una mano con eso... A que te refieres, si es que me lo puedes aclarar un poco..

Estare por aca,

Gracias!
__________________
Aprender trae dolores de cabeza...Enseñar, satisfacción :pensando:
  #4 (permalink)  
Antiguo 13/08/2005, 13:39
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Simplemente quiero decir que no puedes hacer
<a><object></object></a>, porque no estarías respetando la normativa html.
Los archivos flash tienen la capacidad de contener enlaces, en esto específicamente no te puedo ayudar porque no sé cómo hacerlo, pero sí sé que se puede.
  #5 (permalink)  
Antiguo 13/08/2005, 13:40
 
Fecha de Ingreso: mayo-2005
Mensajes: 148
Antigüedad: 18 años, 11 meses
Puntos: 0
Claro dices que el propio archivo .swf debe llevar la url deseada por defecto. supongo que eso queres decir..

Es decir.. qeu esto funcionaria asi.. en caso de que sea extension gif, trabajaria la funcion el primer scriopt que puse antes, y el otro en caso de que sea flash (.swf)

Ahora eso mismo que has puesto.. como lo incorporo al script quie puse de muestra??

Aun asi muchisimas gracias por responder!
  #6 (permalink)  
Antiguo 13/08/2005, 13:46
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
pos lo pones antes del "echo".
Ahora que lo pienso, puedes agregar una variable $ext a la matriz misma y con eso eliminar las dos primeras líneas de lo que yo escribí. Pero eso es tu decisión.

Saludos.
  #7 (permalink)  
Antiguo 13/08/2005, 13:47
 
Fecha de Ingreso: febrero-2005
Ubicación: Buenos Aires
Mensajes: 220
Antigüedad: 19 años, 2 meses
Puntos: 0
Ok ok.. copiado!

Gracias compas..
__________________
Aprender trae dolores de cabeza...Enseñar, satisfacción :pensando:
  #8 (permalink)  
Antiguo 13/08/2005, 19:34
 
Fecha de Ingreso: mayo-2005
Mensajes: 148
Antigüedad: 18 años, 11 meses
Puntos: 0
Hey muchisimas gracias por la ayuda, en serio.

Sabes tengo un problema al probar el script.. el caso es que primero probandol de la manera normal (SOLO GIF) da este error

Código:
Parse error, unexpected T_VARIABLE in (direccion donde ese encuentra el archivo.php) on line 3
Revisando el script, la linea 3 lleva esto..

Código:
$random = rand(1,$numbanners);
Luego probe con el script que me has modificado para que visualize tambien archivos flash y dio el mismo error..

A que se debe???
  #9 (permalink)  
Antiguo 13/08/2005, 20:03
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 7 meses
Puntos: 41
Hola:
El error está en la línea anterior. Falta el punto y coma ";".
$numbanners = 3;

Saludos
  #10 (permalink)  
Antiguo 14/08/2005, 06:54
 
Fecha de Ingreso: mayo-2005
Mensajes: 148
Antigüedad: 18 años, 11 meses
Puntos: 0
Hey muchisimas gracias!

Execelente Comunidad!

---

POR ULTIMO, el script ya funciona muy bien, pero aun asi las extensiones .swf (flash) no se muestra, es decir, que al tocar el banner3.swf se muestra un recuadro todo blanco (en ves de mostrar el banner animado de una medida ...x...

Extension GIF: Perfecto

Extension SWF: Problemas

---

De momento el script esta formado asi:

Código:
<?php
$numbanners = 3; //numero de banners que se rotarán
$random = rand(1,$numbanners);
$img = array();
$url = array();
$txt = array();

$img[1] = "banner1.gif";
$url[1] = "http://www.banner-primero.com";
$txt[1] = "Visita el enlace del banner 1";

$img[2] = "banner2.gif";
$url[2] = "http://www.banner-segundo.com";
$txt[2] = "Visita el enlace del banner 2";

$img[3] = "banner3.swf";
$url[3] = "http://www.banner-tercero.com";
$txt[3] = "Visita el enlace del banner 3";

$tipo = explode(".", $img[$random]); 
$ext = $tipo[sizeof($tipo) -1]; 

if ( $ext == "swf" ) { 
echo "<object data=\"".$img[$random]."\" type=\"application/x-shockwave-flash\">".$txt[$random]."</object>"; 
} 
else { # $ext = "gif" 
echo "<a href=\"".$url[$random]."\"><img src=\"".$img[$random]."\" alt=\"".$txt[$random]."\"></a>"; 
}
?>
---

Por cierto dos detalles que me gustaria corregir/agregar..1) es que no se mostrara el borde (colorido) de los banner (borde "0") y 2) que al clickear sobre el banner se abra una nueva ventana, que no sea en la misma. En que parte del script o que puedo hacer para corregir/agregar esos dos detalles??

Desde ya, muchisimas gracias por la colaboracion

Última edición por zuche; 14/08/2005 a las 07:03
  #11 (permalink)  
Antiguo 14/08/2005, 09:10
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
pos nada zuche, para lo primero al echo le agregas id="banner" y luego en el estilo
#banner { border:0px; }.

Y para lo segundo le pones una función javascript en onclick o target="_blank" al enlace, como te parezca mejor.


Saludos.
  #12 (permalink)  
Antiguo 16/08/2005, 17:13
 
Fecha de Ingreso: agosto-2005
Mensajes: 4
Antigüedad: 18 años, 8 meses
Puntos: 0
como hago para que ese codigo quede en un solo archivo y lo llame desde una pagina y muestre el resultado (el banner) yo se que debo usar el (include("/kitbanner.php")) pero no se como y cuales son los parametros estoy perdido y necesito ponerlo en el lugar que yo quiera
  #13 (permalink)  
Antiguo 16/08/2005, 17:53
 
Fecha de Ingreso: agosto-2005
Mensajes: 4
Antigüedad: 18 años, 8 meses
Puntos: 0
ok, yo mismo lo resolvi era facil

pero como le digo que el archivo a buscar esta en una sola carpeta

le coloco

include("/bannner/kitbanner.php");

para que lo busque en la raiz del directorio pero no lo hace, entonces

tengo q colocarlo asi
include("kitbanner.php");

y si funciona pero siempre y cuando coloque el archivo en el mismo directorio

si tengo mas de 30 directorios tengo que colocarlo en todos lados cuando lo modifique?

claro lo coloque asi y si funciona pero debe haber otra forma

include("http://www.sitio.com/bannner/kitbanner.php");
esa es la unica forma?
  #14 (permalink)  
Antiguo 16/08/2005, 17:57
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
Dale una ruta absoluta:
Código PHP:
include("http://www.misitio.com/carpetas/archivo.php"); 
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #15 (permalink)  
Antiguo 17/08/2005, 13:29
 
Fecha de Ingreso: agosto-2005
Mensajes: 4
Antigüedad: 18 años, 8 meses
Puntos: 0
eres demasiado inteligente que me respondes con mi propia pregunta ya se que puedo hacer eso
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:59.