jueves, 27 de marzo de 2014

HTML crear un link a la página principal, enlace a la home

Buenas a todos!
Para crear un link a la Home o a la página principal sólo hay que indicar la dirección como "/", esto indica al navegador que el enlace va al dominio principal:

<a href="/">Home</a>

Y ya está!

PHP: Problema session_start()

Buenas a todos!
Hay varias razones por las que session_start() puede generar problemas, la más común es debido a la codificación de carácteres del archivo .php en cuestión, si trabajamos con UTF-8, hay que asegurarse de que sea una codificación UTF-8 sin BOM, ya que de lo contrario se añaden unos carácteres antes de la declaración de session_start() y eso genera un error.

Los errores que suele indicarnos el servidor son:
Warning: Cannot modify header information - headers already sent by ...
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent ...

Para ver qué codificación está usando nuestro archivo php, podemos emplear el Notepad++.
En la pestaña Codificación podemos cambiar la codificación de nuestro archivo a UTF-8 sin BOM.

Esto debería solucionar vuestro problema en caso de que fuera un tema de codificación.

Tened en cuenta de que session_start() debe ser la primera línea que escriba en el fichero php, ya que escribe los headers, no podéis poner ninguna instrucción de tipo echo antes que session_start(), eso también puede generar este tipo de errores.

Un saludo a todos!

miércoles, 19 de marzo de 2014

PHP: Borrar una variable de la sesión

Buenas a todos!
Borrar variables de la sesión en PHP puede ser algo muy importante, sobretodo en portales donde se deben reestablecer los valores iniciales del portal, o bien durante las etapas de desarrollo en las que debemos hacer pruebas constantes.

Por ejemplo, supongamos que tenemos una tienda virtual y hemos ido acumulando productos en una variable de sesión llamada 'cart', y una vez el cliente realiza el pago final debemos eliminar esta variable para que pueda volver a comprar. Evitando que se acumulen los nuevos artículos con los productos del pedido anterior.

unset($_SESSION['cart']);

Así de simple, unset nos permite eliminar variables específicas, en este caso le indicamos la variable de sesión 'cart'.

Ahora si comprobamos si está la variable en sesión con isset(), veremos que el resultado es false.

isset($_SESSION['cart']) dará como resultado false.

Un saludo a todos!

Comprobar si una variable existe en JavaScript

Comprobar si una variable existe o está definida en JavaScript puede es muy simple:

if(typeof variable == 'undefined'){
   //La variable no ha sido definida
}else{
   //La variable existe
}


Es importante diferenciar entre declaración de la variable y definición. La variable puede estar declarada pero no definida, lo que significa que no se le ha asignado ningún valor.

var variable;

if(typeof variable == 'undefined'){
   //La variable no ha sido definida
}else{
   //La variable existe
}


Esto indicará que la variable es undefined.
Así que realmente lo que comprobamos es si la variable está definida, ya que la variable puede existir pero no tener ningún valor asignado, en cuyo caso está no definida.

Un saludo a todos!