Foros del Web » Programando para Internet » Javascript »

A Quien Pueda Interesar: Leer Desde Archivos 2

Estas en el tema de A Quien Pueda Interesar: Leer Desde Archivos 2 en el foro de Javascript en Foros del Web. Hola!, Este Script Lee La Informacion De Los Banners Desde Un TXT Y Muestra Uno Aleatoriamente. Los Datos Que Lee: URL = Url A La ...
  #1 (permalink)  
Antiguo 19/04/2002, 15:58
 
Fecha de Ingreso: julio-2001
Ubicación: Internet
Mensajes: 1.690
Antigüedad: 22 años, 9 meses
Puntos: 1
A Quien Pueda Interesar: Leer Desde Archivos 2

Hola!,

Este Script Lee La Informacion De Los Banners Desde Un TXT Y Muestra Uno Aleatoriamente.

Los Datos Que Lee:

URL = Url A La Cual Dirigirse
TARGET= El Target, Si Se Trata De Una Ventana, Frame, De Lo Contrario Ponga "self"
IMG = La Url De La Imagen Del Banner
ALT = Define El Texto Que Quiere Aparesca Cuando Se Ubique El Puntero Del Mouse Sobre El Banner

Primero El Script Luego La Explicacion:

<HTML>
<HEAD>
<TITLE>
JLMNetwork.com - Rotacion Banners Desde Archivos TXT - Por Jorge Luis Martinez
</TITLE>

<SCRIPT LANGUAGE="javascript">
<!--Rotacion Banners Desde Archivos TXT - Por Jorge Luis Martinez//-->
<!--JLMNetwork.com//-->

function mostrarBanner()
{
var maximo = Banners.recordset.recordCount;
var i = 0;
var urlBanner = new Array(maximo);
var imgBanner = new Array(maximo);
var targetBanner = new Array(maximo);
var altBanner = new Array(maximo);

while(!Banners.recordset.eof)
{
urlBanner[I] = new String(Banners.recordset.fields("URL"));
imgBanner[i] = new String(Banners.recordset.fields("IMG"));
targetBanner[i] = new String(Banners.recordset.fields("TARGET" ));
altBanner[i] = new String(Banners.recordset.fields("ALT"));
Banners.recordset.moveNext();
i++;
}
var cual = Math.floor(Math.random() * maximo);
var codigo = '<A HREF="'+urlBanner[cual]+'" TARGET="'+targetBanner[cual]+'"><IMG SRC="'+imgBanner[cual]+'" ALT="'+altBanner[cual]+'" BORDER=0></A>';
banner.innerHTML = codigo;
}

</SCRIPT>

</HEAD>
<BODY>

<SPAN ID="banner">
</SPAN>


<OBJECT ID="Banners" CLASSID="clsid:333C7BC4-460F-11D0-BC04-0080C7055A83" ondatasetcomplete="mostrarBanner()">
<PARAM NAME="DataURL" Value="Banners.txt">
<PARAM NAME="UseHeader" Value="true">
<PARAM NAME="FieldDelim" VALUE="|">
</OBJECT>


</BODY>
</HTML>

Y El Archivo Banners.txt Esta Compuesto Asi:

URL|IMG|TARGET|ALT
http://www.google.com/|01.gif|_blank|Visita Google.com
http://www.yahoo.com/|02.gif|self|Visita Yahoo.com
http://www.forosdelweb.com/|03.gif|otra|Visita ForosDelWeb.com
http://www.altavista.com/|04.gif|self|Visita Altavista.com

Como Ven, Utilizo El Separador: "|" Para Separar Los Datos, y El "Enter"(Cada Linea) Para Separar Los Registros.

************************************************** ***********************************************

Bien, Los Parametros De Este Objeto No Creo Sea Necesario Los Explique De Nuevo(Ya Los Habia Explicado En un Post Anterior Puedes Verlo Aqui: <a href='ir.asp?http://www.forosdelweb.com/mensaje.asp?id=67557&amp;r=11' target='_blank'>http://www.forosdelweb.com/mensaje.asp?i...</a>), El Archivo Del Que Obtendremos Los Datos Sera Banners.txt Y El ID De Nuestro objeto En Esta Ocasion Sera Banners.

&lt;OBJECT ID=&quot;Banners&quot; CLASSID=&quot;clsid:333C7BC4-460F-11D0-BC04-0080C7055A83&quot; ondatasetcomplete=&quot;mostrarBanner()&quot;&gt;
&lt;PARAM NAME=&quot;DataURL&quot; Value=&quot;Banners.txt&quot; &gt;
&lt;PARAM NAME=&quot;UseHeader&quot; Value=&quot;true&quot;&gt;
&lt;PARAM NAME=&quot;FieldDelim&quot; VALUE=&quot;|&quot;&gt;
&lt;/OBJECT&gt;

Pero, Como Se Daran Cuenta Ahora Utilizo Un Metodo de Dicho Objeto, El ondatasetcomplete El Cual Se &quot;Dispara&quot; Cuando Los Datos Estan Cargados Por Completo:

&lt;OBJECT ID=&quot;Banners&quot; CLASSID=&quot;clsid:333C7BC4-460F-11D0-BC04-0080C7055A83&quot; ondatasetcomplete=&quot;mostrarBanner()&quot; &gt;

Al Cargarse Los Datos, Se Llama A La Funcion De Javascript mostrarBanner(), Definimos La Funcion:

function mostrarBanner()
{

Creamos Las Variables A Utilizar, La Variable maximo La Cual Nos Informa De Cuantos Registros Disponemos, Para Ello Accesamos A Nuestros Datos(Banners.recordset Y Le Pedimos El Numero De Registros Gracias A La Propiedad recordCount .

var maximo = Banners.recordset.recordCount;

Creamos Una Serie De Arrays En Los Cuales Introduciremos Los Datos Del Archivo, El Tamaño De Dichos Arrays Sera El De La Variable maximo Que Es El # De Registros Que Tenemos En El Archivo:

var urlBanner = new Array(maximo);
var imgBanner = new Array(maximo);
var targetBanner = new Array(maximo);
var altBanner = new Array(maximo);

Variable Contador, Para Ir Asignando Valores A Los Arrays:

var i = 0;


Ahora Empezaremos A Llenar Dichos Arrays Con Informacion Sobre La Url, La Imagen, El Target Y El Alt, Para Ello Le Indicamos Que Mientras No Se Haya Acabado El Archivo (Banners.recordset.eof Nos Devuelve True Si Es El Fin Del Archivo Y False Si No Se Ha Acabado, Anteponiendo El Signo De Negacion &quot;! &quot; Especificamos Que &quot;Mientras No....&quot;):

while(!Banners.recordset.eof)
{
urlBanner[i] = new String(Banners.recordset.fields(&quot;URL&quot;));
imgBanner[i] = new String(Banners.recordset.fields(&quot;IMG&quot;));
targetBanner[i] = new String(Banners.recordset.fields(&quot;TARGET&quot; ));
altBanner = new String(Banners.recordset.fields(&quot;ALT&quot;));
Banners.recordset.moveNext();
i++;
}

Ahora Hacemos El Random, Sera Un Numero Entre 0 Y El Maximo De Registros:

var cual = Math.floor(Math.random() * maximo);

Ahora Creamos El Codigo HTML, Osea, El Enlace, El Target, La Imagen Y El Alt De La Imagen Segun El Numero Aleatorio, Para Ello Accesamos Los Arrays:

var codigo = '&lt;A HREF=&quot;'+urlBanner[cual]+'&quot; TARGET=&quot;'+targetBanner[cual]+'&quot;&gt;&lt;IMG SRC=&quot;'+imgBanner[cual]+'&quot; ALT=&quot;'+altBanner[cual]+'&quot; BORDER=0&gt;&lt;/A&gt;';

Ahora Ponemos Dicho Codigo En Nuestro HTML Utilizando La Propiedad innerHTML Que Reemplaza El HTML Que Tuvieramos En &quot;banner&quot; Por Nuestro Codigo
banner.innerHTML = codigo;

Cerramos La Funcion:
}

Recordemos Que Tenemos Que Tener Definido Un &quot;banner&quot; Para Que Se Pueda Mostrar El Banner Asi:

&lt;SPAN ID=&quot;banner&quot;&gt;
&lt;/SPAN&gt;

************************************************** ***********************************************
Conceptos:

Para Acceder A Uno De Los Campos Del Registro Actual Hemos Utilizado La Propiedad fields Del recordset , Y Llamamos Al Campo Segun Lo Hayamos Definido En El Archivo:

Banners.recordset.fields(&quot;URL&quot;);
Banners.recordset.fields(&quot;IMG&quot;);
Banners.recordset.fields(&quot;TARGET&quot;);
Banners.recordset.fields(&quot;ALT&quot;);

Y Nos Desplazamos Al Siguiente Registro Asi:

Banners.recordset.moveNext();

************************************************** ***********************************************
Bien, Espero Les Sea De Utilidad, Sobre Todo Que Nos Sirve No Solo Para La Rotacion De Banners, Si No Que Ahora Que Aprendimos A Acceder A Cada Uno De Nuestros Registros Y De Sus Respectivos Campos Podremos Llegar A Realizar Cosas Muy Interesantes.


<SCRIPT LANGUAGE="javascript" SRC="http://www.galeon.com/jlmnetwork/firma.js"></SCRIPT>
  #2 (permalink)  
Antiguo 19/04/2002, 16:04
Avatar de Ferdy
Colaborador
 
Fecha de Ingreso: junio-2001
Ubicación: España
Mensajes: 1.430
Antigüedad: 22 años, 11 meses
Puntos: 0
Re: A Quien Pueda Interesar: Leer Desde Archivos 2

Cerrado a petición del autor

Salu2.Ferdy

<hr />Usuario registrado de Linux #241564
<a href="http://www.ferdyx.org">FerdyX.org</a> - Web Open Source
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 08:10.