JavaScript - Pasar Array Php+Mysql a Array Javascript

   
Vista:
Imágen de perfil de Carlos

Pasar Array Php+Mysql a Array Javascript

Publicado por Carlos (14 intervenciones) el 16/12/2016 16:37:24
Estimados Buenos Días

Tengo esta tabla PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<table width="416" class="table table-striped table-bordered table-hover" id="tabla-empleado">
            <thead>
                <tr class="bg-primary">
                    <th width="232" nowrap="nowrap" bgcolor="#D6D7D6">Competencias Evaluadas</th>
                    <th width="80" nowrap="nowrap" bgcolor="#0080FF">Situación Ideal</th>
                    <th width="88" nowrap="nowrap" bgcolor="#FF6600">Situación Actual</th>
              </tr>
            </thead>
            <tbody>
        <?php
        $select_count="SELECT * FROM  EVALUACION,PREGUNTA,COMPETENCIA WHERE  EVALUACION.ID_EV=PREGUNTA.EVALUACION_ID_EV AND COMPETENCIA.ID_COM=PREGUNTA.COMPETENCIAS_ID_COM AND  CONDICION_EV!='INACTIVO'  AND TIPO_COM='INDIVIDUAL' AND ID_EV='$evaluacion'";
        $resultado_count=mysql_query($select_count);
        $count = mysql_num_rows($resultado_count);
 
        $select_em= "SELECT * FROM  EVALUACION,PREGUNTA,COMPETENCIA WHERE  EVALUACION.ID_EV=PREGUNTA.EVALUACION_ID_EV AND COMPETENCIA.ID_COM=PREGUNTA.COMPETENCIAS_ID_COM AND  CONDICION_EV!='INACTIVO'  AND TIPO_COM='INDIVIDUAL' AND ID_EV='$evaluacion'";
        $resultado_em=mysql_query($select_em);
        while($row_em=mysql_fetch_array($resultado_em)){
        $id_com=$row_em['ID_COM'];
        $competencia=$row_em['NOMBRE_COM'];
        $resultado=$row_em['RESULTADO_P'];
        $select_ca= "SELECT * FROM  ESCALA_CARGO WHERE  COMPETENCIA_ID_COM='$id_com' AND CARGO_ID_CAR='$id_cargo' AND  CONDICION_ES_CA='ACTIVO'";
        $resultado_ca=mysql_query($select_ca);
        $row_ca=mysql_fetch_array($resultado_ca);
        $esperado=$row_ca['ESCALA_ESPERADA'];
         ?>
        <tr>
        <td nowrap="nowrap" bgcolor="#E0E0E0" class="celda">
          <span id="tabla-empleado" style="font-size: 12px; color: #000;"><?php echo $competencia; ?>
          <span style="text-align: justify"></span></span></td>
        <td nowrap="nowrap" bgcolor="#99CCFF">
          <span id="tabla-empleado" style="font-size: 12px"><?php echo $resultado?>
          </span></td>
        <td nowrap="nowrap" bgcolor="#FF9900">
          <span id="tabla-empleado" style="font-size: 12px"><?php echo $esperado?>
          </span></td>
        </tr>
        <?php } ?>
        </tbody>
    </table>

Esta tabla me mostraria este ejemplo
Competencias Situacion Esperada Situacion Actual
A 100 75
B 75 100
C 50 25
(n) (n) (n)
(n)= cantidad de veces segun resultado de consulta

Hasta aqui todo bien, ahora necesito un grafico que me compare estos resultados y lo consegui mediante una libreria y javascrip este es el codigo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
$(function () {
        Highcharts.chart('container_invdividual', {
 
            title: {
            text: 'Competencias Individuales',
            x: -20
          },
            xAxis: {
                categories: ['Jan', 'Feb', 'Mar', 'Apr']
            },
            yAxis: {
              title: {
                text: 'Escala'
            },
                plotLines: [{
                    value: 0,
                    width: 1,
                    color: '#808080'
                }]
            },
            series: [{
                name: 'Situación Ideal',
                data: [100, 75, 100, 75]
            }, {
                name: 'Situación Actual',
                data: [25, 75, 100, 25]
            }]
        });
    });

El tema es que no se como traerme el arreglo de PHP a Javascript para que me muestre los mismos resultados de la tabla como datos de la grafica
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Pasar Array Php+Mysql a Array Javascript

Publicado por xve (1774 intervenciones) el 16/12/2016 21:05:46
Hola Carlos, para obtener datos de PHP, puedes hacerlo de dos maneras...

1.- poniendo el valor del PHP en una variable de javascript al cargar la página, algo así:

1
2
3
<script>
var miVar="<?php echo $variablePHP;?>";
</script>

2.- otra manera es hacer una petición AJAX al servidor para obtener dicho valor.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Carlos

Pasar Array Php+Mysql a Array Javascript

Publicado por Carlos (14 intervenciones) el 18/12/2016 05:51:17
Hola Xve,gracias por constestar

Bueno laopciòn una la intente pero del arreglo me trae solo el ultimo valor es decir si la variable es un arreglo con [1,2,3,4] solo me trae el 4 ahora con el metodo dos no tengo idea de como hacerlo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Pasar Array Php+Mysql a Array Javascript

Publicado por xve (1774 intervenciones) el 18/12/2016 11:23:10
Hola Carlos, perdona, no me di cuenta de que querías pasar un arreglo...

Mira este código haber si te sirve:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<script>
var arrayJS=new Array();
 
<?php
$arrayPHP=array("1","2","3","4");
 
foreach($arrayPHP as $value)
{
	?>
	arrayJS.push("<?php echo $value?>");
	<?php
}
?>
</script>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Carlos

Pasar Array Php+Mysql a Array Javascript

Publicado por Carlos (14 intervenciones) el 19/12/2016 21:21:58
Hola Xve, Estare probando y apenas pruebe te aviso gracias xD
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Carlos

Pasar Array Php+Mysql a Array Javascript

Publicado por Carlos (14 intervenciones) el 19/12/2016 22:32:52
Hola Xev lo he probado y adaptado a mi código y me funciono solo que tengo un detalle los valores que deben ir como leyenda me los toma perfectamente, pero la data no la toma es decir:

Competencia Situacion Esperada Situacion Actual
A
B
C

Cabe destacar que si coloco los valores numericos manuales me hace los calculos pero desde la variable no, en mi logica quizas pienso que los esta tomando como varchar y por eso no hace el calculo o que no lo esta colocando como se debe

Este es el codigo donde coloco los valores manuales (funciona)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
$(function () {
 
            var competenciasJS_i=new Array();
            <?php
            foreach($competencia_i2 as $value_com_i)
            {
              ?>
              competenciasJS_i.push("<?php echo $value_com_i?>");
              <?php
            }
            ?>
 
            var resultadoJS_i=new Array();
            <?php
            foreach($resultado_i2 as $value_res_i)
            {
              ?>
              resultadoJS_i.push("<?php echo $value_res_i?>");
              <?php
            }
            ?>
 
            var esperadoJS_i=new Array();
            <?php
            foreach($esperado_i2 as $value_esp_i)
            {
              ?>
              esperadoJS_i.push("<?php echo $value_esp_i?>");
              <?php
            }
            ?>
 
        Highcharts.chart('container_invdividual', {
 
            title: {
            text: 'Competencias Individuales',
            x: -20
          },
            xAxis: {
                categories: competenciasJS_i
            },
            yAxis: {
              title: {
                text: 'Escala'
            },
                plotLines: [{
                    value: 0,
                    width: 1,
                    color: '#808080'
                }]
            },
            series: [{
                name: 'Situación Ideal',
                data: [100, 75, 25, 25]
            }, {
                name: 'Situación Actual',
                data: [50, 25, 25, 25]
            }]
        });
    });

Repeti varias veces el código para tomar cada variable que iba a utilizar en este caso son CompetenciasJS, ResultadoJs, EsperadoJS
Ahora si remplazo los arreglos numericos manuales por las variables de esta manera:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
$(function () {
 
            var competenciasJS_i=new Array();
            <?php
            foreach($competencia_i2 as $value_com_i)
            {
              ?>
              competenciasJS_i.push("<?php echo $value_com_i?>");
              <?php
            }
            ?>
 
            var resultadoJS_i=new Array();
            <?php
            foreach($resultado_i2 as $value_res_i)
            {
              ?>
              resultadoJS_i.push("<?php echo $value_res_i?>");
              <?php
            }
            ?>
 
            var esperadoJS_i=new Array();
            <?php
            foreach($esperado_i2 as $value_esp_i)
            {
              ?>
              esperadoJS_i.push("<?php echo $value_esp_i?>");
              <?php
            }
            ?>
 
        Highcharts.chart('container_invdividual', {
 
            title: {
            text: 'Competencias Individuales',
            x: -20
          },
            xAxis: {
                categories: competenciasJS_i
            },
            yAxis: {
              title: {
                text: 'Escala'
            },
                plotLines: [{
                    value: 0,
                    width: 1,
                    color: '#808080'
                }]
            },
            series: [{
                name: 'Situación Ideal',
                data: esperadoJS_i
            }, {
                name: 'Situación Actual',
                data: resultadoJS_i
            }]
        });
    });

No tengo resultados en mi gráfica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Carlos

Pasar Array Php+Mysql a Array Javascript

Publicado por Carlos (14 intervenciones) el 20/12/2016 13:59:25
Xve Muchas Gracias por El apoyo

Logre conseguir el metodo para guardarlos en el orden que se necesitaba paso la sección que modifique del script
1
2
3
4
5
6
series: [{
    name: 'Situación Ideal',
    data: [<?php echo join($esperado_i2, ',') ?>]
}, {
    name: 'Situación Actual',
    data: [<?php echo join($resultado_i2, ',') ?>]
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de xve

Pasar Array Php+Mysql a Array Javascript

Publicado por xve (1774 intervenciones) el 20/12/2016 16:13:23
Gracias por compartirlo!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar