AddThis Feed Button
AddThis Social Bookmark Button
IMGP1165
IMGP1166
IMGP1143
IMGP1144
IMGP1145
IMGP1146
IMGP1147
IMGP1148
IMGP1149
IMGP1150
Categories

This Month Last Year

Julio 2008
L M X J V S D
« Jun «-»  
 123456
78910111213
14151617181920
21222324252627
28293031  
links
01
Jul

Cuando te aburres…. Errores de Window!!! XD

Me aburria (otra vez) en el curro, y me puse a mirar algunas cosillas.. Y no se… me hicieron gracia y quise compartirlos bla bla bla
y esas cosas:

Errores de Windows

PD: no todos son reales (creo que se nota) pero algunos (igual de increibles) si lo son (doy Fe) XD

Via: http://todosmientenmenosyo.blogspot.com/


18
Jun

ASP.NET y la navegación entre páginas

ASP

Cuando trabajamos con ASP.NET lo mas normal es que nuestra aplicación este dividida en mas de un WebForm.
Esto conlleva que en más de una ocasión necesitaremos ir de una página a otra, y para realizar esa "navegación", tenemos opciones claramente diferenciadas:

Server.Transfer(): +1 Sobrecargas

Finaliza la ejecución de la página actual y comienza la ejecución de una nueva página para la solicitud actual.

Response.Redirect(): +1 Sobrecargas

Redirecciona un cliente a una nueva dirección URL. Especifica la nueva URL y si la ejecución de la página actual debe finalizar.

Server.Execute(): +1 Sobrecargas

Ejecuta la solicitud actual utilizando otra página ubicada en la ruta de acceso a la dirección URL especificada.

Los comportamientos de estas tres opciones pueden parecer similares a priori, pero si nos sumergimos un poco más en su funcionamiento veremos en que contexto debe usarse cada una.

Server.Transfer()

Al ejecutar este método se abandonará la página actual y se navegará a la introducida en el parámetro. Al realizarse esta operación, no se mostrará la URL de la nueva pagina, si no que se mantendrá la actual. Lo que "ocultara" de cara al usuario la ubicación de la página en la que se encuentra.

Su característica mas destacada, es que si utilizamos su sobrecarga podemos decirle si va a mandar el conjunto de controles que tenemos en la principal.


Server.Transfer("pagina2.aspx",true)


Si por ejemplo teníamos un formulario con un TextBox en la página principal, ahora podemos acceder al texto que contenía cuando se hizo la navegación. Para ello utilizaremos el nombre o el índice del control (hay que tener en cuenta, que si el control no existe, al intentar obtenerlo devolverá una excepción.):

\r\n


string cadena = Request.Form["NombreControl"];



string cadena = Request.Form[indice];


Otra de las peculiaridades de este método, es que como la redirección conlleva enviar objetos de servidor, no permite redirigir a URL\’s ajenas a la aplicación (como a Google o sucedáneos) ni a URL’s de HTML plano incluso si están incluidas dentro de la aplicación. Por tanto si fuera necesario, deberíamos crear un WebForm.aspx estándar e incluir dentro el HTML que necesitemos.

Response.Redirect()

Al ejecutar este método se abandonará la página actual y se navegará a la página introducida por parámetro, permitiendo además la posibilidad de que se mantenga la ejecución de esa página.

Es decir, ante dos botones con un código como este:


private void btnRedirigir_Click(object sender, System.EventArgs e) {
Response.Redirect("prueba.aspx",false);
Session["nombre"] == “Texto”;
}

private void btnRedirigir2_Click(object sender, System.EventArgs e){
Response.Redirect(”prueba.aspx”);
Session["nombre"] == “Texto”;
}

Al llegar al Page_Load de la página prueba.aspx, veremos que si habíamos pulsado el primer botón, tendremos almacenado en Session["nombre"] la cadena "Texto", mientras que si se utilizó el segundo botón ese objeto de sesión no existe.

Además de esto, se puede utilizar la redirección utilizando las variables por URL (como las $_GET de PHP). Es tan simple como crear la string con esas variables ya incluidas.


string querystring = "prueba.aspx?p=" + variable1.ToString() + "&q=" + variable2.ToString();
Response.Redirect(querystring);


Estas se almacenan en la Request y se puede acceder a ellas fácilmente:


int valor1 = Convert.toInt32(Request.Params["p"]);
int valor2 = Convert.toInt32(Request.Params["q"]);

Al igual que cuando se almacenan objetos en sesión, hay que realizar un casting ya que todo se guarda como object.

Al contrario que el Server.Transfer, este método si permite redirigir a una página externa (como un hipervínculo) y si que se ve la URL de la página al cargarse.

Server.Execute()

Esta es la opción menos recomendada, ya que no redirige físicamente, si no que ejecuta el código de la segunda pagina dentro de la primera. Su uso más habitual se basa en insertar un control de tipo Literal en la página principal, y ejecutar una segunda página a través de un StringWriter (que requiere un añadir un using del namespace System.IO), y que el resultado se almacene en el Literal. Por ejemplo:

StringWriter sw = new StringWriter();
Server.Execute(”prueba.aspx”,sw);
this.Literal1.Text = sw.ToString();

Si en prueba.aspx almacenamos el código de un Input TextBox y un Input Button dentro de un Panel, al ejecutar ese método obtendremos ese mismo conjunto de controles sin tener que ir físicamente a la página.


15
Jun

A Preguntas Estúpidas,Respuestas Estúpidas.

Un poco de humor de la red para no aburrirse.

El siguiente vinculo contiene preguntas que hicieron futuros turistas en la página oficial de la Oficina de Turismo de Australia. Las respuestas son reales de gente que trabaja allí.

http://brixtatothepower.wordpress.com/2007/06/08/mas-capulladas/

Via: http://brixtatothepower.wordpress.com


12
Jun

6 Razones para no incluir una Pagina de Presentación en tu sitio web

Hoy viendo los blogs encontré 6 razones por las que no poner una pagina de presentación en la web. Me ha echo gracia ya que he tenido hace poco esta misma conversación sobre los pros y los contras de este tipo de paginas, y donde se deberían poner y donde no.

Aqui os dejo el resumen:

Los Motores de b&úacute;squeda no van a poder indexar tus paginas interiores:
Si tu pagina de presentación esta hecha por completo en flash, los motores de b&úacute;squeda no van a poder seguir los enlaces en ella y por ende no van a poder indexar las paginas internas del sitio.

La mayoría de los usuarios hace click en saltear presentación:
¿Cuantas veces entraste en un sitio, vistes que tenia pagina de presentación y buscaste un link que diga “Saltear Presentación”? En mi caso es siempre, jamas me pare a ver una pagina de presentación y puedo asegurar que la gran mayoría de los usuarios hace lo mismo que yo hago.

Las conexiones mas lentas van a tener que esperar a que termine de cargar todo:
Si bien actualmente las conexiones a Internet son bastantes rápidas, aun hay mucha gente que tiene conexiones a Internet de baja velocidad, lo que produce que la pagina de presentación cargue muy lentamente. Cuando esto me sucedía simplemente cerraba la pagina.

Es una razón mas para que los visitantes dejen tu sitio:
usar una pagina de presentación, es darle a tus visitantes una posibilidad mas para que dejen tu sitio web.

“Haz click para entrar” es redundante:
Si llegamos hasta esa pagina es porque queremos entrar al sitio ¿o no?

Normalmente el diseño no esta uniformado:
La gran mayoría de las veces el diseño que se presenta en la pagina de presentación es completamente distinto al de la verdadera pagina principal del sitio, lo que produce confusión en el visitante, que muchas veces piense que ese no era el sitio que estaba navegando y que lo cierre.

Creo que quedo mas que claro que no conviene usar Paginas de Presentación en nuestros sitios web.

Via: http://www.estebanpanzera.com/6-razones-para-no-incluir-una-pagina-de-presentacion-en-tu-sitio-web/trackback/


10
Jun

Software Recomendado (II)

MySQL
Visitando la Bitácora del Webmaster me reencontré con un programa que me fue muy útil en el pasado y que había olvidado su existencia. Se trata del Access to MySQL. Como su propio nombre indica, convertirá cualquier base de datos de Access en un script (.sql) optimizado para MySQL, o directamente puede crear el esquema en el servidor de MySQL si le das los parámetros de conexión. Muy práctico de cara a migrar información.

Podéis descargarlo de aquí. ya que la web del autor esta offline. Requiere el ODBC de MySQL (el 2.50 para versiones inferiores de MySQL 4.x y el 3.5.1 para superiores).


Entradas siguientes »