Foros del Web » Programando para Internet » PHP »

Problemas con condicion

Estas en el tema de Problemas con condicion en el foro de PHP en Foros del Web. Muy buenos Dias!!! estoy teniendo inconvenientes con un if paso a explicar ayer, un compañero del foro muy amablemente me ayudo a armar una condicion ...
  #1 (permalink)  
Antiguo 08/06/2011, 05:56
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 13 años, 6 meses
Puntos: 4
Problemas con condicion

Muy buenos Dias!!!
estoy teniendo inconvenientes con un if
paso a explicar
ayer, un compañero del foro muy amablemente me ayudo a armar una condicion if para saber si los elementos que traia un array eran todos iguales
Código PHP:
Ver original
  1. $contador = 0;
  2. foreach ($stk_suc as $item)
  3. {
  4.  if ($item == 01) { $contador ++; }
  5. }
  6.  
  7. if ($contador == count($stk_suc))
  8. {
  9.  
  10. echo 'Algo';
  11.  
  12. }
lo que estoy intentando hacer es agregarle a la condicion , otra comparacion
if ($item == 02) { $contador ++; } y todo lo demas...
probe asi
Código PHP:
Ver original
  1. if ($item == 01 or $item == 02  ) { $contador ++; }
  2. if ($item == 01 || $item == 02  ) { $contador ++; }
  3. if (($item == 01) or( $item == 02  )){ $contador ++; }
pero siempre me toma la primera condicion
Muchas gracias Y que tengan un buen dia
  #2 (permalink)  
Antiguo 08/06/2011, 06:08
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 3 meses
Puntos: 209
Respuesta: Problemas con condicion

es que la primera condicion tmb se está cumpliendo
  #3 (permalink)  
Antiguo 08/06/2011, 06:13
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 13 años, 6 meses
Puntos: 4
Respuesta: Problemas con condicion

Hola como te va
pero al poner or o || no tendria que solucionarse ?
estoy re confundido
Saludos
  #4 (permalink)  
Antiguo 08/06/2011, 06:14
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 3 meses
Puntos: 209
Respuesta: Problemas con condicion

pon el codigo completo
  #5 (permalink)  
Antiguo 08/06/2011, 06:22
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 13 años, 6 meses
Puntos: 4
Respuesta: Problemas con condicion

Código PHP:
Ver original
  1. <?php
  2. $contador = 0;
  3. foreach ($stk_suc as $item)
  4. {
  5.  if ($item == 01) { $contador ++; }
  6. }
  7.  
  8. if ($contador == count($stk_suc))
  9. {
  10.  
  11. echo '<tr>';
  12. echo '<td colspan="4" style="text-align:center;font-weight:bold">Todos los Articulos Fueron Ingresados en Sucursal '.$item.'</td>';
  13. echo '</tr>';
  14.  
  15. }
  16. else
  17. {
  18. for($num=0;$num<sizeof($compra_arti_id);$num++)
  19. {
  20. echo '<tr>';
  21. echo '<td>'.$compra_cod_art[$num].'</td>';
  22. echo '<td>'.$compra_descripcion[$num].'</td>';
  23. echo '<td>'.$compra_cantidad[$num].'</td>';
  24. echo '<td>'.$stk_suc[$num].'</td>';
  25. echo '<tr>';
  26. }
  27. }
  28. ?>
  #6 (permalink)  
Antiguo 08/06/2011, 06:25
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 3 meses
Puntos: 209
Respuesta: Problemas con condicion

pero alli no veo el otro if que tiene el or
  #7 (permalink)  
Antiguo 08/06/2011, 06:31
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 13 años, 6 meses
Puntos: 4
Respuesta: Problemas con condicion

si, lo deje con una sola comparacion porque ya me estaba dando por vencido jaja
iria de esta forma?
Código PHP:
Ver original
  1. $contador = 0;
  2. foreach ($stk_suc as $item)
  3. {
  4.  if ($item == 01) { $contador ++; }
  5.  if ($item == 02) { $contador ++; }
  6.  if ($item == 03) { $contador ++; }
  7.  if ($item == 04) { $contador ++; }
  8.  if ($item == 05) { $contador ++; }
  9.  if ($item == 06) { $contador ++; }
  10.  if ($item == 07) { $contador ++; }
  11.  if ($item == 08) { $contador ++; }
  12.  if ($item == 09) { $contador ++; }
  13.  if ($item == 10) { $contador ++; }
  14. }
  15.  
  16. if ($contador == count($stk_suc))
  17. {
  18.  
  19. echo '<tr>';
  20. echo '<td colspan="4" style="text-align:center;font-weight:bold">Todos los Articulos Fueron Ingresados en Sucursal '.$item.'</td>';
  21. echo '</tr>';
  22.  
  23. }
  24. else
  25. {
  26. for($num=0;$num<sizeof($compra_arti_id);$num++)
  27. {
  28. echo '<tr>';
  29. echo '<td>'.$compra_cod_art[$num].'</td>';
  30. echo '<td>'.$compra_descripcion[$num].'</td>';
  31. echo '<td>'.$compra_cantidad[$num].'</td>';
  32. echo '<td>'.$stk_suc[$num].'</td>';
  33. echo '<tr>';
  34. }
  35. }
  #8 (permalink)  
Antiguo 08/06/2011, 06:37
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 3 meses
Puntos: 209
Respuesta: Problemas con condicion

la veriable contador siempre se va a incrementar, tendrias que hacer una variable contador por cada tipo que quiere comprobar

$contador1 = 0;
$contador2 = 0;
foreach ($stk_suc as $item)
{
if ($item == 01) { $contador1 ++; }
if ($item == 02) { $contador2 ++; }

etc

entiendes ??
para que después puedas preguntar si countador1 == count(tu arreglo) y asi para todos
  #9 (permalink)  
Antiguo 08/06/2011, 06:38
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 13 años, 6 meses
Puntos: 4
Respuesta: Problemas con condicion

ahhhh listo ya lo pruebo
  #10 (permalink)  
Antiguo 08/06/2011, 06:43
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 3 meses
Puntos: 209
Respuesta: Problemas con condicion

ok, suerte
  #11 (permalink)  
Antiguo 08/06/2011, 06:48
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 13 años, 6 meses
Puntos: 4
Respuesta: Problemas con condicion

Perfecto Sos un CAPO!!!
me quedo asi y funciona vos me podria indicar si hay algo mal (por las dudas)
Código PHP:
Ver original
  1. $con = 0;
  2. $con1 = 0;
  3. $con2 = 0;
  4. $con3 = 0;
  5. $con4 = 0;
  6. $con5 = 0;
  7. $con6 = 0;
  8. $con7 = 0;
  9. $con8 = 0;
  10. $con9 = 0;
  11.  
  12. foreach ($stk_suc as $item)
  13. {
  14.  if ($item == 01) { $con ++; }
  15.  if ($item == 02) { $con1 ++; }
  16.  if ($item == 03) { $con2 ++; }
  17.  if ($item == 04) { $con3 ++; }
  18.  if ($item == 05) { $con4 ++; }
  19.  if ($item == 06) { $con5 ++; }
  20.  if ($item == 07) { $con6 ++; }
  21.  if ($item == 08) { $con7 ++; }
  22.  if ($item == 09) { $con8 ++; }
  23.  if ($item == 10) { $con9 ++; }
  24. }
  25.  
  26. if($con == count($stk_suc)  or
  27.    $con1 == count($stk_suc) or
  28.    $con2 == count($stk_suc) or
  29.    $con3 == count($stk_suc) or
  30.    $con4 == count($stk_suc) or
  31.    $con5 == count($stk_suc) or
  32.    $con6 == count($stk_suc) or
  33.    $con7 == count($stk_suc) or
  34.    $con8 == count($stk_suc) or
  35.    $con9 == count($stk_suc))
  36. {
  37.  
  38. echo '<tr>';
  39. echo '<td colspan="4" style="text-align:center;font-weight:bold">Todos los Articulos Fueron Ingresados en Sucursal '.$item.'</td>';
  40. echo '</tr>';
  41.  
  42. }
  43. else
  44. {
  45. for($num=0;$num<sizeof($compra_arti_id);$num++)
  46. {
  47. echo '<tr>';
  48. echo '<td>'.$compra_cod_art[$num].'</td>';
  49. echo '<td>'.$compra_descripcion[$num].'</td>';
  50. echo '<td>'.$compra_cantidad[$num].'</td>';
  51. echo '<td>'.$stk_suc[$num].'</td>';
  52. echo '<tr>';
  53. }
  54. }
  #12 (permalink)  
Antiguo 08/06/2011, 06:52
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 3 meses
Puntos: 209
Respuesta: Problemas con condicion

jaaj nada de capo, acá los capos están bien definidos gatorV, abimaelrc y otros más yo, nada soy...
el codigo funciona, se puede optmizar un poco, si quieres a manera de estudio haz todos los if dentro de un switch,
  #13 (permalink)  
Antiguo 08/06/2011, 06:55
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 13 años, 6 meses
Puntos: 4
Respuesta: Problemas con condicion

Buenisimo!!!
ahora los paso a switch
Saludos Y muchas gracias!!!

Etiquetas: Ninguno
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 20:26.