Foros del Web » Programando para Internet » PHP »

cambiar el nombre de una variable dinamicamente o algo asi :0

Estas en el tema de cambiar el nombre de una variable dinamicamente o algo asi :0 en el foro de PHP en Foros del Web. Amigos. tengo un problemita que quizas me puedan ayudar Lo que pasa es que tengo unas variables que se llaman mas o menos asi $chk_1 ...
  #1 (permalink)  
Antiguo 02/03/2006, 15:21
 
Fecha de Ingreso: febrero-2003
Ubicación: La serena
Mensajes: 144
Antigüedad: 14 años, 10 meses
Puntos: 0
cambiar el nombre de una variable dinamicamente o algo asi :0

Amigos. tengo un problemita que quizas me puedan ayudar
Lo que pasa es que tengo unas variables que se llaman mas o menos asi

$chk_1
$chk_2
$chk_3
$chk_4
$chk_etc.....

lo que quiero hacer es consultar el valor de la variable en un ciclo for

ocea
Código:
for( $i=1; $i <= $fin; $i++)
    	 {
 	 	//aki preguntar por la variable $chk_(y aqui el valor $i)   	 	
        }
gracias por su ayuda.
__________________
Hoy dia aprendí algo nuevo.
  #2 (permalink)  
Antiguo 02/03/2006, 15:25
Avatar de carlosfocus  
Fecha de Ingreso: enero-2006
Ubicación: Venezuela
Mensajes: 823
Antigüedad: 11 años, 10 meses
Puntos: 0
y como generas esa variable $chk_ ??????????????
__________________
Carlos Herrera
Web Developer
www.carlos.com.ve
Para descargar archivos propios a su Teléfono Mobil? www.carlosfocus.com
  #3 (permalink)  
Antiguo 02/03/2006, 15:27
Avatar de Keleriano  
Fecha de Ingreso: junio-2002
Ubicación: Granada
Mensajes: 133
Antigüedad: 15 años, 5 meses
Puntos: 0
No es más facil un array, algo:

$chk[0]
$chk[1]
$chk[2]
$chk[3]
...
$chk[n-1]

y luego hacer

Código PHP:
for ($i=0;$i<n;$i++){
   
//acceder con $chk[$i];

  #4 (permalink)  
Antiguo 02/03/2006, 15:48
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 12 años, 9 meses
Puntos: 33
<?
foreach($chk as $out)
echo "->".$out;
?>//De esta forma recorres tu arreglo.
  #5 (permalink)  
Antiguo 02/03/2006, 20:42
 
Fecha de Ingreso: febrero-2003
Ubicación: La serena
Mensajes: 144
Antigüedad: 14 años, 10 meses
Puntos: 0
Cita:
Iniciado por carlosfocus
y como generas esa variable $chk_ ??????????????
son checkbox que genero en una funcion

lo que quiero hacer es de una pagina llamar una funcion que me genera tantos checkbox como registros tenga una tabla,.
por ejemplo

Tabla criterio
id_criterio|gls_criterio
--------------|------------
1 | criterio1
2 | criterio2
3 | criterio3
4 | criterio4

entonces generaria 4 checkbox.
luego quiero preguntar por los valores de esos checkbox (pero no se cuantos son, por eso hago un ciclo desde 1 hasta el total de registros de la tabla)

y en este cilclo deberia preguntar.

esa es la idea....
__________________
Hoy dia aprendí algo nuevo.
  #6 (permalink)  
Antiguo 02/03/2006, 21:10
Avatar de Panino5001
Moderatroll
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.062
Antigüedad: 13 años, 6 meses
Puntos: 775
Creo que esto es lo que necesitás:
http://es.php.net/manual/es/language...s.variable.php
Se usaría más o menos así:
Código PHP:
for( $i=1$i <= $fin$i++)
         {
$dato='chk_'.$i;
$lavariablequenecesitás=$$dato;
          
//aki preguntar por la variable $chk_(y aqui el valor $i)            
        


Última edición por Panino5001; 02/03/2006 a las 21:30 Razón: agregar cosas
  #7 (permalink)  
Antiguo 03/03/2006, 07:12
 
Fecha de Ingreso: febrero-2003
Ubicación: La serena
Mensajes: 144
Antigüedad: 14 años, 10 meses
Puntos: 0
SI funciona con las variables variables,,, muchas gracias master.

esta es la funcion por si a alguien le sirve.
function
$query=es la consulta sql
$campo_clave = el ID del campo
$campo_glosa=la glosa a mostrar del campo
$conexion=la conexion mysql
$cant_col= cuantoas columnas quiero que se muestren en la tabla
Código:
genera_check_box($query,$campo_glosa,$campo_clave,$conexion,$cant_col)
  {
  	 $resultado = mysql_query($query,$conexion);  	 	     
  	 echo("<tr>");   
  	 $i=1;
	 while($fila = mysql_fetch_array($resultado))
     { 
     	if ($i==$cant_col){    
     	 $i=1;	    		
       	 echo "<tr>";       	 
       }           	
     	if ($i<$cant_col){     		
     		
     		$nombre = "chk_".$fila[$campo_clave];
     		$value=$fila[$campo_clave];     		
     		 $celda="<td width=\"197\"><input type=\"checkbox\" name=\"$nombre\" value=\"$value\"/>";
             $celda.=$fila[$campo_glosa]."</td>";
             echo $celda;
             $i++;
       }
       
       if ($i==$cant_col){     		
       	echo "</tr>";       	
       }           	       
     	
     }
	
  }
y asi la llamo
Código:
<table cellpadding="0" cellspacing="0" border="0">
    <?
    $str_criterios="SELECT * from MI_TABLA";
    genera_check_box($str_criterios,"GLOSA,"ID",$connection,4);
	?>
    </table>
__________________
Hoy dia aprendí algo nuevo.
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 07:45.