Foros del Web » Programando para Internet » PHP »

guardar en variable resultado de un for

Estas en el tema de guardar en variable resultado de un for en el foro de PHP en Foros del Web. hola chicos tengo este codigo y quiero guardar el resultado del bucle en una variable para luego meterla en una sentencia sql se puede? Código ...
  #1 (permalink)  
Antiguo 20/09/2013, 08:25
 
Fecha de Ingreso: enero-2012
Mensajes: 224
Antigüedad: 12 años, 3 meses
Puntos: 1
guardar en variable resultado de un for

hola chicos tengo este codigo y quiero guardar el resultado del bucle en una variable para luego meterla en una sentencia sql se puede?

Código PHP:
$nombres=$_POST['empresa'];
for (
$i=0$i<=count($nombres); $i++) {    
    echo 
$nombres[$i].'/';
    


este resultado deseo guardarlo en una variable

echo $nombres[$i].'/';
  #2 (permalink)  
Antiguo 20/09/2013, 08:35
Mariuch
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: guardar en variable resultado de un for

Se puede guardar el resultado pero en este caso en cada vuelta del for se reemplazaría el contenido existente de tu variable por lo que valga el array en esa posición en ese momento.

Lo mejor sería que lo guardes en un array.

Código PHP:
$nombres=$_POST['empresa']; 
for (
$i=0$i<=count($nombres); $i++) {     
     
$arrayInfo[] =  $nombres[$i].'/'
     

  #3 (permalink)  
Antiguo 20/09/2013, 08:46
 
Fecha de Ingreso: enero-2012
Mensajes: 224
Antigüedad: 12 años, 3 meses
Puntos: 1
Respuesta: guardar en variable resultado de un for

OK genial y como puedo hacer para guardar todos los resultados de ese array en una variable para luego pasarlo a una sentencia sql? probe con vardump pero no me sirve
  #4 (permalink)  
Antiguo 20/09/2013, 08:51
Mariuch
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: guardar en variable resultado de un for

En este caso ya los tenés guardados en la variable $arrayInfo de tipo array.

Si lo que vos querés por ejemplo es hacer un insert de los datos recibidos simplemente podrías insertar directamente en lugar de guardar primero en una variable:

Código PHP:
<?php
$nombres
=$_POST['empresa']; 
$query "INSERT INTO empresas (NOMBRE) VALUES "// Inventé un nombre de tabla para probar
for ($i=0$i<count($nombres); $i++) {     
    
$query .= '('.$nombres[$i].')'
    
    if( 
$i count$nombres ) - ){
        
$query .= ','// Haces esto para que en la última posición no ponga una coma de más
    
}


mysqli_query$cnx$query );
?>
  #5 (permalink)  
Antiguo 20/09/2013, 09:08
 
Fecha de Ingreso: enero-2012
Mensajes: 224
Antigüedad: 12 años, 3 meses
Puntos: 1
Respuesta: guardar en variable resultado de un for

Gracias Mariuch el tema es que tengo muchos bucles diferentes y queria ver la forma si podia guardar el resultado de cada bucle en una variable y despues pasarlo todo a una sentencia y no tener que meter los for dentro de la sentencia como hiciste, se puede? de igual forma es una alternativa, gracias
  #6 (permalink)  
Antiguo 20/09/2013, 09:12
Mariuch
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: guardar en variable resultado de un for

Claro que se puede! Simplemente tenés que hacer lo mismo pero usando otro for para recorrer el array que acabás de guardar. Te lo muestro:

Código PHP:
<?php
$nombres 
$_POST'empresa' ]; 
for( 
$i 0$i count$nombres ); $i++ ) {     
     
$arrayInfo[] =  $nombres[$i].'/'
     
}  

$query "INSERT INTO empresas (NOMBRE) VALUES "// Inventé un nombre de tabla para probar
for( $a 0$a count$arrayInfo ); $a++ ) {     
    
$query .= '('.$arrayInfo[$a].')'
    
    if( 
$i count$arrayInfo ) - ){
        
$query .= ','// Haces esto para que en la última posición no ponga una coma de más
    
}


mysqli_query$cnx$query );
?>
Una cosa: acordate que count siempre da una posición más de la que tiene el array ya que cuenta la cantidad de ínidices partiendo de 1 y no de 0. Siempre tenés que usar < count( $array) en lugar de <= porque sino te va a dar una posición de más.

Si necesitás recorrer un array para hacer los insert en la sentencia, no te va a quedar otra que usar un for para obtener cada una de las posiciones individualemente.

Saludos!
  #7 (permalink)  
Antiguo 20/09/2013, 09:24
 
Fecha de Ingreso: enero-2012
Mensajes: 224
Antigüedad: 12 años, 3 meses
Puntos: 1
Respuesta: guardar en variable resultado de un for

Un Genio Mariuch gracias por el concejo de COUNT me sirvio por que me agregaba uno de mas siempre es verdad
  #8 (permalink)  
Antiguo 20/09/2013, 09:27
Mariuch
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: guardar en variable resultado de un for

Cita:
Iniciado por mktalternativa Ver Mensaje
Un Genio Mariuch gracias por el concejo de COUNT me sirvio por que me agregaba uno de mas siempre es verdad
Me alegro de que te sirviera! Si no querés escribir 20 mil veces el mismo código para recorrer cada array y generar los querys simplemente podés hacer una función que reciba el nombre de tabla, columnas y array como parámetros y reemplace donde tiene que reemplazar!

P.D: Soy mujer ^^

Saludos

Etiquetas: resultado, 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:02.