Autor
|
Tema: Consulta de arrays php (Leído 2,240 veces)
|
mgarcia.informatico
Desconectado
Mensajes: 18
|
Estimados , necesito su ayuda. Tengo una tabla que mediante esta funcion.. function getMonetario($year){ global $link; $sql = "SELECT mon_description FROM tbl_monetaria WHERE mon_year = '$year'"; //echo $sql."--- $link"; //if(mysql_num_rows($consulta) > 0){ } else return ""; }
obtengo un array(bidimencional) con los datos correspondientes. como por ejemplo quedaria asi graficamente en una tabla... Columna 1,1 2 3 5 Fila 2 4 5 7 3 1 6 8 2,1 4 3 9
entonces la idea es generar un script o funcion, y pueda obtener los valores.. solo diagonalmente es decir.. deberia imprimir: 1,1 4 6 9 en un array seria:
Espero que me puedan ayudar. Saludos pd: viendo unos tutorias.. se realiza mediante *** for *** o foreach ***...pero como?? Mod: usa etiquetas GeSHi cuando publiques código, no escribas frases en mayúsculas
|
|
« Última modificación: 16 Enero 2015, 01:02 am por engel lex »
|
En línea
|
|
|
|
Shell Root
|
Por ejemplo, (creo que se llama diagonal principal) $ehn[0] = array(1, 2, 3, 4); $ehn[1] = array(5, 6, 7, 8); $ehn[2] = array(9, 10, 11, 12); $ehn[3] = array(13, 14, 15, 16); for($i=0; $i<=count($ehn)-1; $i++){ for($j=0; $j<=count($ehn[$i])-1; $j++){ if( $i == $j ){ echo $ehn[$i][$j]." "; } } }
Resultado,
|
|
« Última modificación: 15 Enero 2015, 20:57 pm por Shell Root »
|
En línea
|
Te vendería mi talento por poder dormir tranquilo.
|
|
|
mgarcia.informatico
Desconectado
Mensajes: 18
|
Estimado gracias por responder.. tengo claro.. de la maera que realizas el arrays. pero.. no se mas o menos como hacerlo... yo tengo el siguiente script FUNCTION function getMonetario($year){ global $link; $sql = "SELECT mon_description FROM tbl_monetaria WHERE mon_year = '$year'"; //echo $sql."--- $link"; //if(mysql_num_rows($consulta) > 0){ } else return ""; }
Y cuando.. hago print de dicha funcion me genera esto... Array ( [0] => Array ( [1] => 0,6 [2] => 0,8 [3] => 1,3 [4] => 2,1 [5] => 2,8 [6] => 3,1 [7] => 3,2 [8] => 3,4 [9] => 3,7 [10] => 4,6 [11] => 5,7 [12] => 5,7 )
[1] => Array ( [2] => 0,2 [3] => 0,7 [4] => 1,5 [5] => 2,1 [6] => 2,5 [7] => 2,5 [8] => 2,8 [9] => 3,1 [10] => 4,0 [11] => 5,1 [12] => 5,1 )
[2] => Array ( [3] => 0,5 [4] => 1,3 [5] => 2,0 [6] => 2,3 [7] => 2,4 [8] => 2,6 [9] => 2,9 [10] => 3,8 [11] => 4,9 [12] => 4,9 )
[3] => Array ( [4] => 0,8 [5] => 1,5 [6] => 1,8 [7] => 1,9 [8] => 2,1 [9] => 2,4 [10] => 3,3 [11] => 4,4 [12] => 4,4 )
[4] => Array ( [5] => 0,6 [6] => 1,0 [7] => 1,0 [8] => 1,2 [9] => 1,6 [10] => 2,4 [11] => 3,5 [12] => 3,5 )
[5] => Array ( [6] => 0,3 [7] => 0,4 [8] => 0,6 [9] => 0,9 [10] => 1,8 [11] => 2,9 [12] => 2,9 )
[6] => Array ( [7] => 0,1 [8] => 0,3 [9] => 0,6 [10] => 1,5 [11] => 2,5 [12] => 2,5 )
[7] => Array ( [8] => 0,2 [9] => 0,6 [10] => 1,4 [11] => 2,5 [12] => 2,5 )
[8] => Array ( [9] => 0,3 [10] => 1,2 [11] => 2,2 [12] => 2,2 )
[9] => Array ( [10] => 0,8 [11] => 1,9 [12] => 1,9 )
[10] => Array ( [11] => 1,0 [12] => 1,1 )
[11] => Array ( [12] => 0,0 )
)
En otras palabras todo ese arrays.. forma una tabla.. con estos.. valores.. de filas y columnas como puedes ver no esta declarado el array como tu ejemplo... si no que obtiene todo el array al hacer una consulta... ya que.. esos valores van cambiando.. segun el.. año.. es decir.. los valores del año.. 2015... van a hacer distinto.. al de 2014... Quedo atento a tu comentario
|
|
« Última modificación: 16 Enero 2015, 01:03 am por engel lex »
|
En línea
|
|
|
|
Shell Root
|
Es que el array que declare sólo fue por ingresar los valores imaginarios, ahora lo puedes implementar usando, $ehn = function_php(); # Aquí la variable $ehn tiene el array con los valores de la consulta SQL for($i=0; $i<=count($ehn)-1; $i++){ for($j=0; $j<=count($ehn[$i])-1; $j++){ if( $i == $j ){ echo $ehn[$i][$j]." "; } } }
|
|
|
En línea
|
Te vendería mi talento por poder dormir tranquilo.
|
|
|
mgarcia.informatico
Desconectado
Mensajes: 18
|
estimado.. estoy.. casi a punto.. de la solucion... este es mi script.. para.. mostrar los valores.. de una tabla.. de filas y columnas:... FUNCTION para mostrar el array de valores filas y columnas function getMonetario($year){ global $link; $sql = "SELECT mon_description FROM tbl_monetaria WHERE mon_year = '$year'"; //echo $sql."--- $link"; //if(mysql_num_rows($consulta) > 0){ } else return ""; }
Y cuando.. hago print de esta forma... $arrayYear = getMonetario(2014); echo "<pre>"; echo "</pre>";
para mostrarme.. los valores de la tabla de columnas y filas en un arrar que es lo correcto.. Array (
=> Array ( [1] => 0,6 [2] => 0,8 [3] => 1,3 [4] => 2,1 [5] => 2,8 [6] => 3,1 [7] => 3,2 [8] => 3,4 [9] => 3,7 [10] => 4,6 [11] => 5,7 [12] => 5,7 )
[1] => Array ( [2] => 0,2 [3] => 0,7 [4] => 1,5 [5] => 2,1 [6] => 2,5 [7] => 2,5 [8] => 2,8 [9] => 3,1 [10] => 4,0 [11] => 5,1 [12] => 5,1 )
[2] => Array ( [3] => 0,5 [4] => 1,3 [5] => 2,0 [6] => 2,3 [7] => 2,4 [8] => 2,6 [9] => 2,9 [10] => 3,8 [11] => 4,9 [12] => 4,9 )
[3] => Array ( [4] => 0,8 [5] => 1,5 [6] => 1,8 [7] => 1,9 [8] => 2,1 [9] => 2,4 [10] => 3,3 [11] => 4,4 [12] => 4,4 )
[4] => Array ( [5] => 0,6 [6] => 1,0 [7] => 1,0 [8] => 1,2 [9] => 1,6 [10] => 2,4 [11] => 3,5 [12] => 3,5 )
[5] => Array ( [6] => 0,3 [7] => 0,4 [8] => 0,6 [9] => 0,9 [10] => 1,8 [11] => 2,9 [12] => 2,9 )
[6] => Array ( [7] => 0,1 [8] => 0,3 [9] => 0,6 [10] => 1,5 [11] => 2,5 [12] => 2,5 )
[7] => Array ( [8] => 0,2 [9] => 0,6 [10] => 1,4 [11] => 2,5 [12] => 2,5 )
[8] => Array ( [9] => 0,3 [10] => 1,2 [11] => 2,2 [12] => 2,2 )
[9] => Array ( [10] => 0,8 [11] => 1,9 [12] => 1,9 )
[10] => Array ( [11] => 1,0 [12] => 1,1 )
[11] => Array ( [12] => 0,0 )
) pero.. ahora. estoy.. creando una funcion... para.. poder.. imprimir.. los datos de dicho array....en diagonal principal.. estoy.. haciendo.. esto pero.. no resulta.. ayudame.. por fa.. si estoy.. vien o mal.. funcion para mostrar valores en diagonal function getValorizacionMes(){ global $_POST, $meses; $anoAdquirido = 2014; $ehn = getMonetario($anoAdquirido); # Aquí la variable $ehn tiene el array con los valores de la consulta SQL for($i=0; $i<=count($ehn)-1; $i++){ for($j=0; $j<=count($ehn[$i])-1; $j++){ if( $i == $j ){ echo $ehn[$i][$j]." "; } } }
|
|
« Última modificación: 16 Enero 2015, 01:05 am por engel lex »
|
En línea
|
|
|
|
Shell Root
|
y cuando llamas la función que valor te sale? errores? PD: Recuerda etiquetar el código dentro de [ code ]
|
|
|
En línea
|
Te vendería mi talento por poder dormir tranquilo.
|
|
|
engel lex
|
Te modifiqué los temas
por favor al publicar codigo usa las etiquetas GeSHi, y al publicar datos usa la code (el simbolo numeral)
evita usar las mayusculas para escribir... si quieres resaltar algo hay herramientas para ello
procura publicar en elforo correcto (si es php va para php) y evita publicar más de una vez el mismo tema
|
|
« Última modificación: 16 Enero 2015, 01:11 am por engel lex »
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
MinusFour
|
Lo puedes hacer con un solo for para sacar 0,0 1,1 2,2 3,3 etc. ); for($i = 0;$i < count($arr); $i++){ echo $arr[$i][$i] . " "; }
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Lio con Arrays
Programación Visual Basic
|
X-TN
|
2
|
1,611
|
28 Junio 2006, 20:03 pm
por X-TN
|
|
|
Duda con arrays dentro de arrays
« 1 2 »
PHP
|
Servia
|
11
|
7,214
|
10 Marzo 2011, 09:04 am
por Servia
|
|
|
Consulta; Necesito armar una consulta para saber si una fecha ha caido dentro...
Bases de Datos
|
astinx
|
6
|
6,392
|
23 Diciembre 2011, 20:34 pm
por astinx
|
|
|
Menú recursivo con arrays de consulta MySql
PHP
|
l337*
|
2
|
2,591
|
26 Junio 2012, 18:26 pm
por l337*
|
|
|
utilizar valor de consulta en otra consulta
PHP
|
demonstrator
|
0
|
2,048
|
12 Septiembre 2014, 02:59 am
por demonstrator
|
|