no entra en el if

Iniciado por kakashi20, 22 Abril 2013, 23:30 PM

0 Miembros y 1 Visitante están viendo este tema.

kakashi20

hola

me suscede algo raro o no se si este equivocado

tengo esta consulta

Código (php) [Seleccionar]

$result_hora = mysql_query("SELECT * FROM servicios WHERE ing ='".$_POST['ing']."' AND fecha_entrada='".$_POST['fecha']."'",$link)or die (mysql_error());


la cual retorna tres fila con los valores numéricos: 15,16 y 17

y tengo el siguiente codigo:

Código (php) [Seleccionar]


while($row = mysql_fetch_assoc($result_hora)){

echo $row['hora_entrada'];


if ( $row['hora_entrada'] == 8  ){

$var1 = "1";

}else{

$var1 = "0";
}

if ( $row['hora_entrada'] == 9  ){

$var11 = "1";

}else{

$var11 = "0";
}

if ( $row['hora_entrada'] == 10 ){

$var2 = "1";

}else{

$var2 = "0";
}

if ( $row['hora_entrada'] == 11 ){

$var22 = "1";

}else{

$var22 = "0";
}

if ( $row['hora_entrada'] == 12  ){

$var3 = "1";

}else{

$var3 = "0";
}

if ( $row['hora_entrada'] == 13  ){

$var33 = "1";

}else{

$var33 = "0";
}

if ( $row['hora_entrada'] == 14 ){

$var4 = "1";

}else{

$var4 = "0";
}

if ( $row['hora_entrada'] == "15" ){

$var44 = "si";

}else{

$var44 = "no";
}


if ( $row['hora_entrada'] == 16 ){

$var5 = "1";

}else{

$var5 = "0";
}

if ( $row['hora_entrada'] == 17 ){

$var55 = "1";

}else{

$var55 = "0";
}



}




mando a escribir los resultados de las variable asi:

Código (php) [Seleccionar]

echo"<br>";
echo $var1;
echo"<br>";
echo $var2;
echo"<br>";
echo $var3;
echo"<br>";
echo $var4;
echo"<br>";
echo $var5;
echo"<br>";

echo"<br>";
echo $var11;
echo"<br>";
echo $var22;
echo"<br>";
echo $var33;
echo"<br>";
echo $var44;
echo"<br>";
echo $var55;
echo"<br>";



y el problema es que no me entra en el if del 15 y 16, pero en el if del 17 si entra..

no se que pasa, no se si este haciendo algo mal..

si alguien me pudiese ayudar se lo agradecería.

engel lex

#1
postea el codigo mas claro (un pedazo grande mas visible), que datos estás enviando, la estructura o datos de la db y si puedes has un print_r a $row para ver que está devolviendo el codigo... puede ser error en tus datos mas que en el codigo

por otro lado puedes
1- cambiar todas las variables por un solo array
2- igualar todas las variables 0 y eliminas todos los else

para que su codigo sea mas compacto y facil de manejar
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

WHK

Utiliza === en ves de ==
Estas seguro que en la base de datos las columas son de tipo INT y no Vchar?

Wofo

No tiene nada que ver con tu pergunta pero, por favor...

¡Usar mysqli!

engel lex

para que mysqli... es ganas de usar objetos en algo que ya esta explicito... y para eso me creo mi propia clase de manejo mas flexible y adaptada a necesidades -.- no se, solo digo es opinion personal
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

WHK

porque mysql_query está obsoleto y va a desaparece de algunas versiones de php:

http://cl1.php.net/mysql_query
CitarThis extension is deprecated as of PHP 5.5.0, and will be removed in the future. Instead, the MySQLi or PDO_MySQL extension should be used. See also MySQL: choosing an API guide and related FAQ for more information.

engel lex

wow! D:! que fastidio -.-

alguien conoce el por que queda obsoleta?
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

WHK

porque la programación orientada a objeto es la manera mas ordenada y flexible de crear un software o script, la mayoría de los cambios en php5 fueron migrar varias funciones libres a objetos, de hecho si le das un vistazo a todos los frameworks existentes todos usan objetos.

engel lex

si, yo siempre uso objetos porque es comodo... pero me parece que si tienes funciones explicitas asi son mas comodas para crear los objetos que usar objetos para crear objetos (para no heredarlas porque estás sumando varias funciones)... bueh... sera adaptarse
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

#!drvy

Sigues pudiendo usar el modo "normal".. por ejemplo:

Código (php) [Seleccionar]
<?php $result $mysqli->query("lalalal"); ?>

Código (php) [Seleccionar]
<?php $result mysqli_query($link,'lalalal'); ?>

Saludos