Foros del Web » Programando para Internet » PHP »

Problema con If's

Estas en el tema de Problema con If's en el foro de PHP en Foros del Web. Hola! Saben quee tengo el siguiente codigo: Código PHP: <? if ( 'http://' . $_SERVER [ 'HTTP_HOST' ]. $_SERVER [ 'REQUEST_URI' ] ==  'http:/www.dominio.com/contact/' ) { echo  'Soy contact' ...
  #1 (permalink)  
Antiguo 12/07/2008, 13:54
 
Fecha de Ingreso: julio-2007
Ubicación: Por ahi...
Mensajes: 84
Antigüedad: 16 años, 9 meses
Puntos: 0
Problema con If's

Hola!

Saben quee tengo el siguiente codigo:

Código PHP:
<?
if ('http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] == 'http:/www.dominio.com/contact/') {
echo 
'Soy contact';
}
if (
'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] == 'http:/www.dominio.com/subscribe/') {
echo 
'Soy subscribe';
}
?>
Pero como puedo hacer para cuando no se cumpla nunguna de las dos, me mande un mensaje ???

Gracias de antemanos =)!

Saludos.
  #2 (permalink)  
Antiguo 12/07/2008, 14:06
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Problema con If's

te voy a decir porque no te va a funcionar....

primero, si el script se llama foo.php = REQUEST_URI, lo que indica... que nunca se van a cumplir tus condiciones.... demas, seria mejor... SERVER_NAME que HTTP_HOST (etc, etc...)

ya habías puesto esto en otro post, y te digo la verdad... hacer esto, sin Apache (mod_rewrite) es imposible... suerte!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 12/07/2008, 14:20
 
Fecha de Ingreso: julio-2008
Mensajes: 3
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Problema con If's

Ciertamente debe tomar en cuenta muchas cosas, pero bajo las condiciones adecuadas puede funcionar, por ejemplo si el php donde pone este codigo es reconocido como el indice de una carpeta (index.php) como puede llamarlo sin necesidad de espesificar el nombre del archivo, igual puede hacer la condicion sin espesificarlo literalmente, aun que si como dice pateketrueke, para que un mismo script pueda tener dos direcciones asi es necesario que uses algo como el mod_rewrite de apache o que el archivo donde estas haciendo esa condicion lo estes incluyendo en otros archivos, pero bueno la condicion la puedes hacer de dos formas diferentes:

Código PHP:
if ('http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] == 'http:/www.dominio.com/contact/') {
    echo 
'Soy contact';
} elseif (
'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] == 'http:/www.dominio.com/subscribe/') {
    echo 
'Soy subscribe';
} else{
    echo 
'Otro lugar';

o si prefieres mejor con switch

Código PHP:
switch('http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']){
    case 
'http:/www.dominio.com/contact/':
        echo 
"Soy contact";
        break;
    case 
'http:/www.dominio.com/subscribe/':
        echo 
"Soy subscribe";
        break;
    default:
        echo 
"Otro lugar";

Saludos
  #4 (permalink)  
Antiguo 12/07/2008, 14:25
 
Fecha de Ingreso: julio-2007
Ubicación: Por ahi...
Mensajes: 84
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Problema con If's

Cita:
Iniciado por pateketrueke Ver Mensaje
te voy a decir porque no te va a funcionar....

primero, si el script se llama foo.php = REQUEST_URI, lo que indica... que nunca se van a cumplir tus condiciones.... demas, seria mejor... SERVER_NAME que HTTP_HOST (etc, etc...)

ya habías puesto esto en otro post, y te digo la verdad... hacer esto, sin Apache (mod_rewrite) es imposible... suerte!
Ufff... lo de los post tienes razon, y pido perdon, se me chancleo, pido que me los unan en el mismo hilo :D

Algo me dice que si, pero no sé como
  #5 (permalink)  
Antiguo 12/07/2008, 14:29
 
Fecha de Ingreso: julio-2007
Ubicación: Por ahi...
Mensajes: 84
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Problema con If's

Cita:
Iniciado por ovilla Ver Mensaje
Ciertamente debe tomar en cuenta muchas cosas, pero bajo las condiciones adecuadas puede funcionar, por ejemplo si el php donde pone este codigo es reconocido como el indice de una carpeta (index.php) como puede llamarlo sin necesidad de espesificar el nombre del archivo, igual puede hacer la condicion sin espesificarlo literalmente, aun que si como dice pateketrueke, para que un mismo script pueda tener dos direcciones asi es necesario que uses algo como el mod_rewrite de apache o que el archivo donde estas haciendo esa condicion lo estes incluyendo en otros archivos, pero bueno la condicion la puedes hacer de dos formas diferentes:

Código PHP:
if ('http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] == 'http:/www.dominio.com/contact/') {
    echo 
'Soy contact';
} elseif (
'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] == 'http:/www.dominio.com/subscribe/') {
    echo 
'Soy subscribe';
} else{
    echo 
'Otro lugar';

o si prefieres mejor con switch

Código PHP:
switch('http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']){
    case 
'http:/www.dominio.com/contact/':
        echo 
"Soy contact";
        break;
    case 
'http:/www.dominio.com/subscribe/':
        echo 
"Soy subscribe";
        break;
    default:
        echo 
"Otro lugar";

Saludos

Mil gracias, era exactamente lo que necesitaba, muchas gracias, lo agradezco de verdad.
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 13:13.