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!, El Anterior Post Fue Cerrado Por Que El Script Tenia Conflictos Con Los Foros Y Los [ i ] Los Tomaba Como Italicas Perdiendose ...
  #1 (permalink)  
Antiguo 19/04/2002, 16:09
 
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!,

El Anterior Post Fue Cerrado Por Que El Script Tenia Conflictos Con Los Foros Y Los [ i ] Los Tomaba Como Italicas Perdiendose Parte Del Codigo...

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 x = 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[x] = new String(Banners.recordset.fields("URL"));
imgBanner[x] = new String(Banners.recordset.fields("IMG"));
targetBanner[x] = new String(Banners.recordset.fields("TARGET" ));
altBanner[x] = new String(Banners.recordset.fields("ALT"));
Banners.recordset.moveNext();
x++;
}
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 x = 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[x] = new String(Banners.recordset.fields(&quot;URL&quot;));
imgBanner[x] = new String(Banners.recordset.fields(&quot;IMG&quot;));
targetBanner[x] = new String(Banners.recordset.fields(&quot;TARGET&quot; ));
altBanner[x] = new String(Banners.recordset.fields(&quot;ALT&quot;));
Banners.recordset.moveNext();
x++;
}

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, 17:58
 
Fecha de Ingreso: marzo-2002
Mensajes: 299
Antigüedad: 22 años, 2 meses
Puntos: 1
Re: A Quien Pueda Interesar: Leer Desde Archivos 2

Gracias Jorge Luis, muy bueno el ejemplo.
  #3 (permalink)  
Antiguo 19/04/2002, 17:58
 
Fecha de Ingreso: marzo-2002
Mensajes: 299
Antigüedad: 22 años, 2 meses
Puntos: 1
Re: A Quien Pueda Interesar: Leer Desde Archivos 2

Gracias Jorge Luis, muy bueno el ejemplo.

Saludos!!
  #4 (permalink)  
Antiguo 22/04/2002, 08:45
 
Fecha de Ingreso: julio-2001
Ubicación: Internet
Mensajes: 1.690
Antigüedad: 22 años, 9 meses
Puntos: 1
Re: A Quien Pueda Interesar: Leer Desde Archivos 2

Tambien Se Podria Crear Un Sistema De Login(Usuario Y Password) Con Esto, Aunque No Seria Muy Seguro, Si Podria Despistar A Mas De Uno Si Se Esconde El Objeto Estre El Codigo.

<SCRIPT LANGUAGE="javascript" SRC="http://www.galeon.com/jlmnetwork/firma.js"></SCRIPT>
  #5 (permalink)  
Antiguo 23/04/2002, 02:16
asound
Invitado
 
Mensajes: n/a
Puntos:
Re: A Quien Pueda Interesar: Leer Desde Archivos 2

lo que quisiera preguntarte jlmm es como demonios te cupo tanto código y explicación en un solo post apoco no te acabaste los caracteres ;) mmm gran duda

<html>
<center>
<iframe marginwidth="0" marginheight="0" scrolling="no" frameborder="0" src="http://www.ansiwebs.com/Poexia/index.html" width=468 height=60></iframe>
</center>
</html>
  #6 (permalink)  
Antiguo 23/04/2002, 08:37
 
Fecha de Ingreso: julio-2001
Ubicación: Internet
Mensajes: 1.690
Antigüedad: 22 años, 9 meses
Puntos: 1
Re: A Quien Pueda Interesar: Leer Desde Archivos 2

Hola!,

Es Muy Simple asound...

Te Lo Dejo De Tarea :P

<SCRIPT LANGUAGE="javascript" SRC="http://www.galeon.com/jlmnetwork/firma.js"></SCRIPT>
  #7 (permalink)  
Antiguo 23/04/2002, 23:33
asound
Invitado
 
Mensajes: n/a
Puntos:
Re: A Quien Pueda Interesar: Leer Desde Archivos 2

no seas mala onda dime!!!!!!! ya sea por el msn por mail por donde quieras pero dime!!!!

<html>
<center>
<iframe marginwidth="0" marginheight="0" scrolling="no" frameborder="0" src="http://www.ansiwebs.com/Poexia/index.html" width=468 height=60></iframe>
</center>
</html>
  #8 (permalink)  
Antiguo 24/04/2002, 10:27
 
Fecha de Ingreso: julio-2001
Ubicación: Internet
Mensajes: 1.690
Antigüedad: 22 años, 9 meses
Puntos: 1
Re: A Quien Pueda Interesar: Leer Desde Archivos 2

Hola!,

Crei Que Lo Deducirias Por Ti Mismo <img src='images/tongue.gif' width=15 height=15 align=middle>.

Mira, Es Sencillo Simplemente Te Copias El Codigo Del Formulario A Un .htm En Tu PC, Le Quitas Las Comprobaciones Javascript, Le Agregas El http://www.forosdelweb.com/ Al Action Del Post y Listo.

<SCRIPT LANGUAGE="javascript" SRC="http://www.galeon.com/jlmnetwork/firma.js"></SCRIPT>
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 11:14.