Programación Web y Scripting > PHP
Ayuda Con La Funcion Switch
javier3:
holaaa a todos necesito evaluar de la siguiente manera no se si se puede hacer bueno no me sale por eso les pregunto porfa :
miren es parte del codigo k estoy haciendo
$id_cuenta=$rs_asiento->Fields("idccodcu");
switch ($id_cuenta){
case "40" or "4011" or "401101":
if ($rs_asiento->Fields("scccdebe")=="x"){ $sccncarg=$igv; $sccnabon=0; $sccnafec=1;}else{ $sccncarg=0; $sccnabon=$igv; $sccnafec=0; }
break;
case "42" or "4211" or "421101":
if ($rs_asiento->Fields("scccdebe")=="x"){ $sccncarg=$subtotal; $sccnabon=0; $sccnafec=1;}else{ $sccncarg=0; $sccnabon=$subtotal; $sccnafec=0; }
break;
case "60" or "6011" or "601101":
if ($rs_asiento->Fields("scccdebe")=="x"){ $sccncarg=$scrntota; $sccnabon=0; $sccnafec=1;}else{ $sccncarg=0; $sccnabon=$scrntota; $sccnafec=0; }
break;
}
bueno necesito evaluar esos valores ya k la variable $id_cuenta puede tener cualquiera de esos valores y en ese caso k ejecute esa sentencia, pero cuando lo ejecuto siempre me ejecuta el primer case, ahora todo esto esta dentro de un while k va leendo los registros de una tabla noo asi k $id_cuenta cambia de valor y no mantiene siempre un valor pero creo k no reconoce el or ó el and k puediera utilizar ayudenme porfa urgente gracias
Informix:
Javier3
Los operadores en PHP son los siguientes
AND ---> &&
OR ---> ||
NOT ---> !
prueba con tu codigo asi:
--- Código: Text --- $id_cuenta=$rs_asiento->Fields("idccodcu");switch ($id_cuenta){case "40" || "4011" || "401101":if ($rs_asiento->Fields("scccdebe")=="x"){ $sccncarg=$igv; $sccnabon=0; $sccnafec=1;}else{ $sccncarg=0; $sccnabon=$igv; $sccnafec=0; }break;case "42" || "4211" || "421101":if ($rs_asiento->Fields("scccdebe")=="x"){ $sccncarg=$subtotal; $sccnabon=0; $sccnafec=1;}else{ $sccncarg=0; $sccnabon=$subtotal; $sccnafec=0; }break;case "60" || "6011" || "601101":if ($rs_asiento->Fields("scccdebe")=="x"){ $sccncarg=$scrntota; $sccnabon=0; $sccnafec=1;}else{ $sccncarg=0; $sccnabon=$scrntota; $sccnafec=0; }break;}
Por cierto utiliza los tags de codigo para que se pueda leer mejor
:kicking:
mateamargo:
Según tengo entendido en Javscript (no sé si lo habrán cambiado en PHP) la instrucción Swtich no se puede usar de la forma en la que vos la llamás
Por ejemplo:
--- Código: Text --- switch(numero){ case 1 || 2: alert("hola"); default: alert("chau");}
esto estaría mal, ya que si querés usar instrucciones para más de una condición lo tenés que hacer así:
--- Código: Text --- switch(numero){ case 1: case 2: alert("hola"); default: alert("chau");}
Espero que te sirva.
Saludos.
Atondo:
solo es un Comentario:
case "40" : (aqui, para mayor seguridad separa los : de la instrucción un espacio no los pongas inmediatamente despues de ella )
:question: :question: :question: :question:
mateamargo:
--- Cita de: "Atondo" --- solo es un Comentario:
case "40" : (aqui, para mayor seguridad separa los : de la instrucción un espacio no los pongas inmediatamente despues de ella )
:question: :question: :question: :question:
--- Fin de la cita ---
:huh: ¿seguridad de qué?
Navegación
[#] Página Siguiente
Ir a la versión completa