Foros del Web » Programando para Internet » PHP »

problema con codigo ayuda porfavor!

Estas en el tema de problema con codigo ayuda porfavor! en el foro de PHP en Foros del Web. Hola, bueno, aqui va el codigo que me esta dando problemas :S Código PHP: if( strlen ( $tour  &&  $dia )> 0 ) {     if(! ...
  #1 (permalink)  
Antiguo 04/08/2007, 21:03
 
Fecha de Ingreso: agosto-2007
Mensajes: 5
Antigüedad: 16 años, 8 meses
Puntos: 0
problema con codigo ayuda porfavor!

Hola,

bueno, aqui va el codigo que me esta dando problemas :S

Código PHP:
if(strlen($tour && $dia)>0)
{
    if(!
$sendmail)
        echo 
$mailbad;
    else
    {
        echo 
$mailok;
        
$sendmail;
    }
    
}
else
    echo 
$formbad
el problema esta en que si las variables $tour y $dia no son mas grandes que 0, igual me envía el mail, siendo que no debería porque si no se cumple el primer IF debería ejecutarse el segundo ELSE (el ultimo, el echo $formbad;)

lo raro es que si no se cumple el primer IF, se ejecuta el ultimo ELSE, pero el mail se envía de todas formas :S

quien será el bueno que le hechará una mano a este newbie =) ?


chao!
  #2 (permalink)  
Antiguo 04/08/2007, 21:05
 
Fecha de Ingreso: julio-2007
Mensajes: 71
Antigüedad: 16 años, 9 meses
Puntos: 1
Re: problema con codigo ayuda porfavor!

Código PHP:
if(strlen($tour)>&& strlen($dia)>0)
{
    if(!
$sendmail)
        echo 
$mailbad;
    else
    {
        echo 
$mailok;
        
$sendmail;
    }
    
}
else
    echo 
$formbad
Con eso te deberia andar

Suerte!
  #3 (permalink)  
Antiguo 04/08/2007, 21:20
 
Fecha de Ingreso: agosto-2007
Mensajes: 5
Antigüedad: 16 años, 8 meses
Puntos: 0
Re: problema con codigo ayuda porfavor!

no me anda =(
me tira el mismo problema que antes =(
  #4 (permalink)  
Antiguo 04/08/2007, 21:47
 
Fecha de Ingreso: julio-2007
Mensajes: 71
Antigüedad: 16 años, 9 meses
Puntos: 1
Re: problema con codigo ayuda porfavor!

De donde viene el $tour y $dia?
pregunto porque quizas deberias usar el $_POST['tour'] y $_POST['dia']...
  #5 (permalink)  
Antiguo 04/08/2007, 22:52
 
Fecha de Ingreso: agosto-2007
Mensajes: 5
Antigüedad: 16 años, 8 meses
Puntos: 0
Re: problema con codigo ayuda porfavor!

asi lo tengo $tour = $_POST['tour'] y $dia = $_POST['dia']

:S
  #6 (permalink)  
Antiguo 05/08/2007, 01:46
Avatar de Bellenger  
Fecha de Ingreso: noviembre-2004
Ubicación: En un lugar del Mundo...
Mensajes: 599
Antigüedad: 19 años, 5 meses
Puntos: 4
Re: problema con codigo ayuda porfavor!

Hola, deberias completar tu codigo cuando usas las llevas, es una buena practica de programacion...
Código PHP:
if(strlen($tour)>&& strlen($dia)>0){
    if(!
$sendmail){
        echo 
$mailbad;
    }else{
        echo 
$mailok;
        
$sendmail;
    }
    
}else{
    echo 
$formbad

ahora si no debe fallar...
__________________
Un Caballero Jura Lealtad. Usa su espada para suprimir la Injusticia No Conoce el Odio y Tampoco el AMOR...
  #7 (permalink)  
Antiguo 06/08/2007, 07:34
 
Fecha de Ingreso: agosto-2007
Mensajes: 5
Antigüedad: 16 años, 8 meses
Puntos: 0
Re: problema con codigo ayuda porfavor!

lo solucioné ya =O!

aqui esta el codigo terminado, aunque tengo una duda,
Código PHP:
// RESERVA
if(strlen ($tour and $dia and $pasajeros and $hotel and $nombre and $direccion and $ciudad and $pais and $email)>&& $datoradiobutton == reserva ){
    if(@
mail($para,$asunto,$mensaje,$headers)){
        echo 
$mailok;
        }
    else {
        echo 
$mailbad;
        }
}

//INFO    
elseif (strlen ($iemail and $inombre and $icoment)>&& $datoradiobutton == info) {
    if (@
mail ($para,$iasunto,$imensaje,$headers)){
        echo 
$mailok;
    }
    else {
        echo 
$mailbad;
    }
}
else {
    echo 
$formbad;
    exit;

como hago para agrupar esas variables en vez de colocarlas todas y ponerle and $variable and $variable etc, no se pueden agrupar todas esas?

gracias chao!
  #8 (permalink)  
Antiguo 06/08/2007, 08:38
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Re: problema con codigo ayuda porfavor!

Creo no estas usando la mejor forma para strlen, si te fijas strlen espera un string, y al tu hacer $iemail && $inombre, estas convirtiendo a un booleano y luego nuevamente a strlen.

Si quieres comparar que ciertas variables no esten vacias puedes hacer esto:
Código PHP:
$required = array( "iemail""inombre""icoment" );
$empty false;
foreach( 
$required as $var ) {
      if( empty( $
$var ) ) {
            
$empty true;
      }
}
if( !
$empty ) {
     
mail... 
} else {
     echo 
$formbad;
     exit;

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 16:31.