Foros del Web » Programando para Internet » PHP »

Problema con variables globales

Estas en el tema de Problema con variables globales en el foro de PHP en Foros del Web. Buenas noches. Estoy haciendo una matriz con números enteros en donde extraigo el numero mayor de la matriz, pero a su vez tengo que imprimir ...
  #1 (permalink)  
Antiguo 08/04/2016, 21:39
 
Fecha de Ingreso: enero-2010
Ubicación: Colombia
Mensajes: 238
Antigüedad: 14 años, 3 meses
Puntos: 2
Problema con variables globales

Buenas noches. Estoy haciendo una matriz con números enteros en donde extraigo el numero mayor de la matriz, pero a su vez tengo que imprimir en que fila y columna se encuentra este numero. Ya hice la extraccion del numero mayor de la matriz y la imprimo tambien el problema es que para imprimir la posicion debo hacerla fuera de los ciclos for para que no se me repitan las impresiones de las posiciones debido a los ciclos, y al hacerlos por fuera se me pierden las variables, por eso averigue y me dicen que se hace con varibles globales pero al hacerlo tambien se me pierden las variables y no me imprime nada como lo estoy tratando de hacer

Código PHP:
        <form name="ejer2" method="post">
            <b>Digite la cantidad de Filas y columnas a generar:</b>
            <br></br>
            Filas: <input type="text" name="filas"></input>
            Columnas: <input type="text" name="columnas"></input>
            <input type="submit" name="enviar" value="Enviar"></input>
        </form>
<?php  
if ($_POST['enviar']){ 
    
$mayor=0;
    echo 
"<table border width='400' height='200'>"
    for(
$i=0;$i<$_POST[filas];$i++){ 
        echo 
"<tr>"
    for(
$j=0;$j<$_POST[columnas];$j++){             
        
$matriz=rand(0,100);
        echo 
"<td>$matriz</td>"
        if (
$matriz>$mayor){
            
$mayor=$matriz;
        }
//cierra if
    
}//cierra for columnas 
echo "</tr>";
}
//cierra for filas
echo "</table>"
            
$i=$fila;
            
$j=$columna;
            function 
reco()
            {
                global 
$fila$columna;
            }
reco();
echo 
"<b>Fila posicion:</b>".$fila."  <br><b>Columna posicion:</b>".$columna."  <br><b>Elemento Mayor:</b>".$mayor;                    

}
//cierra boton enviar
?>
Si hago lo de las variables globales dentro de los ciclos for me sale el siguiente error:

Código HTML:
Ver original
  1. Fatal error: Cannot redeclare reco() (previously declared in

Código PHP:
Ver original
  1. for($i=0;$i<$_POST[filas];$i++){
  2.     for($j=0;$j<$_POST[columnas];$j++){            
  3.         $matriz=rand(0,100);
  4.         echo "<td>$matriz</td>";
  5.         if ($matriz>$mayor){
  6.             $mayor=$matriz;
  7.             $i=$fila;
  8.             $j=$columna;
  9.             function reco()
  10.             {
  11.                 global $fila, $columna;
  12.             }
  13.         }//cierra if
  14.     }//cierra for columnas
  15. }//cierra for filas
  #2 (permalink)  
Antiguo 08/04/2016, 23:56
 
Fecha de Ingreso: enero-2011
Mensajes: 94
Antigüedad: 13 años, 3 meses
Puntos: 7
Respuesta: Problema con variables globales

Hola no has pensado que la mejor forma de hacer eso es usando arrays?
  #3 (permalink)  
Antiguo 09/04/2016, 07:15
 
Fecha de Ingreso: noviembre-2003
Ubicación: Zaragoza, España
Mensajes: 1.257
Antigüedad: 20 años, 5 meses
Puntos: 154
Respuesta: Problema con variables globales

Hola nelson12345,

¿Esto no es lo mismo que planteas en este post?

Etiquetas: globales, variable, variables
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 14:12.