Foros del Web » Programando para Internet » PHP »

problema con regresar array

Estas en el tema de problema con regresar array en el foro de PHP en Foros del Web. el problema es q almaceno mi arreglo en una variable despues de varias consultas, este arreglo es dinamico y no siempre se tiene la misma ...
  #1 (permalink)  
Antiguo 11/08/2011, 17:00
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 2 meses
Puntos: 53
problema con regresar array

el problema es q almaceno mi arreglo en una variable despues de varias consultas, este arreglo es dinamico y no siempre se tiene la misma cantidad de columnas y filas

Cita:
$columnasselect="";

$Columnas="SELECT DISTINCT CONCAT(A.intFKIDFormulario,'-',A.chrName) as lolo FROM tblFormulariotblCampo A INNER JOIN tblFormulario B ON
A.intfkIDFormulario=B.intIDFormulario
WHERE B.intFKIDCampana='$campana' ORDER BY intFKIDFormulario";
$ResTotalColumnas=mysql_query($Columnas);
$NumColumnas=mysql_num_rows($ResTotalColumnas);

$arre=array();
while ($DatosFormularios= mysql_fetch_array ($ResTotalColumnas))
{
$sinespacio = str_replace(" ", "_", $DatosFormularios[0]);
$columnasselect.="' ' as '".$sinespacio."' ,";
array_push($arre, $sinespacio);

}

$Operacion="SELECT $columnasselect intIDOperacion FROM tblOperacion WHERE intFKIDCampana= '$campana'";
$ResOperacion=mysql_query($Operacion);

print "<table border=1>";
print "<tr>";
foreach($arre as $campo)
{
echo "<td>".$campo."</td>";

}
print "</tr>";


while ($DatosOperacion= mysql_fetch_array ($ResOperacion))
{
echo "<tr>";
foreach($arre as $campo)
{
echo "<td>";
$valores=explode("-", $campo);
$chrformulario=$valores[0];
$chrcampo=$valores[1];
$strSQL = "SELECT chrValor FROM tblFormularioDato
WHERE intFKIDOperacion = ".$DatosOperacion['intIDOperacion']." AND chrNombreCampo = '$chrcampo'
AND intFKIDFormulario = $chrformulario";
$resstrSQL=mysql_query($strSQL);
$Dato=mysql_fetch_array($resstrSQL);
$valor=$Dato['chrValor'];
$DatosOperacion[$campo]=$valor;
print $valor;
// print $DatosOperacion[$campo]."_<br>";
echo "&nbsp;</td>";
}
echo "</td></tr>";
}
print "</table>";
lo q desearia es
una vez que almanacene los datos requeridos en mi arreglo "$DatosOperacion" enviar esa variable y leerla en otra parte pero no se como

intente algo asi como :

Cita:
for ($i=0;$i<20;$i++)
{
for ($j=0;$j<20;$j++)
{
print "<br>".$DatosOperacion[$i][$j]."$i-$j";
}
}
para ver si me regresaba algun valor pero sin exito alguien me dice si se puede leer esa variable ?

gracias de antemano
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #2 (permalink)  
Antiguo 11/08/2011, 17:08
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: problema con regresar array

Copia el contenido del array con print_r o var_dump a ver como hay que recorrerlo.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #3 (permalink)  
Antiguo 11/08/2011, 17:11
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 2 meses
Puntos: 53
Respuesta: problema con regresar array

Cita:
var_dump($DatosOperacion);
print "<br>";
print_r($DatosOperacion);
resultados

bool(false)
y nada
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #4 (permalink)  
Antiguo 11/08/2011, 17:14
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: problema con regresar array

No se te está creando el array, para recorrerlo sería algo así:

Código PHP:
Ver original
  1. <?php
  2.  
  3. foreach ($DatosOperacion as $campo => $valor) {
  4.     echo $campo . ' ' . $valor;
  5. }

Pero tienes que solucionar lo del array.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #5 (permalink)  
Antiguo 11/08/2011, 17:22
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 2 meses
Puntos: 53
Respuesta: problema con regresar array

creo el problema es por q se pierde al terminar el while, es decir no persiste

he intentado
$arreglodatos=array();
Cita:
foreach($arre as $campo)
{
echo "<td>";
$valores=explode("-", $campo);
$chrformulario=$valores[0];
$chrcampo=$valores[1];
$strSQL = "SELECT chrValor FROM tblFormularioDato
WHERE intFKIDOperacion = ".$DatosOperacion['intIDOperacion']." AND chrNombreCampo = '$chrcampo'
AND intFKIDFormulario = $chrformulario";
$resstrSQL=mysql_query($strSQL);
$Dato=mysql_fetch_array($resstrSQL);
$valor=$Dato['chrValor'];
$DatosOperacion[$campo]=$valor;
array_push($arreglodatos, $DatosOperacion[$campo]);

print $valor;

echo "&nbsp;</td>";
}
pero no me tira todas las dimensiones del arreglo ahora es un 6 filas por 7 columnas
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”

Etiquetas: mysql, regresar, sql, formulario, 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 05:22.