Foros del Web » Programando para Internet » PHP »

Ciclo for no funciona

Estas en el tema de Ciclo for no funciona en el foro de PHP en Foros del Web. Amigos por favor ayúdenme!! no se en realidad que estoy haciendo mal o porq no me funciona mi codigo como yo quisiera, ya que tengo ...
  #1 (permalink)  
Antiguo 14/09/2014, 22:01
Avatar de rachpts  
Fecha de Ingreso: febrero-2012
Mensajes: 117
Antigüedad: 12 años, 2 meses
Puntos: 0
Sonrisa Ciclo for no funciona

Amigos por favor ayúdenme!! no se en realidad que estoy haciendo mal o porq no me funciona mi codigo como yo quisiera, ya que tengo un select, digamos que yo elijo los primeros meses me tiene que salir bien la cuenta de mis recargos y lo hace pero al momento de sumar feb-marzo ya no lo hace como debe, ya que mi suma se brinca hasta los meses junio-julio :( por favor ayúdenme, dejo todo mi codigo y lo comento para que se den una idea

Código PHP:
Ver original
  1. <?php include("si_acceso.php");?>
  2.  
  3. <?php
  4. include('conexion.php');
  5.  
  6.  
  7. $mu = $_SESSION['Municipio'];      
  8. $zo = $_SESSION['Zona'];
  9. $ma = $_SESSION['Manzana'];
  10. $lo = $_SESSION['Lote'];
  11. $ed = $_SESSION['Edificio'];
  12. $de = $_SESSION['Depto'];
  13.  
  14.             $ClvCat = "$mu" . "$zo" . "$ma" . "$lo" . "$ed" . "$de";
  15.  
  16.  
  17.  
  18.  
  19.         //Mostramos los datos qu corresponden a la clave ingresada
  20.     //lo guardamos en variable $fila   
  21.    
  22.     //////////////////////////////////////////////////////////////////////////////////////////
  23. $anio_actual = date ("Y");
  24. $mes_actual = date ("m");
  25.  
  26.  
  27. ////
  28. $sql2 = mysql_query("SELECT * FROM totales WHERE ClvCat='$ClvCat'");
  29.                  mysql_query("SET NAMES 'utf8'");
  30.                     if(mysql_num_rows($sql2)>0){
  31.                      mysql_error();
  32.  
  33.                      while($row=mysql_fetch_array($sql2)) {
  34.  
  35.                            
  36.                             $anio = $row['anio'];
  37.                             $PredCor = $row['PredCor'];
  38.                            
  39.                        
  40.                             }
  41.  
  42.                      }
  43.     //periodo de mes inicial y final
  44.    
  45.     $sql3 = mysql_query("SELECT * FROM te_pd_expfiscal WHERE f_mun='$mu' and f_zona='$zo' and f_manza='$ma' and f_lote='$lo' and f_edif='$ed' and f_depto='$de'");
  46.                  mysql_query("SET NAMES 'utf8'");
  47.                     if(mysql_num_rows($sql3)>0){
  48.                      mysql_error();
  49.  
  50.                      while($row=mysql_fetch_array($sql3)) {
  51.  
  52.                            
  53.                             $F_An = $row['f_anio'];
  54.                             $F_Me = $row['f_mes'];
  55.                            
  56.                            
  57.                             }
  58.  
  59.                      }
  60.    
  61.    
  62.     ////
  63.    
  64.                
  65.             ///muestra el select dependiendo del periodo que tenga pendiente de pago, esto de la variable resultado de la consulta de arriba
  66.            
  67.    
  68.  
  69.                     if ($F_Me == 1) {
  70.                    
  71.                         echo "<form method=\"post\" action=\"b.php\">";
  72.                         echo "<select id=\"pagos\" name=\"pagos\">";
  73.                         echo "<option value=\"1\">Ene-Feb</option>";
  74.                         echo "<option value=\"3\">Mar-Abr</option>";
  75.                         echo "<option value=\"5\">May-Jun</option>";
  76.                         echo "<option value=\"7\">Jul-Ago</option>";
  77.                         echo "<option value=\"9\">Sep-Oct</option>";
  78.                         echo "<option value=\"11\">Nov-Dic</option>";
  79.                         echo "</select>";
  80.                         echo "<input type=\"submit\" name=\"ok\">";
  81.                         echo "</form>";
  82.                    
  83.                     }
  84.                        
  85.                        
  86.                        
  87.                         else
  88.                         {
  89.                        
  90.                         if ($F_Me == 3) {
  91.                    
  92.                         echo "<form method=\"post\" action=\"b.php\">";
  93.                         echo "<select id=\"pagos\" name=\"pagos\">";
  94.                         echo "<option value=\"3\">Mar-Abr</option>";
  95.                         echo "<option value=\"5\">May-Jun</option>";
  96.                         echo "<option value=\"7\">Jul-Ago</option>";
  97.                         echo "<option value=\"9\">Sep-Oct</option>";
  98.                         echo "<option value=\"11\">Nov-Dic</option>";
  99.      
  100.                         echo "</select>";  
  101.                         echo "<input type=\"submit\" name=\"ok\">";
  102.                         echo "</form>";
  103.                    
  104.                     }
  105.                    
  106.                     else
  107.                     if ($F_Me == 5) {
  108.                    
  109.                         echo "<form method=\"post\" action=\"b.php\">";
  110.                         echo "<select id=\"pagos\" name=\"pagos\">";
  111.                         echo "<option value=\"5\">May-Jun</option>";
  112.                         echo "<option value=\"7\">Jul-Ago</option>";
  113.                         echo "<option value=\"9\">Sep-Oct</option>";
  114.                         echo "<option value=\"11\">Nov-Dic</option>";
  115.      
  116.                         echo "</select>";
  117.                         echo "<input type=\"submit\" name=\"ok\">";
  118.                         echo "</form>";
  119.                    
  120.                     }
  121.  
  122.            
  123.  
  124.                         else
  125.                         if ($F_Me == 7) {
  126.                    
  127.                         echo "<form method=\"post\" action=\"b.php\">";
  128.                         echo "<select id=\"pagos\" name=\"pagos\">";  
  129.                         echo "<option value=\"7\">Jul-Ago</option>";
  130.                         echo "<option value=\"9\">Sep-Oct</option>";
  131.                         echo "<option value=\"11\">Nov-Dic</option>";
  132.      
  133.                         echo "</select>";  
  134.                         echo "<input type=\"submit\" name=\"ok\">";
  135.                         echo "</form>";
  136.                    
  137.                     }
  138.                    
  139.                    
  140.                     else
  141.                     if ($F_Me == 9) {
  142.                    
  143.                         echo "<form method=\"post\" action=\"b.php\">";
  144.                         echo "<select id=\"pagos\" name=\"pagos\">";  
  145.                         echo "<option value=\"9\">Sep-Oct</option>";
  146.                         echo "<option value=\"11\">Nov-Dic</option>";
  147.      
  148.                         echo "</select>";
  149.                         echo "<input type=\"submit\" name=\"ok\">";                        
  150.                         echo "</form>";
  151.                    
  152.                     }
  153.                    
  154.                     else
  155.                         {
  156.                        
  157.                         if ($F_Me == 11) {
  158.                    
  159.                         echo "<form method=\"post\" action=\"b.php\">";
  160.                         echo "<select id=\"pagos\" name=\"pagos\">";  
  161.                         echo "<option value=\"11\">Nov-Dic</option>";
  162.      
  163.                         echo "</select>";  
  164.                         echo "</form>";
  165.                         echo "<input type=\"submit\" name=\"ok\">";
  166.                    
  167.                     }
  168.                    
  169.  
  170.                 }
  171.                    
  172.                 }  
  173.                                
  174.                            
  175.         //      recibir valores segun el periodo que se elija
  176.        
  177.        
  178.        
  179.  
  180.        
  181. $MesF=($_REQUEST['pagos']);
  182.                
  183.                
  184.         $MesFinal= $MesF + 1;
  185.  
  186.  
  187.  
  188.  $sql4 = mysql_query("SELECT * FROM recargos WHERE Anio='$anio_actual' and Mes1='$MesFinal'");
  189.                  mysql_query("SET NAMES 'utf8'");
  190.                     if(mysql_num_rows($sql4)>0){
  191.                      mysql_error();
  192.  
  193.                      while($row=mysql_fetch_array($sql4)) {
  194.  
  195.                            
  196.                             $AnioR = $row['Anio'];
  197.                             $FpM = $row['Recargo'];
  198.                             $MesR = $row['Mes1'];
  199.                             $Bim = $row['Bimestre'];
  200.  
  201.                            
  202.                             }
  203.  
  204.                      }  
  205.                    
  206.        
  207.    
  208.   ///operaciones para calcular el recargo correspondiente al bimestre
  209.      
  210.       $valor1= $PredCor / 6;
  211.    
  212.       $valor2= $Bim / 100;
  213.      
  214.    
  215.     $RecargosCal = 0.0;
  216.  
  217.  
  218.    
  219. for ($F_Me = 1; $F_Me <= $MesF; $F_Me++) {
  220.  
  221.                      
  222.                 ///
  223.                
  224.                 $RecargosCal = $RecargosCal + ( $valor1 * $valor2);
  225.                 //echo "$F_Me <BR>";
  226.                 echo "$MesF <br>";
  227.            
  228.    
  229. }
  230.  
  231. echo "$RecargosCal";
  232.  
  233. ?>
  #2 (permalink)  
Antiguo 15/09/2014, 03:08
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Ciclo for no funciona

Imagino que te refieres a este ciclo for

Código PHP:
Ver original
  1. for ($F_Me = 1; $F_Me <= $MesF; $F_Me++) {
  2.                 ///
  3.                 $RecargosCal = $RecargosCal + ( $valor1 * $valor2);
  4.                 echo $F_Me."<br />";
  5.                 echo $MesF."<br />";
  6. }

Si $MesF es mayor o igual a 1 debería funcionar.
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Última edición por quimfv; 15/09/2014 a las 03:14
  #3 (permalink)  
Antiguo 15/09/2014, 08:44
Avatar de rachpts  
Fecha de Ingreso: febrero-2012
Mensajes: 117
Antigüedad: 12 años, 2 meses
Puntos: 0
Respuesta: Ciclo for no funciona

debería funcionar pero algo estoy haciendo mal que me manda mal la suma en tiempos no en cantidades, ya que si le doy enero febrero, sale bien pero al momento de darle marzo abril ya no los manda como deberia y se brinca a la suma de los recargos de mayo-julio :(
  #4 (permalink)  
Antiguo 16/09/2014, 04:30
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Ciclo for no funciona

No se que decirte, estas seguro que no es un problema de datos....

Código PHP:
Ver original
  1. while($row=mysql_fetch_array($sql3)) {
  2.        $F_An = $row['f_anio'];
  3.        $F_Me = $row['f_mes'];
  4. }


tienes claro que hace este fragmento de codigo, esas variables solo tendrán el valor del ultimo registro....
Por otro lado

Cita:
mysql_error — Devuelve el texto del mensaje de error de la operación MySQL anterior
Devuelve el error pero tu no haces nada con ese retorno....

Código PHP:
Ver original
  1. if(mysql_num_rows($sql2)>0){
  2.     mysql_error();
  3.     while($row=mysql_fetch_array($sql2)) {
  4.        $anio = $row['anio'];
  5.        $PredCor = $row['PredCor'];
  6.    }
  7. }
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Etiquetas: mysql, select, sql, variable
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:31.