domingo, 2 de febrero de 2014


martes, 27 de mayo de 2008

ASP




Active Server Pages (ASP) es una tecnología del lado servidor de Microsoft para páginas web generadas dinámicamente, que ha sido comercializada como un anexo a Internet Information Server (IIS). La tecnología ASP está estrechamente relacionada con el modelo tecnológico de su fabricante. Intenta ser solución para un modelo de programación rápida ya que programar en ASP es como programar en VisualBasic, por supuesto con muchas limitaciones ya que es una plataforma que no se ha desarrollado como lo esperaba Microsoft (se necesita cita).
Lo interesante de este modelo tecnológico es poder utilizar diversos componentes ya desarrollados como algunos controles ActiveX. Otros problemas que han hecho evolucionar esta tecnología es el no disponer de información "que oriente a quienes desean aprenderla y resulta muy costosa en tiempo descubrir aquí y allá toda la información para volverla altamente útil".
ASP ha pasado por cuatro iteraciones mayores, ASP 1.0 (distribuido con IIS 3.0), ASP 2.0 (distribuido con IIS 4.0), ASP 3.0 (distribuido con IIS 5.0) y ASP.NET (parte de la plataforma
.NET de Microsoft). Las versiones pre-.NET se denominan actualmente (desde 2002) como ASP clásico.
En el último ASP clásico, ASP 3.0, hay siete
objetos integrados disponibles para el programador, Application, ASPError, Request, Response, Server, Session y ObjectContext. Cada objeto tiene un grupo de funcionalidades frecuentemente usadas y útiles para crear páginas web dinámicas.
Las páginas pueden ser generadas mezclando código de
scripts del lado del servidor (incluyendo acceso a base de datos) con HTML. Por ejemplo:<%if x=1 then%>
X igual a uno
<%else%>
X diferente a uno
<%end if%>
Este código trae como resultado en htmlX igual a uno
cuando se establece la variable del lado del servidor a X=1.
Se facilita la programación de
sitios web mediante varios objetos integrados, como por ejemplo un objeto de sesión basada en cookies, que mantiene las variables mientras se pasa de página a página.
Desde 2002, el ASP clásico está siendo reemplazado por
ASP.NET, que, entre otras cosas, reemplaza los lenguajes interpretados como VBScript o JScript por lenguajes compilados a código intermedio (llamado MSIL o Microsoft Intermediate Language) como Visual Basic, C#, o cualquier otro lenguaje que soporte la plataforma .NET. El código MSIL se compila con posterioridad a código nativo.
Emails con ASP Codigo fuente para mandar un mail mediante CDONTS
ASP Source Code:
Dim strTo, strSubject, strBody 'Strings for recipient, subject, boby Dim objCDOMail 'The CDO object
'First we'll read in the values entered strTo = Request.Form("to")
'These would read the message subject and body if we let you enter it 'strSubject = Request.Form("subject") 'strBody = Request.Form("body")
strSubject = "Sample E-mail sent from ASP 101!"
' This is multi-lined simply for readability strBody = "This message was sent from a sample at
http://www.asp101.com. " strBody = strBody & "It is used to show people how to send e-mail from an " strBody = strBody & "Active Server Page. If you did not request this " strBody = strBody & "e-mail yourself, your address was entered by one of " strBody = strBody & "our visitors. We do not store these e-mail addresses." strBody = strBody & " Please address all concerns to webmaster@asp101.com."
' Some spacing: strBody = strBody & vbCrLf & vbCrLf
strBody = strBody & "This was sent to: "
' A lot of people have asked how to use form data in the emails so ' I added this line to the sample as an example of incorporating form ' data in the body of the email. strBody = strBody & Request.Form("to")
' A final carriage return for good measure! strBody = strBody & vbCrLf
'Ok we've got the values now on to the point of the script.
'We just check to see if someone has entered anything into the to field. 'If it's equal to nothing we show the form, otherwise we send the message. 'If you were doing this for real you might want to check other fields too 'and do a little entry validation like checking for valid syntax etc. If strTo = "" Then %>
Enter your e-mail address:
Si el valor de la cookie va a ser una cadena de caracteres, entonces deberá estar entre comillas. También es crear una colección de cookies de forma que se puede tener múltiples valores almacenados en ellas. Para ellos basta con añadir una key, de la siguiente forma:
En este caso podemos crear una colección de cookies que almacene información relacionada entre sí:
Para conocer si una cookie almacena varios valores, existe la propiedad HasKeys que determina si una cookie contiene una colección. Siguiendo con el ejemplo, para conocer si nuestra cookie tiene varios valores, se haría de la siguiente forma:
Devolviendo el valor true si tiene keys, y false en caso contrario. Una consideración que el lector debe tener es que si se utiliza el mismo nombre para cookie que la que define nuestra colección pero sin especificar un valor (key), se sobreescribirán todas las cookies que existan con ese nombre.
De esta forma se puede ver que utilizando la colección Cookies del objeto Response, es posible enviar cookies a través de las cabeceras HTTP, es decir crear esos ficheros pequeños de textos que se graban en el ordenador del usuario y que contienen información acerca de su conexión con la página web.
Colección Cookies
La sintaxis para crear una cookie es la siguiente: Response.Cookies("nombre_cookie")[("clave")] = value
Nombre Tipo de valor Descripción Nombre_cokie String Cadena que delimitada por comillas establece el nombre del cookie que se crea. Clave String (opcional) Cadena que delimitada por comillas establece el nombre de la clave que se crea. Si se utiliza una clave la cookie contendrá un objeto del tipo Dictionary.
La colección Cookies dispone de cinco propiedades. La sintaxis para su uso es: Response.Cookies("cookie").property = propValue
Propiedades Propiedad Descripción Domain Indica que la cookie sólo es utilizada en el dominio en el cual fue creada. El valor por defecto es el actual dominio donde se encuentre la página ASP. Es una propiedad de solo lectura Expires Establece el tiempo de vida de la cookie. Si no se fija este parámetro la cookie será borrada cuando se cierre el navegador. Es una propiedad de sólo lectura. HasKeys Especifica que la cookie es un objeto Dictionary. Es una propiedad de sólo lectura. Path Si se establece esta propiedad, la cookie solo es enviada en respuesta a las peticiones de las páginas situadas en ese directorio. El valor por defecto es el directorio raíz del directorio virtual de páginas ASP. Es una propiedad de sólo lectura. Secure Especifica que la cookie es "segura". Una cookie es segura solamente si se está utilizando el protocolo HTTPS (HTTP sobre Secure Socket Layer, SSL)
Manteniendo la cookie Una vez que se ha creado una cookie, se queda almacenada en el disco duro del ordenador del usuario que está visitando la página web que la ha creado. El tiempo de vida de esta cookie está definido por dos parámetros diferentes: el primero de ellos, por el tiempo que dura la sesión, que normalmente se establece en 20 min.; y el segundo es mientras está abierto el navegador. En el momento en que se cierra, la cookie se destruirá por lo que no se habrá conseguido el efecto deseado, es decir almacenar una serie de datos de forma indefinida y que estén disponibles para otras veces.
También es posible borrar una cookie en un momento determinado porque ya no vaya a ser necesaria. Para ello se utiliza el atributo Expires, de la siguiente forma:
De esta forma, en la fecha establecida, la cookie dejará de estar disponible para ser consultada o actualizada por la página web que la creó. Si lo que se desea es que la cookie caduque de forma inmediata, bastaría con escribir:
La mejor forma de trabajar con las fechas en las que debe de caducar una cookie, es utilizando la instrucción Date(), ya que se puede crear una cookie que caduque dentro de un año exactamente, escribiendo:
O que sólo esté activa durante un solo día, por ejemplo:
En este caso la fecha de caducidad afecta a todas las claves de la cookie (nombre, apellido1 y apellido2). De la misma manera es posible borrar todas las cookies que sean necesarias, ya que se puede establecer una fecha de caducidad que ya ha pasado.
De esta forma, no aseguramos que esta cookie ya ha caducado y por lo tanto ya no se encuentra disponible.
Leer una cookie Una vez que ya se ha creado una cookie o una colección de ellas, utilizando el mismo nombre, y también se ha definido la fecha de caducidad con el fin de saber hasta cuando va a estar disponible, llega el momento de poder leer el fichero cookie y la información que contiene.
Si para crear la cookie se utiliza el objeto Response, para leer su contenido se hace, lógicamente con el objeto Request. Siguiendo con el ejemplo anterior, para recuperar los datos de la cookie "datos_personales", hay que escribir las siguientes líneas:
Esta líneas, hacen que obtengamos el valor de cada una de las claves de la cookie que se ha denominado "datos_personales". Aunque es operación de puede realizar de forma más precisa utilizando la propiedad HasKeys, vista anteriormente, ya que las claves que pueda tener una cookie pueden ser muchas más. Por ello, y para optimizar mejor el código, se puede realizar de la siguiente forma:
Lo primero que se hace es comprobar si la cookie que utilizamos tiene claves, mediante la propiedad HasKeys, que devolverá true si es así. A continuación, y sabiendo que se trata de una colección, se utiliza el bucle For...In...Each para obtener todos los valores que contiene e irlos presentando en pantalla.
Además del valor Expires, existen otro que también se pueden utilizar con las cookies. Aunque no son del todo necesarios y pueden ser útiles en algún momento. El atributo Domain, establece el dominio desde el que se genera la cookie, un ejemplo podría ser:
El otro atributo que se puede utilizar es Path, y define el directorio virtual donde se genera la cookie. Como recordará el lector un directorio virtual se establece en la configuración del IIS o PWS. Un ejemplo de cómo se utiliza sería el siguiente:
De esta forma, y habiendo configurado "usuarios" como nombre del directorio virtual, se fija el lugar desde el que se crea la cookie. Utilizando estos dos atributos, Domain y Path, es posible tener información en todo momento de donde se originan las cookies de nuestra web.
Utilizando las cookies Para ver el funcionamiento, en su conjunto, del uso de las cookies, vamos a realizar un sencillo ejemplo, para ello es necesario crear dos páginas. La primera de ellas contiene un formulario en el que el usuario deberá de introducir su nombre y dirección email, para poder acceder a la segunda página. Junto al formulario existe la opción de permitir grabar esos datos en una cookie con el fin de no tener que volver a escribirlos cada vez que se llegue a esa página (un sistema parecido al que tiene Hotmail, por ejemplo, para recordar el identificador y la clave de la cuenta de correo). La finalidad de recuperar los datos de una cookie que son necesarios para acceder a la segunda página, y así lo señalado el usuario.
En el Listado 1, se puede observar todo el código de la primera página. Está dividida en dos partes, la primera, comprueba si hay o no hay cookie creada anteriormente. Si no es así se piden los datos al usuario a través de formulario (segunda parte), si por el contrario ya está creada utiliza el método Redirect del objeto Response para ir a la segunda página.
Para comprobar la existencia de la cookie se utiliza el atributo HasKeys de forma que devuelve True si existe o False si aún no está creada.
Además de redireccionar hacia otra página se añade, también, una nueva variable denominada cookie, que será la que informe si se ha accedido a la segunda página a través del formulario (datos que habrá introducido el usuario) o leyendo la cookie ya creada.
La segunda página ASP es la que lee los datos, ya sean de la cookie o del formulario. Para ello se lee la variable cookie, que se ha añadido a la URL, utilizando como ya conoce el lector el método QueryString del objeto Response.
Los datos que se obtienen del formulario van a ser los que se utilicen para crear la cookie. La forma de hacerlo es la siguiente:
Si el usuario ha decido guardar los datos (variable guardar_usuario es on), se crea una cookie que va a contener una colección de dos claves (nombre y email). De esta forma la cookie que almacene el nombre será la variable nombre que viene del formulario y la cookie de email será la que haya tecleado el usuario en el formulario. Como recuerda el lector, para obtener los datos de un formulario en el que se ha utilizado el método Post, se utiliza el método Form (recuerde el lector: QueryString cuando el método empleado es Get).
Al final del código de la segunda página se han añadido unas líneas que informan al usuario si se ha accedido a través del formulario o leyendo los datos almacenados en la cookie.
Información de acceso obtenida a través de una cookie
Información obtenida a través del formulario
Objeto FileSystemObject Los objetos vistos a lo largo de este curso nos permiten realizar acciones con información que se encuentra en una base de datos, que se va generando a lo largo de la página o bien que es introducida por el usuario a través de un formulario. Pero además de estas formas, existe otra fuente de origen de estos datos y es el propio servidor web en el que se encuentran alojadas las páginas. Este servidor almacena también otros ficheros distintos que están recogidos dentro de carpetas (directorios) y que todo ello está almacenado en una unidad de disco, que puede ser local o remota.
Poder acceder a estos elementos, tanto a su contenido como a información relacionado con ellos existe un objeto que provee al programador de una gran herramienta, ya que le permite acceder a ficheros, directorios y unidades desde una simple página ASP y todo ello utilizando la tecnología cliente/servidor. Con esto es posible, por ejemplo, saber qué espacio le queda al disco duro del servidor y si este dato es inferior de uno ya establecido nos lo notifique mediante un mensaje de email, o si existen demasiados ficheros en un directorio, poder mover el contenido de una carpeta a otra, o que podamos controlar de forma remota que usuarios dejan qué ficheros en el servidor, y todo ello sin necesidad de estar delante del servidor y utilizando tan sólo un navegador de Internet.
Objeto FileSystemObject Métodos Nombre Tipo de valor Descripción BuildPath String Cadena que delimitada por comillas establece el nombre del cookie que se crea. CopyFile
Copia un fichero CopyFolder
Copia una carpeta CreateFolder Folder Crea una carpeta CreateTextFile TextStream Crea un fichero con el objeto TextStream. DeleteFile
Borrar un fichero DeleteFolder
Borra una carpeta DriveExists Boolean Comprueba si existe una unidad FileExists Boolean Comprueba si existe un fichero FolderExists Boolean Comprueba si existe una carpeta GetAbsolutePathName String Devuelve la ruta absoluta GetBaseName String Devuelve el nombre de una ruta GetDrive Drive Devuelve la letra de una unidad GetDriveName String Devuelve el nombre de una unidad GetExtensionName String Devuelve la extensión de una ruta GetFile File Devuelve un fichero GetFileName String Devuelve el nombre de un fichero GetFolder Folder Devuelve una carpeta GetParentFolderName String Devuelve el camino a la carpeta superior GetSpecialFolder Folder Devuelve la ruta de varias carpetas del sistema GetTempName String enera un nombre que puede ser usado por un fichero temporal MoveFile
Mueve un fichero MoveFolder
Mueve una carpeta OpenTextFile TextStream Abre un fichero con el objeto TextStream
Colecciones Nombre Tipo de valor Descripción MoveFile Drives
Todo esto es posible utilizando el objeto, ya incorporado en la instalación de IIS o PWS denominado FilesystemObject. Este objeto tiene un modelo de objeto que consta de tres colecciones y tres objetos que hacen referencia a la jerarquía que a su vez contiene: unidades, carpetas y ficheros. Las colecciones son:
Drivers: que contiene un objeto Drive por cada una de las unidades que existen (incluye las unidades locales, fijas y removibles) Folders: contiene la colección de objetos Folder. Files:que contiene todos los objetos File por cada uno de los ficheros que hay en la carpeta seleccionada.
Los objetos son:
Drive: que contiene información acerca de la unidad consultada (espacio libre, nombre del volumen, tipo de sistema de ficheros –FAT,NTFS, etc.–). La mayoría de información es de "solo lectura". Folder: permite acceder a todas las propiedades de la carpeta que incluye el nombre de la misma, la colección de ficheros que contiene, tamaño, etc. File: que es el objeto de más bajo nivel dentro de la jerarquía El uso de este objeto permite saber toda la información del mismo, además de poder moverlo, copiarlo o incluso borrarlo del disco.
Por todo esto podemos decir que el comportamiento de FileSystemObject junto a todas sus colecciones, propiedades, y métodos permite realizar todo lo que se puede hacer con el Explorador de Windows o File Manager.
En el Listado 4 se puede ver un ejemplo de cómo actúa este objeto para, en este caso, mostrar por pantalla un listado de ficheros que contiene una carpeta específica, incluyendo otros datos como son su tamaño y fecha de la última modificación.
Lo primero que es necesario conocer es la ruta o situación de la carpeta (denominado ruta física) que queremos comprobar. Para ello primero obtenemos la ruta virtual del fichero, que en este ejemplo corresponde a /entrega6/mostrardirectorio.asp. La ruta virtual hace referencia a la situación del fichero con respecto al servidor web. Con esta información es sencillo conocer la ruta física utilizando el método MapPath del objeto Server, que como resultado devolverá E:\Inetpub\scripts\pcworld\entrega6\mostrardirectorio.asp.
Una vez conocida la situación del fichero que está dentro de la carpeta que se quiere visualizar su contenido, comenzamos a utilizar el objeto FileSystemObject, creando una instancia del mismo. Fíjese el lector que en este caso no es necesario hacer referencia al objeto Server (como hasta ahora se había realizado) a la hora de realizar la instancia.
Set objFSO = CreateObject("Scripting.FileSystemObject")
Ahora es necesario relacionar el fichero que se ha seleccionado con el directorio que se desea ver. Para ello se utiliza el método GetFile que utiliza como argumento una ruta física de un fichero y devuelve un objeto del tipo File. Es necesario tener un objeto File ya que nos permite conocer información acerca de ese fichero en particular.
Una vez que se tiene el objeto File que representa al fichero, se utiliza una propiedad de este objeto denominada ParentFolder. Esta propiedad nos devuelve una referencia a un objeto Folder que representa la carpeta en la que se encuentra el fichero, cuando se la da como argumento un objeto válido de tipo File. Para comprobar los ficheros que hay en ese directorio se utiliza la colección Files, que en este caso funciona como propiedad del objeto Folder. Esta colección es un conjunto de objetos del tipo Files: uno por cada uno de los ficheros que hay en el directorio.
Para visualizar todos los ficheros de esta carpeta, y como se trata de una colección se utiliza la sentencia For...Each...In. Este bucle recorrerá todos los ficheros, uno por uno, usando la variable objFileItem. Ahora tan sólo queda obtener la información desea por pantalla utilizando tres de las propiedades del objeto File: Name, que devuelve el nombre del fichero; size, devuelve el tamaño del fichero en bytes; y DateLastModified, que devuelve la fecha y hora de la última modificación.
De esta forma y formateando los resultados en una tabla con tres columnas, una para cada dato, se obtiene un listado de todos los ficheros que hay en la carpeta en la que se encuentra el fichero del ejemplo.
Para que el lector pueda practicar con este ejemplo y vea las posibilidades del mismo, puede utilizar un directorio fijado de antemano junto a un fichero. De esta forma, si establece el valor de strPhysicalPath="c:\windows\win.ini", por ejemplo, obtendrá un listado de todos los ficheros que están guardados dentro de la carpeta de Windows. Correcto paso de datos a través de la URL Server.URLEncode Cuando utilices páginas con paso de variables entre ellas (como parámetros en la URL) es importante que tengas en cuenta que el navegador Netscape no será capaz de interpretar caracteres especiales como espacios, guiones, o la letra Ñ. Esta caracteristica puede evitarse utilizando el método URLencode del objeto server mediante la cual se puede formatear cualquier cadena con caracteres de escape que serán correctamente procesados por los dos navegadores más conocidos del mercado.

XML


XML, sigla en inglés de Extensible Markup Language («lenguaje de marcas extensible»), es un metalenguaje extensible de etiquetas desarrollado por el World Wide Web Consortium (W3C). Es una simplificación y adaptación del SGML y permite definir la gramática de lenguajes específicos (de la misma manera que HTML es a su vez un lenguaje definido por SGML). Por lo tanto XML no es realmente un lenguaje en particular, sino una manera de definir lenguajes para diferentes necesidades. Algunos de estos lenguajes que usan XML para su definición son XHTML, SVG, MathML.
XML no ha nacido sólo para su aplicación en
Internet, sino que se propone como un estándar para el intercambio de información estructurada entre diferentes plataformas. Se puede usar en bases de datos, editores de texto, hojas de cálculo y casi cualquier cosa imaginable.
XML es una
tecnología sencilla que tiene a su alrededor otras que la complementan y la hacen mucho más grande y con unas posibilidades mucho mayores. Tiene un papel muy importante en la actualidad ya que permite la compatibilidad entre sistemas para compartir la información de una manera segura, fiable y fácil.




Comenzamos explicando los comentarios, las secciones CData, los elementos y las referencias a entidades de un documento XML.
Comentarios Los comentarios en los documentos XML empiezan por . Pueden contener cualquier cadena de texto excepto el literal --. Pueden colocarse en cualquier parte del documento.




Ej: Secciones CData




Le indican al parser que ignore todos los caracteres de marcas que se encuentren en el interior de esta/s sección/es. (ed, son como comentarios a lo bestia) Son muy útiles cuando queremos (x ej. a modo de tutorial) visualizar código XML como parte del texto. Todos los caracteres que existan entre son pasados directamente a la aplicación sin interpretación. El único literal q no puede ser utilizado dentro de la sección es, lógicamente, el ]]>.




Ej. *p=&q->campo; a=(x ]]>




Elementos Son las etiquetas más frecuentemente utilizadas dentro de un documento XML. Están delimitadas por los símbolos <>, sintaxis de todos conocida, puesto q era la usada en HTML. Si el contenido de la etiqueta es vacío (al igual q
ó en HTML), entonces se delimitan por los símbolos <>.




Las etiquetas de apertura (las que empiezan por >) pueden incluir atributos, los cuales son pares nombre/valor al estilo color="verde". (x ej, en HTML ). OJO!! En XML los atributos siempre deben ir encerrados entre comillas dobles.




Ejs: Perez Referencias a entidades Las entidades(entity) se usan en XML básicamente como representación alternativa de los caracteres especiales (como por ejemplo las comillas dobles ó la marca de apertura en un elemento), aunque también pueden emplearse para incluir el contenido de otros documentos ó para hacer referencia a trozos de texto repetitivos. Sintaxis: &xxx; donde xxx es el nombre de la entidad, y , &xxx; es la manera de referirse a la entidad.




Ej: é ----> Representa al símbolo é. Existe una referencia a entidades "especial", denominada referencia a caracteres. Ésta se usa para representar caracteres que no pueden ser escritos desde el teclado. No tienen un nombre de cadena (como eacute x ej) sino q su nombre es, ó un nº decimal, ó un nº hexadecimal.




Ej: & Tambien se pueden crear constantes (ó macros) para que no nos tengamos q acordar de los numeross. Para ello usamos la definición "real" de entidad:




Ej: Para referenciarlo: &amp.

martes, 20 de mayo de 2008

E-COMMERCER

Origen y evolución histórica
El comercio aparece desde que comienzan las relaciones humanas y el hombre se da cuenta de que no es autosuficiente. Por lo tanto necesita intercambiar bienes o servicios con otros para asegurar su propia subsistencia.
Lo que ocurre es que los métodos de "comerciar" han ido evolucionando a lo largo de la historia, a la vez que la propia humanidad ha progresado y evolucionado también. No vamos a perdernos en todas las evoluciones del comercio, puesto que nos ocuparía mucho. Veremos las recientes evoluciones, que han desembocado en el comercio electrónico.
A principio de los años 1920 en Los Estados Unidos apareció la venta por catálogo, impulsado por las grandes tiendas de mayoreo. Este sistema de venta, revolucionario para la época, consiste en un catálogo con fotos ilustrativas de los productos a vender. Este permite tener mejor llegada a las personas, ya que no hay necesidad de tener que atraer a los clientes hasta los locales de venta. Esto posibilitó a las tiendas poder llegar a tener clientes en zonas rurales, que para la época que se desarrollo dicha modalidad existía una gran masa de personas afectadas al campo. Además, otro punto importante a tener en cuenta es que los potenciales compradores pueden escoger los productos en la tranquilidad de sus hogares, sin la asistencia o presión, según sea el caso, de un vendedor. La venta por catálogo tomó mayor impulso con la aparición de las tarjetas de crédito; además de determinar un tipo de relación de mayor anonimato entre el cliente y el vendedor.
A principio de los años 1970, aparecieron las primeras relaciones comerciales que utilizaban una computadora para transmitir datos. Este tipo de intercambio de información, sin ningún tipo de estándar, trajo aparejado mejoras de los procesos de fabricación en el ámbito privado, entre empresas de un mismo sector.
A mediados de 1980, con la ayuda de la televisión, surgió una nueva forma de venta por catálogo, también llamada venta directa. De esta manera, los productos son mostrados con mayor realismo, y con la dinámica de que pueden ser exhibidos resaltando sus características. La venta directa es concretada mediante un teléfono y usualmente con pagos de tarjetas de crédito.
En 1995 los países integrantes del G7/G8 crearon la iniciativa Un Mercado Global para PYMEs, con el propósito de acelerar el uso del comercio electrónico entre las empresas de todo el mundo durante el cual se creó el portal pionero en idioma español Comercio Electrónico Global.

Ventajas

Ventajas para las empresas
Mejoras en la distribución: La Web ofrece a ciertos tipos de proveedores (industria del libro, servicios de información, productos digitales) la posibilidad de participar en un mercado interactivo, en el que los costos de distribución o ventas tienden a cero.
Por poner un ejemplo, los productos digitales (software) pueden entregarse de inmediato, dando fin de manera progresiva al intermediarismo.
También compradores y vendedores se contactan entre sí de manera directa, eliminando así restricciones que se presentan en tales interacciones.
De alguna forma esta situación puede llegar a reducir los canales de comercialización, permitiendo que la distribución sea eficiente al reducir sobrecosto derivado de la uniformidad, automatización e integración a gran escala de sus procesos de administración.
De igual forma se puede disminuir el tiempo que se tardan en realizar las transacciones comerciales, incrementando la eficiencia de las empresas.
Comunicaciones comerciales por via electrónica: Actualmente, la mayoría de las empresas utiliza el Web para informar a los clientes sobre la compañía, aparte de sus productos o servicios, tanto mediante comunicaciones internas como con otras empresas y clientes.
Sin embargo, la naturaleza interactiva de la Web ofrece otro tipo de beneficios conducentes a desarrollar las relaciones con los clientes.
Este potencial para la interacción facilita las relaciones comerciales, así como el soporte al cliente, hasta un punto que nunca hubiera sido posible con los medios tradicionales.
Un sitio Web se encuentra disponible las 24 horas del día bajo demanda de los clientes.
Las empresas que realizan comercio electrónico, pueden fidelizar a sus clientes mediante un diálogo asincrónico que sucede a la conveniencia de ambas partes.
Esta capacidad ofrece oportunidades sin precedentes para ajustar con precisión las comunicaciones a los clientes individuales, facilitando que éstos soliciten tanta información como deseen ("marketing one to one").
Además, esto permite que los responsables del área marketing y ventas, obtengan información relevante de los clientes con el propósito de servirles de manera eficaz en las futuras relaciones comerciales.
Los sitios Web más sencillos involucran a los clientes mediante botones para enviar mensajes de correo electrónico a la empresa.
En otros centros más sofisticados, los clientes rellenan formularios, con el objeto de que desarrollen una relación continua con la compañía, cuyo fin es informar tanto sobre los productos y servicios como obtener información sobre las necesidades que los clientes tienen sobre los mismos.
De esta manera, se obtiene publicidad, promoción y servicio al cliente a la medida.
El Web también ofrece la oportunidad de competir sobre la base de la especialidad, en lugar de hacerlo mediante el precio, ya que desde el punto de vista del mercadeo, rara vez es deseable competir tan sólo en función del precio.
El comercio electrónico intenta satisfacer las necesidades de los clientes en base a los beneficios que buscan, lo que quiere decir que el precio depende de la valorización del cliente, y no de los costos; tales oportunidades surgen cuando lo ofrecido se diferencia por elementos de mercadeo distintos al precio, lo cual produce beneficios cargados de valor, como por ejemplo, la comodidad producida por el reparto directo mediante la distribución electrónica de software.
Beneficios operacionales: El uso empresarial del Web reduce errores, tiempo y sobrecostos en el tratamiento de la información. Los proveedores disminuyen sus costos al acceder de manera interactiva a las bases de datos de oportunidades de ofertas, enviar éstas por el mismo medio, y por último, revisar de igual forma las concesiones; además, se facilita la creación de mercados y segmentos nuevos, el incremento en la generación de ventajas en las ventas, la mayor facilidad para entrar en mercados nuevos, especialmente en los geográficamente remotos, y alcanzarlos con mayor rapidez. Todo esto se debe a la capacidad de contactar de manera sencilla y a un costo menor a los clientes potenciales, eliminando demoras entre las diferentes etapas de los subprocesos empresariales.

Usos del comercio electrónico
El comercio electrónico puede utilizarse en cualquier entorno en el que se intercambien documentos entre empresas: compras o adquisiciones, finanzas, industria, transporte, salud, legislación y recolección de ingresos o impuestos. Ya existen compañías que utilizan el comercio electrónico para desarrollar los aspectos siguientes:
Creación de canales nuevos de marketing y ventas.
Acceso interactivo a catálogos de productos, listas de precios y folletos publicitarios.
Venta directa e interactiva de productos a los clientes.
Soporte técnico ininterrumpido, permitiendo que los clientes encuentren por sí mismos, y fácilmente, respuestas a sus problemas mediante la obtención de los archivos y programas necesarios para resolverlos.
Mediante el comercio electrónico se intercambian los documentos de las actividades empresariales entre socios comerciales. Los beneficios que se obtienen en ello son: reducción del trabajo administrativo, transacciones comerciales más rápidas y precisas, acceso más fácil y rápido a la información, y reducción de la necesidad de reescribir la información en los sistemas de información.
Los tipos de actividad empresarial que podrían beneficiarse mayormente de la incorporación del comercio electrónico son:
Sistemas de reservas. Centenares de agencias dispersas utilizan una base de datos compartida para acordar transacciones.
Existencias comerciales. Aceleración a nivel mundial de los contactos entre mercados de existencias.
Elaboración de pedidos. Posibilidad de referencia a distancia o verificación por parte de una entidad neutral.
Seguros. Facilita la captura de datos.
Empresas que suministran a fabricantes. Ahorro de grandes cantidades de tiempo al comunicar y presentar inmediatamente la información que intercambian.


martes, 22 de abril de 2008

PAGE RANK


(PAGE RANK):

PageRank es una marca registrada y patentada por Google el 9 de enero de 1999 que ampara una familia de algoritmos utilizados para asignar de forma numérica la relevancia de los documentos (o páginas web) indexados por un motor de búsqueda. Sus propiedades son muy discutidas por expertos en optimización de motores de búsqueda. El sistema PageRank es utilizado por el popular motor de búsqueda Google para ayudarle a determinar la importancia o relevancia de una página. Fue desarrollado por los fundadores de Google, Larry Page y Sergey Brin, en la Universidad de Stanford.
El algoritmo inicial del PageRank lo podemos encontrar en el documento original donde sus creadores presentaron el prototipo de Google: “The Anatomy of a Large-Scale Hypertextual Web Search Engine":

PR(A) = (1 − d) + d(PR(T1) / C(T1) + ... + PR(Tn) / C(Tn)

Donde PR(A) es el PageRank de la página A;PR(Ti) es el PageRank de las páginas Ti que enlazan a A,;C(Ti) es el número de enlaces salientes de la página Ti; y d es un factor variable que puede estar entre 0 y 1.

PageRank confía en la naturaleza democrática de la web utilizando su vasta estructura de enlaces como un indicador del valor de una página en concreto. Google interpreta un enlace de una página A a una página B como un voto, de la página A, para la página B. Pero Google mira más allá del volumen de votos, o enlaces que una página recibe; también analiza la página que emite el voto. Los votos emitidos por las páginas consideradas "importantes" valen más, y ayudan a hacer a otras páginas "importantes".

Es decir, el puesto de una página es el resultado de una "votación" entre todas las demás páginas de la World Wide Web acerca del nivel de importancia que tiene esa página. Un hiperenlace a una página cuenta como un voto de apoyo. El PageRank de una página se define recursivamente y depende del número y PageRank de todas las páginas que la enlazan. Una página que está enlazada por muchas páginas con un PageRank alto consigue también un PageRank alto. Si no hay enlaces a una página web, no hay apoyo a esa página específica. El PageRank de la barra de Google va de 0 a 10. Diez es el máximo PageRank posible y son muy pocos los sitios que gozan de esta calificación, 1 es la calificación mínima que recibe un sitio normal, y cero significa que el sitio ha sido penalizado o aún no ha recibido una calificación de PageRank. Parece ser una escala logarítmica. Los detalles exactos de esta escala son desconocidos.
Una alternativa al algoritmo PageRank propuesto por Jon Kleinberg, es el algoritmo HITS.

Técnicas de Accesibilidad Web

(Técnicas de Accesibilidad Web)

La accesibilidad web se refiere a la capacidad de acceso a la Web y a sus contenidos por todas las personas independientemente de la discapacidad (física, intelectual o técnica) que presenten o de las que se deriven del contexto de uso (tecnológicas o ambientales). Esta cualidad está íntimamente relacionada con la usabilidad.
Cuando los sitios web están diseñados pensando en la accesibilidad, todos los usuarios pueden acceder en condiciones de igualdad a los contenidos. Por ejemplo, cuando un sitio tiene un código XHTML semánticamente correcto, se proporciona un texto equivalente alternativo a las imágenes y a los enlaces se les da un nombre significativo, esto permite a los usuarios ciegos utilizar lectores de pantalla o líneas Braille para acceder a los contenidos. Cuando los vídeos disponen de subtítulos, los usuarios con dificultades auditivas podrán entenderlos plenamente. Si los contenidos están escritos en un lenguaje sencillo e ilustrados con diagramas y animaciones, los usuarios con dislexia o problemas de aprendizaje están en mejores condiciones de entenderlos.
Si el tamaño del texto es lo suficientemente grande, los usuarios con problemas visuales puedan leerlo sin dificultad. De igual modo, el tamaño de los botones o las áreas activas adecuado puede facilitar su uso a los usuarios que no pueden controlar el ratón con precisión. Si se evitan las acciones que dependan de un dispositivo concreto (pulsar una tecla, hacer click con el ratón) el usuario podrá escojer el dispositivo que más lo convenga.

Las limitaciones en la accesibilidad de los sitios Web pueden ser:


Visuales: En sus distintos grados, desde la baja visión a la ceguera total, además de problemas para distinguir colores (Daltonismo).


Motrices: Dificultad o la imposibilidad de usar las manos, incluidos temblores, lentitud muscular, etc, debido a enfermedades como el Parkinson, distrofia muscular, parálisis cerebral, amputaciones...


Auditivas: Sordera o deficiencias auditivas.


Cognitivas: Dificultades de aprendizaje (dislexia, dyscalculia, etc) o discapacidades cognitivas que afecten a la memoria, la atención, las habilidades lógicas, etc.

SEARCH ENGINE OPTIMIZATION



(SEARCH ENGINE OPTIMIZATION):

El posicionamiento en buscadores o posicionamiento web es el resultado de la recuperación de información en la base de datos de los grandes Motores de Búsqueda de Internet por el uso de algoritmos de búsqueda en el software.
La tarea de ajustar la información de las paginas que se pretenden hacer aparecer en primeras posiciones de los resultados es conocida como SEO, sigla en inglés de Search Engine Optimization, optimización para motores de búsqueda. Consiste en aplicar diversas técnicas tendientes a lograr que los buscadores de Internet sitúen determinada página web en una posición y categoría alta (primeras posiciones) dentro de su página de resultados para determinados términos y frases clave de búsqueda. También es entendido como las técnicas de desarrollo web que tengan como objetivo mejorar la posición de un determinado sitio web por sus páginas en la lista de resultados de los Motores de Búsqueda que en inglés se identifican como SERPs y forma parte de la jerga de los webmasters hispanohablantes.
La aplicación de técnicas SEO es intensa en sitios web que ofertan productos o servicios con mucha competencia, buscando el posicionar determinadas páginas sobre las de sus competidoras en la lista de resultados (SERPs).
Estrictamente hablando, se posicionan URLs de páginas. Los sitios logran buen posicionamiento como una consecuencia.
Las técnicas SEO pueden ser desmedidas y afectar los resultados naturales de los grandes buscadores por lo que si incumplen las cláusulas y condiciones de uso de los mismos pueden ser consideradas, en algunos casos, como una forma de SPAM, el spamdexing.
El trabajo es amplio, ya que el posicionamiento involucra al código de programación, al diseño y a los contenidos. También nos referimos a SEO para definir las personas que realizan este tipo de trabajo.
Actividades para mejorar el posicionamiento en buscadores:

* Conseguir que otras webs de temática relacionada enlacen con tu web:
Para ello es interesante realizar una búsqueda para aquellos términos que consideras deberían llevar tráfico a tu web y estudiar cuales de ellos tienen un contenido complementario. Si por ejemplo quieres posicionarte por el término "peluquería madrid" puede ser interesante intentar conseguir enlaces de peluquerías de otras ciudades. La temática será similar y no corres el riesgo de canibalización.

* Darse de alta en directorios importantes como Dmoz, Yahoo!.

* Los directorios han perdido mucho interés en los buscadores pero siguen siendo un buen punto de partida para conseguir enlaces o un primer rastreo de tu web por los buscadores. Ambas requieren de un filtro humano para su inclusión lo que asegura la calidad de las web añadidas, pero también ralentiza y dificulta su inclusión.

* Registrarse y participar en foros, de preferencia en foros temáticos relacionados a la actividad de su página web. La frecuente participación tiene que ir acompañado de aporte real y valioso como para ser tomado en cuenta como un usuario calificado, el detalle del éxito para conseguir visitas y aumentar el posicionamiento es el enlace hacia su página web presentado en su firma.

* Ahora hay cientos de redes sociales, por ejemplo Hi5, Facebook, Orkut, entre cientos de comunidades en las cuales poder participar y obtener visitas de nuestros nuevos "amigos".

* Crear contenidos con textos que contienen frases con que buscan los usuarios web los servicios y/o productos de este sitio. Para hacer la investigacion de las frases es importante de usar la base de datos de los buscadores como Overture.

* Hacer nuestra web lo más accesible posible: limitar contenido en flash, frames, javascript...

* Los frames, el javascript o las páginas en flash no permiten el rastreo / seguimiento de la información por parte del robot en las diferentes páginas o secciones. Para ellos son un espacio plano por el cual no se puede navegar.

* Crear títulos únicos y descripciones pertinentes del contenido de cada página.

* Cada página es una tarjeta de presentación para el buscador. Los Title y Description son puntos de partida para la identificación de los términos relevantes a lo largo de la web por los buscadores.

* Enlazar internamente las páginas de nuestro sitio de manera ordenada y clara.

* Un sitemap (tanto el de google como uno presente en el site) nos permitirá dar paso al buscador por las diferentes secciones del site de una forma ordenada, mejorando su visibilidad.

* Actualizar la página con contenido original de calidad.

* Intercambio de contenido.