Foros del Web » Programando para Internet » PHP »

Condición trabajando con cookies.

Estas en el tema de Condición trabajando con cookies. en el foro de PHP en Foros del Web. Resulta que efectivamente coge la cookie pero el problema es que me reenvía siempre a forotry.asp, y la condición sería esta: Si existe WWW2 que ...
  #1 (permalink)  
Antiguo 11/01/2004, 12:58
wpp
 
Fecha de Ingreso: noviembre-2003
Mensajes: 50
Antigüedad: 21 años
Puntos: 0
Condición trabajando con cookies.

Resulta que efectivamente coge la cookie pero el problema es que me reenvía
siempre a forotry.asp, y la condición sería esta:

Si existe WWW2 que cargue esa misma pagina directamente (es decir el resto de código html y php)
Si no existe WWW2 que me reenvíe a otra distinta llamada forotry.asp en target_self


Ahora no funciona así.
Gracias.

Código actual:


<?

if($_COOKIE['WWW2']==''){

header('Location: // direccion url a forotry.asp);

exit;

}

?>
  #2 (permalink)  
Antiguo 11/01/2004, 13:11
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 22 años, 5 meses
Puntos: 16
Hola,

Mira la funcion isset() (www.php.net/isset).

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 11/01/2004, 15:09
wpp
 
Fecha de Ingreso: noviembre-2003
Mensajes: 50
Antigüedad: 21 años
Puntos: 0
Echame una mano...

Es que no entiendo bien esta página a la que me envías soy muy novato en php, pero mira sólo necesito construir esta condición en el código que puse antes, no podrías indicarmelo directamente, ya que difícilmente voy a aprender en un momento lo que me has pasado, cosa que agradezco.
  #4 (permalink)  
Antiguo 11/01/2004, 15:44
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 22 años, 5 meses
Puntos: 16
La pagina es la pagina del manual oficial de PHP (manual de cabecera para todo programador de PHP) para la funcion isset(). Esta funcion sirve para saber si esta definida una variable o un indice de un array. Asi que en tu caso el if seria:
Código PHP:
if (!isset($_COOKIE['WWW2'])) {
// aqui lo que pasa si no existe

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #5 (permalink)  
Antiguo 11/01/2004, 19:59
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 21 años, 2 meses
Puntos: 41
También podrías utilizar la función empty() http://www.php.net/manual/es/function.empty.php (al manual, en español)...

isset() sólo evalúa que la variable haya sido definida. Si yo pongo por ejemplo:
Código PHP:
$variable '';
if(isset(
$variable)){//si está definida la variable
   //En este caso se entendrá que la variable ha sido definida
   //como una cadena vacía... entonces ejecutará las acciones.

En cambio la función empty() no sólo verifica si está seteada la variable, sino también si es una cadena vacía o un cero... revisa el link al manual que te puse...

Tú decide cuál función utilizar, de acuerdo a lo que necesites... pero en general, empty() es más rigurosa:
Código PHP:
if(empty($variable)){
   
//Acá lo que pasa si no está definida o es una cadena vacía o cero, etc...

Si antepones el signo "!" te devuelve lo contrario:
Código PHP:
if(!empty($variable)){
   
//si la variable existe y no está vacía

Saludos
  #6 (permalink)  
Antiguo 12/01/2004, 03:24
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 22 años, 5 meses
Puntos: 16
jpinedo, empty() tampoco es la solucion definitiva. Fijate en este codigo:
Código PHP:
$var="0";
if (empty(
$var)) echo "Vacia"
Mas info en http://www.php.net/manual/en/types.comparisons.php

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #7 (permalink)  
Antiguo 12/01/2004, 17:49
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 21 años, 2 meses
Puntos: 41
No... si yo no dije que fuera la solución definitiva... simplemente estaba dando otra alernativa... aveces convendrá utilizar isset()... otras empty()...

Ah... por cierto.. el link al manual que pusiste aclara muchísimo cualquier duda que uno pueda tener al respecto... gracias.

Saludos
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 14:12.