1

I need some help. I have some info in my db that I want to show in 2 charts using Google charts script.

Both scripts works but not when I use both scripts in a same page.. I bet is a problem with the while that are both equals since I need to show the same info. If I delete the first while the second loop start to work, but if no, the first just work.

The app works well because if I hardcode the values by hand and without the while works well both..

Here's the code:

<!-- First Chart start here: -->

<script type="text/javascript">
    google.load("visualization", "1", {
        packages: ["corechart"]
    });
    google.setOnLoadCallback(drawChart);

    function drawChart() {
        var data = google.visualization.arrayToDataTable([
            ['Formato', 'Cantidad'], <? php

            //da problema si hay 2 while
            while ($DatRDV = mysql_fetch_array($nrollos)) {
                echo "['".$DatRDV['Formato'].
                "',".$DatRDV['nRollos'].
                "],";
            } ?> ]);

        var options = {
            title: 'Formato de Rollos'
        };

        var chart = new google.visualization.PieChart(document.getElementById('chart_div'));
        chart.draw(data, options);
    }
</script>

<!-- Second chart start here: -->

<script type="text/javascript">
    function drawVisualization() {
        // Create and populate the data table.
        var JSONObject = {
            cols: [{
                id: 'format',
                label: 'Formato',
                type: 'string'
            }, {
                id: 'cantidad',
                label: 'Cantidades',
                type: 'number'
            }],
            rows: [

            <? php
            while ($DatRDV = mysql_fetch_array($nrollos)) {
                echo "{c:[{v: '".$DatRDV['Formato'].
                "'}, {v: ".$DatRDV['nRollos'].
                "}]},";
            } ?> ]
        };

        var data = new google.visualization.DataTable(JSONObject, 0.5);

        // Create and draw the visualization.
        visualization = new google.visualization.Table(document.getElementById('table'));
        visualization.draw(data, {
            'allowHtml': true
        });
    }

    google.setOnLoadCallback(drawVisualization);
</script>

1 Answer 1

1

try;

mysql_data_seek($nrollos,0);

before the 2nd loop

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.