Foros del Web » Programando para Internet » PHP »

Conservar el valor de la primer variable dentro del if

Estas en el tema de Conservar el valor de la primer variable dentro del if en el foro de PHP en Foros del Web. hola amigos, porfavor auxilio, quisiera que no se perdiera el valor de mi primer variable guardada dentro del primer if, alguien que me ayude por ...
  #1 (permalink)  
Antiguo 11/09/2014, 16:35
Avatar de rachpts  
Fecha de Ingreso: febrero-2012
Mensajes: 117
Antigüedad: 12 años, 8 meses
Puntos: 0
Pregunta Conservar el valor de la primer variable dentro del if

hola amigos, porfavor auxilio, quisiera que no se perdiera el valor de mi primer variable guardada dentro del primer if, alguien que me ayude por favor, dejo mi codigo

Código PHP:
Ver original
  1. $MesF=($_REQUEST['pagos']);
  2.                
  3.                
  4.         $MesFinal= $MesF + 1;
  5.  
  6.  
  7.  
  8.  
  9. $sql4 = mysql_query("SELECT * FROM recargos WHERE Anio='$anio_actual' and Mes1='$MesFinal'");
  10.                  mysql_query("SET NAMES 'utf8'");
  11.                     if(mysql_num_rows($sql4)>0){
  12.                      mysql_error();
  13.  
  14.                      while($row=mysql_fetch_array($sql4)) {
  15.  
  16.                            
  17.                             $AnioR = $row['Anio'];
  18.                             $FpM = $row['Recargo'];
  19.                             $MesR = $row['Mes1'];
  20.                             $Bim = $row['Bimestre'];
  21.  
  22.                            
  23.                             }
  24.  
  25.                      }                     
  26.        
  27.    
  28.                            
  29.        ///operaciones para calcular el recargo correspondiente al bimestre
  30.       $valor1= $PredCor / 6;
  31.    
  32.       $valor2= $Bim / 100;
  33.      
  34.    
  35. // actualizar el pago dependiendo de los bimestres que falten
  36.  
  37. //
  38. if ($F_Me==1 and $MesF==1) {
  39.  
  40.   $valorF = $valor1 * $valor2;
  41.  
  42.         echo "$valorF <br>";  
  43.                            
  44.         echo "$valor1";
  45.     mysql_query("UPDATE totales SET Recargos='$valorF', TipoPago='Bimestral' WHERE ClvCat='$ClvCat' AND anio='$anio'");
  46.        
  47.  
  48.  
  49. }elseif ($F_Me==1 and $MesF==3) {
  50.  
  51.   $valorF = $valor1 * $valor2;
  52.  $Recargo4 = $valor1 * $valor2;
  53.  
  54.  $SumRec4 = $Recargo4 + $valorF;
  55.  
  56. echo "$SumRec4 <br>";  
  57. $PagBim2 = $valor1 * 2;
  58. echo "$PagBim2";
  59.  
  60. }elseif ($F_Me==1 and $MesF==5) {
  61.  
  62. $PagBim3 = $valor1 * 3;
  63. echo "$PagBim3";
  64.  
  65. }elseif ($F_Me==1 and $MesF==7) {
  66.  
  67. $PagBim4 = $valor1 * 4;
  68. echo "$PagBim4";
  69.  
  70. }
  71. elseif ($F_Me==1 and $MesF==9) {
  72.  
  73. $PagBim5 = $valor1 * 5;
  74. echo "$PagBim5";
  75.  
  76. }
  77. elseif ($F_Me==1 and $MesF==11) {
  78.  
  79. $PagBim6 = $valor1 * 6;
  80. echo "$PagBim6";
  81.  
  82. }
  83. //
  84.  
  85. if ($F_Me==3 and $MesF==3) {
  86.  
  87. echo "$valor1";
  88.  
  89. }elseif ($F_Me==3 and $MesF==5) {
  90.  
  91. $PagBim2 = $valor1 * 2;
  92. echo "$PagBim2";
  93.  
  94. }elseif ($F_Me==3 and $MesF==7) {
  95.  
  96. $PagBim3 = $valor1 * 3;
  97. echo "$PagBim3";
  98.  
  99. }elseif ($F_Me==3 and $MesF==9) {
  100.  
  101. $PagBim4 = $valor1 * 4;
  102. echo "$PagBim4";
  103.  
  104. }
  105. elseif ($F_Me==3 and $MesF==11) {
  106.  
  107. $PagBim5 = $valor1 * 5;
  108. echo "$PagBim5";
  109.  
  110. }
  111.  
  112.  
  113.  
  114. ////
  115. if ($F_Me==5 and $MesF==5) {
  116.  
  117. echo "$valor1";
  118.  
  119. }elseif ($F_Me==5 and $MesF==7) {
  120.  
  121. $PagBim2 = $valor1 * 2;
  122. echo "$PagBim2";
  123.  
  124. }elseif ($F_Me==5 and $MesF==9) {
  125.  
  126. $PagBim3 = $valor1 * 3;
  127. echo "$PagBim3";
  128.  
  129. }elseif ($F_Me==5 and $MesF==11) {
  130.  
  131. $PagBim4 = $valor1 * 4;
  132. echo "$PagBim4";
  133.  
  134. }
  135.  
  136.  
  137.  
  138.  
  139.  
  140. ////
  141. if ($F_Me==7 and $MesF==7) {
  142.  
  143. echo "$valor1";
  144.  
  145. }elseif ($F_Me==7 and $MesF==9) {
  146.  
  147. $PagBim2 = $valor1 * 2;
  148. echo "$PagBim2";
  149.  
  150. }elseif ($F_Me==7 and $MesF==11) {
  151.  
  152. $PagBim3 = $valor1 * 3;
  153. echo "$PagBim3";
  154.  
  155. }
  156.  
  157.  
  158.  
  159.  
  160.  if ($F_Me==9 and $MesF==9) {
  161.  
  162. echo "$valor1";
  163.  
  164. }elseif ($F_Me==9 and $MesF==11) {
  165.  
  166. $PagBim2 = $valor1 * 2;
  167. echo "$PagBim2";
  168.  
  169. }
  #2 (permalink)  
Antiguo 11/09/2014, 17:05
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Conservar el valor de la primer variable dentro del if

¿Cual variable y cual if()? ¿O nos toca adivinar?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 11/09/2014, 17:08
Avatar de rachpts  
Fecha de Ingreso: febrero-2012
Mensajes: 117
Antigüedad: 12 años, 8 meses
Puntos: 0
Respuesta: Conservar el valor de la primer variable dentro del if

tal vez no me explico bien, sucede que en el primer if guarda esa operacion en una variable que se llama "$valorF" lo que quiero es que al pasar al siguiente if, me deje sumar ese valor y no lo hace :(
  #4 (permalink)  
Antiguo 11/09/2014, 17:23
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Conservar el valor de la primer variable dentro del if

Pues es que eso lógicamente no es posible, porque el alcance de dicha variable es únicamente dentro del if() donde lo definiste:

Código PHP:
if (/* algo */) {
  
$variable 'valor';
} elseif (
/* algo_mas */) {
  
// ACÁ $variable NUNCA EXISTIRÁ

A eso se le conoce como alcance, y es básico en todos los lenguajes de programación.

Ambos bloques no tienen el mismo alcance, pero ambos sí pueden leer los variables del contexto superior.

Es decir, antes de los if's:

Código PHP:
$variable 'valor';

if (
/* algo */) {
 
// ACÁ SÍ PUEDES LEER $variable
} elseif (/* algo_mas */) {
 
// ACÁ TAMBIÉN

Por favor, necesitas estudiar fundamentos de programación para que tengas bien claro lo que es posible y lo que no.

En resumen: si necesitas que ambos bloques puedan leer la variable que deseas debes declararla un nivel más arriba, no dentro de los bloques.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: conservar, mysql, primer, select, sql, valor, 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 18:09.