Principal | Buscar | Contacto | Mapa |  
Menú
 Principal
 
Agregar Favoritos
 Buscar en el Sitio
 Categorías
 Condiciones Uso
 Enlace Roto
 Estadísticas
 Google Groups
 Newsletter
 Noticias
 Novedades
 Página de Inicio
 Publicitar
 Recomiéndanos
 Software en tu Web
 Submit Software
 
Software Gratis
- Educativos
- Escritorio
- Gestores
- Internet
- Juegos
- Multimedia
- Programación
- Utilidades
 
Navegación
- Afiliados               - ZonaTecnológica    - Enciclopedia          - Diccionario            - ZonaVideos            - Trailers                  - Radios On-Line       - ZonaTV Online      - ZonaMujer            - Amigos y Pareja
- Biografías de Cine
- Bingo onLine
- Casino onLine
- Comprar y Vender
- Curiosidades
- Diccionarios Gratis
- Diseño y Gifs
- Drivers Gratuitos
- Esoterismo
- Fondos p/Móviles
- Free Ringtones
- Ganar Dinero
- Google Maníacos
- Guía de Casinos
- Hoteles
- Índice Web
- Manuales Gratis
- Paypal España
- Poker onLine
- Recetas
- Salvapantallas
- Seguridad
- Servicios
- Templates Gratis
- Tienda online
- Universo Seti
- Venta de Dominios
- Venta de Libros
- Wallpapers Gratis
- Webmasters         - Mapa del Sitio
 
Fondos Gratis

Fondos de Escritorio Animados Gratis!!

Wallpapers Animados Gratis !!
 

 

 

 Microsoft
 
 

Introducción a ASP

Este tutorial de ASP a sido escrito enteramente por EL Guru Programador, cualquier duda, consulta o si deseas publicar este tutorial en tu sitio web dirígete a elguru@elguruprogramador.com.ar.

Caracteristicas

Veremos algunas de las caracteristicas mas importantes de esta tecnologia, las otras las descubriremos a medida que se avanza en este tutorial.

  • La sigla ASP significa Active Server Pages.
  • Microsoft es el creador.
  • Se ejecuta en el servidor donde esta alojada la pagina web.
  • El cliente (navegador del usuario) no nota diferencias con una pagina normal (HTML).
  • Por medio de ASP se puede tener acceso a bases de datos.
  • Para su implementacion se utiliza lenguaje script como VBScript o JScript.
  • Se puede utilizar HTML y ASP en una misma pagina.
  • Es totalmente ampliable gracias a que es compatible con la tecnologia ActiveX.

Como Funciona

Aqui estan pasa a paso como funciona una pagina ASP.

  1. Un usuario por medio del navegador solicita una pagina ASP.
  2. Esta solicitud llega al servidor el cual tiene alojada la pagina pedida.
  3. Este servidor procesa la pagina ASP y devuelve codigo HTML.
  4. El usuario visualiza la pagina en su navegador.

Noten que para el usuario no existe diferencia en ASP y HTML por que a su navegador siempre llega codigo HTML puro, el unico que requiere un trabajo extra es el servidor el cual tiene que procesar el codigo ASP y tranformarlo en HTML para su posterior envio al cliente.

Como utilizarlo

Para utilizarlo nesecitamos un servidor que procese nuestras paginas ASP, para ello existe el Internet Information Sever bajo Windows NT o 2000 y bajo Windows 95/98 esta el Personal Web Server que viene el CD de Instalacion de Windows 98 o en el CD del Visual Studio.

 

Personal Web Server

El Personal Web Server es un servidor que nos permite trabajar con paginas ASP en nuestra PC sin necesidad de subir las paginas ASP al servidor para realizar las pruebas, es decir, armamos todo el sitio en nuestra PC, lo probamos con el Personal Web Server (PWS) y si todo va bien lo subimos.

Para utilizar el PWS necesitamos tener Windows 95/98/Me, si tenemos como SO Windows NT o 2000 tambien podemos utilizar el PWS pero en este caso es preferible utilizar Internet Information Server (IIS) dado que es mas funcional y robusto. Pueden conseguir el PWS desde el sitio de Microsoft o en los CDs de Instalacion de Windows 98, Visual Basic o Visual Studio.

A la hora de instalar el PWS hay que seguir los pasos de una instalacion tipica de un programa, pero hay que prestar atencion en el momento que nos pide el directorio de publicacion web, es decir el directorio en donde se guardaran nuestras paginas web se puede dejar el que nos ofrese el PWS por defecto o lo podemos modificar, si lo modificamos, por ejemplo ponemos que el directorio de publicacion web es "C:\Paginas Webs" tenemos que guardar nuestras pagina dentro de este directo.

Una ves instalado reiniciamos la PC y al volver tendremos un icono en la barra de notificacion de Windows desde este icono podemos iniciar el PWS, aclaremos que el PWS tiene dos estados Iniciado y Detenido, obviamente nuestro sitio solo funcionara cuando este el PWS iniciado.

Bueno una ves abierto el PWS nos vamos al sector llamado "Avanzada" desde aca configuramos las opciones avanzadas del servidor, lo mas importante es la configuracion del directorio, seleccionamos "Home" y hacemos click en "Modificar Propiedades", aqui seleccionamos el directorio que habiamos elegido como publicacion web, apretamos "Aceptar" y volvemos a las opciones avanzadas. Ahora destildamos "Habitar Documento Predeterminado" y habilitamos "Permitir Exploracion de directorios", volvemos a la seccion "Principal" y hacemos click en el link para abrir nuestro site.

 

VBScript - Introduccion

Por medio de VBScript podemos crear nuestras paginas ASP, debemos tener en cuenta que antes de escribir cualquier codigo ASP debemos abrir nuestro codigo con el simbolo '<%' y al finalizar cerrarlo con '%>'

<%
'este es un comentario
Response.Write ("Mi Primer Pagina ASP")
%>

Podemos abrir archivo nuevo agregarle el codigo anterior guardarlo como "hola.asp" dentro de nuestro directorio de publicacion web abrir el PWS y ver el resultado en el navegador.

VBScript es un lenguaje script derivado de Visual Basic asi que tambien hereda sus funciones basicas a continuacion veremos algunas de las mas utilizadas.

 

VBScript - Funciones Basicas

Si estas familiarizado con Visual Basic podes pasar esta parte dado que los funciones basicas son iguales en ambos lenguajes, y si no conoces Visual Basic aca va una ayuda.

Variables

La forma de declaran variables es por medio de la palabra 'Dim', aclaremos que la declaracion de variables no es necesaria, salvo que al inicio de nuestra pagina ASP pongamos la palabra clave 'Option Explicit' que hace que la declaracion de variables sea necesaria si no nos daria un error.

<%
Option Explicit

Dim I 'declaramos la variable

I= 14 ' le asignamos un valor
Response.Write (I) 'mostramos su valor en el navegador
%>

Condicionales

El condicional mas utilizado en cualquier lenguaje es el famoso IF, VBScript no podia quedarse afuera, el modo de uso es poner la palabra clave 'If' despues la condicion a evaluar, luego 'Then' y el codigo a ejecutar si se cumple la condicion dada, al finalizar se cierra el bloque 'If' con la palabra clave 'End If'

<%
Dim I

I = 14
 

If I = 14 Then
Response.Write ("La variable I es igual a 14")
End If
%>

Tambien extiste la alternativa 'Else' (sino), es decir sino se cumple la condicion hacer lo siguiente, veamos un ejemplo

<%
Dim I

I = 14
 

If I = 14 Then
Response.Write ("La variable I es igual a 14")
Else
Response.Write ("La variable I es distinta a 14")
End If
%>

Fijense que pusimos 'I = 14' tambien podemos hacer otro tipo de condicion como puede ser distinto 'I <> 14', mayor 'I > 14', menor 'I < 14', mayor o igual 'I > = 14', menor o igual 'I <= 14'< /FONT >

Bucles

VBScript posee un bucle llamador 'For' que repite una accion la cantidad de veces indicada

<%
Dim I

For I = 1 to 5
Response.Write ("Esto se repite 5 veces")
Next
%>

Podemos modificar el numero 5 y poner un 10 y lo repetira 10 veces, tambien podemos modificar el numero 1 por el 3 y el 5 por el 6, esto hara que el bucle se repita 3 veces, '3 to 6' (desde 3 hasta 6), tambien podemos indicar el incremento que tendra por medio de la palabra clave 'step'

<%
Dim I

For I = 1 to 10 step 2
Response.Write ("Esto se repite de dos en dos, i = " & i)
Next
%>

Gracias a esto podemos hacer un bucle inverso por ejemplo de 10 a 1

<%
Dim I

For I = 10 to 1 step -1
Response.Write ("i = " & i)
Next
%>

La palabra clave 'Next' indica el final del bucle, es decir se repite todo lo que esta entre el 'For' y 'Next'

While..Wend

Este bucle a diferencia del 'For' repite una accion siempre que se cumpla una condicion, veamos un ejemplo

<%
Dim I

I = 0 'inicializa i igual a 0

While I <> 10 'repita mientras i sea distinto a 10
Response.Write ("i = " & i) 'muestra por pantalla el valor de i
I = I + 1 'incrementa i en uno
Wend
%>

Cuando agregamos la palabra clave 'Wend' estamos diciendo que repita todo el codigo incluido entre While y Wend

Objeto Response

Este objeto ASP es del tipo integrado, es decir no tenemos que crear una instancia del mismo para poder utilizarlo, su funcion es enviar informacion al cliente (navegador).

PROPIEDADES

Buffer
 
Esta propiedad es del tipo boolean (true/false) e indica si la pagina se alamacena en el buffer del servidor antes de ser enviada, es decir si esta true envia la pagina al cliente recien cuando este toda cargada y si esta false la envia a medida que la procesa. Se debe utilizar antes de haber enviado algun resultado al cliente. Si el servidor utilizado tiene la version de ASP 2.0 el valor predeterminado de esta propiedad es false y en cambio la version es la 3.0 (Windows 2000) el valor predeterminado es true.
 
Ejemplo
 
<%Response.Buffer = TRUE%>

 

Expires
 
Esta propiedad indica el tiempo, en minutos, que la pagina se guarda el el cache del navegador, si este valor se pone a 0 no se utiliza el cache del navegador
 
Ejemplo
 
<% Response.Expires = 5%>

 

ExpiresAbsolute
 
Esta propiedad indica hasta que dia y hora la pagina se guarda en el cache del navegador.
 
Ejemplo
 
<% Response.ExpiresAbsolute=#May 5, 2001 14:30:00# %>

 

Cookies
 
Crea una cookie en la maquina del usuario. Una cookies es un archivo con formato de texto en el cual el se puede guardar informacion. Las cookies por lo general se utilizan para controles de acceso, personalizacion de paginas y estadisticas. El siguiente ejemplo crea una cookie llamada 'fecha' la cual contiene el valor devuelto por la funcion 'date' que nos devuelve la fecha actual
 
Ejemplo
 
<% Response.Cookies("fecha") = date %>
 
Esta cookie se mantiene en la maquina del usuario hasta que termine su session, borre las del navegador o se cumpla el tiempo establecido para esa cookies, a continuacion veremos la forma de establecer la duracion de una cookie
 
<% Response.cookies("fecha").expires="2/12/2001"%>
 
Esto hace que la cookie se borre en la fecha indicada, si creamos otra cookie llamada 'fecha' esta sobreescribira a la otra.
 

METODOS

End
 
Este metodo detiene el proceso de la pagina ASP y envia lo ya procesado al navegador
 
Ejemplo
 
<%Response.End%>

 

Flush
 
Este metodo envia el contenido del buffer al navegador siempre y cuando la propiedad Buffer se true, si la propiedad Buffer es igual a false se producira un error
 
Ejemplo
 
<%Response.Flush%>

 

Redirect (cadena_url)
 
Este metodo redirecciona la pagina actual a la pasada como parametro.
 
Ejemplo
 
<%Response.Redirect "otra_pagina.asp"%>

 

Write (cadena)
 
Este metodo escribe en el navegador la cadena padada como parametro, tengan en cuenta que tambien se pueden enviar etiquetas HTML y concatenar variable con el operador & (VBScript).
 
Ejemplo
 
<%Response.Write ("<b>hola!!!</b>%>

 

Objeto Request

Este objeto ASP es del tipo integrado, es decir no tenemos que crear una instancia del mismo para poder utilizarlo, por medio de este objeto podes tener acceso a la informacion que el navegador pasa al servidor.

PROPIEDADES (COLECCIONES)

Form
 
Esta propiedad es una coleccion que contiene todos los elementos de un formulario (<form>) pasado al archivo ASP con el metodo POST (<form method= 'post'>),la forma de acceder a el valor de un elemento del formulario es la siguiente...< /FONT>< /FONT>< /FONT>
 
<%=Request.Form("nombre_elemento")%>
 
Ejemplo
 
--------------formulario.htm----------------
<HTML>
<HEAD>
</HEAD>
<BODY>
<form action="procesa_formulario.asp" method="POST">
Nombre:<input type="Text" name="nombre" maxlength="20"><br>
Apellido:<input type="Text" name="apellido" maxlength="30"><br>
<input type="Submit" name="Submit" value="Enviar">
</form>
</BODY>
</HTML>
--------------procesa_formulario.asp--------
<HTML>
<HEAD>
</HEAD>
<BODY>
<% Response.Write ("nombre:" & Request.Form("nombre"))%>
<% Response.Write ("apellido:" & Request.Form("apellido")) %>
</BODY>
</HTML>

 

Cookies
 
Recupera una cookie almacenada en la maquina del usuario. Una cookies es un archivo con formato de texto en el cual el se puede guardar informacion. Las cookies por lo general se utilizan para controles de acceso, personalizacion de paginas y estadisticas. El siguiente ejemplo recupera la cookie llamada 'fecha' que creamos anteriormente.
 
Ejemplo
 
<% Response.Write Request.Cookies("fecha") %>
 
Debido a la natualeza de las cookies y a que nunca podemos garantizar que una cookie almazenada anteriormente todavia exista debemos manejarnos con cautela y no almacenar en ellas datos criticos.

 

QueryString
 
Esta coleccion contiene todos los valores pasados como parametros a una pagina ASP. La formas de pasar parametros a una pagina ASP son varias una es por medio de formularios utilizando el metodo 'GET' y la otra es generandolo 'manualmente'...
 
http://www.servidor_xxx.com/pagina_asp.asp?nombre=jose&apellido=perez
 
Esa es la manera de pasar parametros a una pagina ASP, luegop del la direccion URL se pone el signo '?' y a continuacion todos los parametros con sus respectivos valores separados por el simbolo '&'.
 
Ejemplo
 
-----------------------pasa_parametros.asp-------------------
<HTML>
<HEAD>
</HEAD>
<BODY><BR><AHREF="lee_parametros.asp?nombre=jose">click aca! </A>
</BODY>
</HTML>

-----------------------lee_parametros.asp----------------------
<%
Response.Write (Request.QueryString("nombre") & "<br>")
%>

 

ServerVariables
 
Esta coleccion nos da acceso a todas las variables de entorno del servidor.
 
Ejemplo
 
<%
Response.Write (Request.ServerVariables("REMOTE_ADDR"))
Response.Write (Request.ServerVariables("SERVER_SOFTWARE"))
%>

 

Objeto Server

Este objeto ASP es del tipo integrado, es decir no tenemos que crear una instancia del mismo para poder utilizarlo, por medio de este objeto podes tener acceso a funciones utiles del servidor.

PROPIEDADES

ScriptTimeout
 
Esta propiedad determina el tiempo maximo en segundos que se espera para ejecutar la pagina ASP. Si la pagina tarda mas segundos en ser procesada se produce un error. El valor predeterminado es 90 segundos.
 
Ejemplo
 
<% Server.ScriptTimeout = 25 %>

 

METODOS

CreateObject (id_objeto)
 
Este es uno de los metodos mas importantes y nos permite crear objetos a partir de los cuales vamos a trabajar. Como unico parametro se especifica el nombre del objeto a crear. Al crear el objeto este se le asigna a la variable establecida por medio de la palabra clave SET, esta variable hereda todos los metodos, propiedades y eventos del objeto creado.
 
Ejemplo
 
<% Set BDD = Server.CreateObject("ADODB.Connection") %>

 

Execute (path)
 
Este metodo ejecuta una pagina ASP dentro de otra, su unico parametro es la ruta de la pagina a ejecutar. Este metodo solo esta disponible en la version 3.0 de ASP.
 
Ejemplo
 
----------pagina_llama.asp-------
<HTML>
<BODY>

Hola <%Server.Execute("respuesta.asp")%> !

</BODY>
</HTML>

----------respuesta.asp----------
<%
Response.Write "Pedro"
%>
 

 

HTMLEncode (cadena)
 
Este metodo evita que la cadena pasada como parametro sea interpretada como lenguaje HTML.
 
Ejemplo
 
<% Response.Write Server.HTMLEncode("<b>sin negrita</b>") %>

 

MapPath (path)
 
Devuelve la ruta completa del archivo pasado como parametro.
 
Ejemplo
 
<% Response.Write Server.MapPath("calendario\dias.asp") %>

 

Objeto Session

Este objeto ASP es del tipo integrado, es decir no tenemos que crear una instancia del mismo para poder utilizarlo, el mismo sireve para compartir informacion de un usuario entre las paginas del sitio. Por defecto el objeto session se crea al ingresar el usuario a nuestro sitio y se destruye cuando lo abandona o cuando pasan 20 minutos sin actividad del usuario.

PROPIEDADES

SessionID
 
Esta propiedad devuelve un ID que identifica a un usuario. Este ID es unico, no se puede modificar y lo crea automaticamente el servidor.
 
Ejemplo
 
<% Response.Write "ID Session = " & Session.SessionID %>

 

Timeout
 
Esta propiedad determina el tiempo en minutos que durara la sesion del usuario antes de ser destruida, por defecto su valos es de 20 minitos.
 
Ejemplo
 
<% Session.Timeout = 30 %>

 

METODOS

Abandon
 
Este metodo proboca el abandono forzado de la session, destruye todas la variables de sesion .
 
Ejemplo
 
<%Session.Abandon %>

 

VARIABLES DE SESION
 
Una utilidad muy buena que nos permite el objeto session es crear variables y poder compartirlas en todas la paginas de nuestro sitio algo asi como una variable global pero con una diferencia bastante grande dado que cada usuario que ingrese a nuestra pagina tendra un valor distinto en cada variable. En el ejemplo que sigue a continuacion se muestra la forma de uso.
 
Ejemplo
 
----------pagina_1.asp-------
<HTML>
<BODY>

<%Session("Dia") = "Lunes"%>

</BODY>
</HTML>

----------pagina_2.asp----------
<%
Response.Write Session("Dia")
%>
 

Bases de Datos - Utilizando ASP y Bases de Datos Access.

Esta es una breve explicacion de como utilizar ASP para tener acceso a una base de datos, lo primero que debemos crear es la base de datos, en este caso de Access con el nombre de 'temas.mdb', ahora dentro de esta base de datos crearemos una tabla llamada 'TemasMusicales' y que tenga los siguientes campos...

CAMPOS TIPOS DE DATOS
Id Autonumerico
Titulo Texto
Genero Texto

Ingresale algunos datos para poder utilizarla. Bueno ya tenemos la base de datos con informacion adentro, lo que vamos a hacer ahora es desde ASP ver todo el contenido de la tabla que hemos creado. Para ello creamos un archivo ASP con el nombre 'muestra_temas.asp' y en su interior agregamos el siguiente codigo...

<%

Dim BDD ' variable que se encargara de la base de datos
Dim TABLA ' variable que se encarga de la tabla

'creamos los objetos que manejan la base de datos y la tabla
Set BDD = Server.CreateObject("ADODB.Connection")
Set TABLA = Server.CreateObject("ADODB.Recordset")

'abrimos la base de datos
BDD.Open ("PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=" + Server.MapPath("temas.mdb"))

'abrimos la tabla
TABLA.Open "TemasMusicales", BDD ' indicamos el nombre de la tabla y la base de datos

'ahora recorremos toda la tabla y mostramoslos datos
While NOT TABLA.EOF 'recorre la tabla hasta que EOF sea verdadero
Response.Write "titulo:" & TABLA("Titulo") & "<br>"
Response.Write "genero:" & TABLA("Genero") & "<br>"
Wend

'cerramos todo y liberamos los objetos
TABLA.Close
BDD.Close

Set BDD = Nothing
Set TABLA = Nothing

%>

Bueno con este codigo se pueden ver todos los datos que contiene nuestra base de datos, para mas informacion lee los articulos escritos por El Guru sobre ASP.

 

Bases de Datos - Introduccion al SQL

Esta es una breve introduccion al lenguaje de consultas estructuradas SQL, solo veremos como realizar consultas sobre una tabla de una base de datos. Primero veamos el formato de la tabla de Access con la que vamos a trabajar

CAMPOS TIPOS DE DATOS
Id Autonumerico
Marca Texto
Color Texto

Esta tabla llevara el nombre de 'Autos' y en su interior contendra la informacion de una cantidad X de autos, te recomiendo que llenes la tabla con datos, podes repetir las marcas y los colores.

<%

Dim BDD ' variable que se encargara de la base de datos
Dim TABLA ' variable que se encarga de la tabla
Dim SQL 'variable que contendra la consulta SQL

'creamos los objetos que manejan la base de datos y la tabla
Set BDD = Server.CreateObject("ADODB.Connection")
Set TABLA = Server.CreateObject("ADODB.Recordset")

'abrimos la base de datos
BDD.Open ("PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=" + Server.MapPath("autos.mdb"))

%>

Noten que declaramos una variable llamada 'SQL' en la cual vamos a poner la cadena que forme la consulta a la tabla 'Autos', asi que entre el codigo anterior y el que esta a continuacion deben asignarle a la variable 'SQL' la consulta a realizar.

<%

TABLA.Open SQL, BDD ' hacemos la consulta

'ahora recorremos toda la tabla y mostramoslos datos
While NOT TABLA.EOF 'recorre la tabla hasta que EOF sea verdadero
Response.Write "marca:" & TABLA("Titulo") & "<br>"
Response.Write "color:" & TABLA("Genero") & "<br><br>"
Wend

'cerramos todo y liberamos los objetos
TABLA.Close
BDD.Close

Set BDD = Nothing
Set TABLA = Nothing

%>

Bueno, realizaremos nuestra primer consulta, seleccionaremos todos los autos de color rojo, para esto tenemos que armar la consulta, recuerden que el codigo que hay a continuacion va entre medio de los 2 anteriores

SQL = "SELECT * FROM Autos WHERE Color = 'Rojo'"

Bien, expliquemos esto, "SELECT * ..." significa seleccionar todos los campos (*), "FROM Autos..." desde la tabla Autos "WHERE Color = 'Rojo'" donde color es igual a Rojo.

Como ves es bastante intuitivo y legible, si sabes ingles mucho mas. Ahora realizaremos una consulta buscando todos los autos de marca BMW.

SQL = "SELECT * FROM Autos WHERE Marca = 'BMW'"

Facil no. Ahora veamos como hacer si queremos seleccionar todos los autos BMW de color Rojo

SQL = "SELECT * FROM Autos WHERE Color = 'Rojo' AND Marca = 'BMW'"

Noten que agregamos el operador AND (Y) es decir, Color igual a rojo Y con la marca BMW, ahora veamos lo contrario, buscaremos todos los BMW pero que no sean de color rojo

SQL = "SELECT * FROM Autos WHERE Marca = 'BMW' AND NOT Color = 'Rojo'"

Y si queremos que todo esto aparesca ordenado debemos agregar la palabra 'ORDER BY' y especificar el campo por el cual queremos ordenar

SQL = "SELECT * FROM Autos WHERE Marca = 'BMW' AND NOT Color = 'Rojo' ORDER BY Marca"

Podemos especificar mas de un campo para ordenar, para esto debemos separarlos por comas

SQL = "SELECT * FROM Autos WHERE Marca = 'BMW' AND NOT Color = 'Rojo' ORDER BY Marca, Color"

Y la forma de mostrarlos, ascendente o descendente

SQL = "SELECT * FROM Autos WHERE Marca = 'BMW' AND NOT Color = 'Rojo' ORDER BY Marca, Color DESC"

 

Al Pasar >>

Hoteles

Casino online

Bingo onLine

Poker

Juegos Casino

 

LO ÚLTIMO en tu Correo. Suscríbete Gratis a NUESTRO BOLETÍN !!

Te Agradeceríamos nos informes si encuentras un ENLACE ROTO

                                                                                                                              
 

 

 

 

 | Home | Buscar | Mapa Sitio | Categorías | Contacto |
Copyright © 2002 - 2008 - Zona Gratuita .COM - Permitido el uso Parcial citando Fuentes y Autores
 | Zona Gratuita | Casino onLine | ShaFree | Utilidades Gratis |