使用PHP在foreach循环中更改外部Javascript的值

3

如何在PHP foreach循环中更改js变量的值?

js需要是外部的。

这是我想要在javascript中获得输出$prozent的index.php的一部分,我不知道如何获取PHP变量以便在循环中每次执行js,而且这个js是一个图表。我在循环中使用这个图表js来获取图表,它位于echo'<div class="chart-wrapper">中。

<?php
                $sql = //SQL query
                $res = mysql_query($sql);
                $i = 0;
                $survey = array();
                 while ($row = mysql_fetch_assoc($res)) {
                    $survey[$i]['label'] = $row['Label'];
                    $i++;
                }

                    foreach ($survey as $survey) {    
                    echo '<div class="col-md-4">';
                    echo '<div class="front face">';                

            echo "<h3> ".$survey['label']."<br>";
            $sql = //SQL Query
            $res = mysql_query($sql) ;
            $sql = //SQL Query
                $resSum = mysql_query($sql) ;
            while ($row = mysql_fetch_array($resSum)) {
                $survey['ausgabe'] = $row['sum(a.answer)'];
                 }


                $anzahlreihen = mysql_num_rows($res);
                if ($anzahlreihen > 0) {    
                $prozent = $anzahlreihen * $survey['ausgabe'];
                   //bunch of ifelse statements
              //This is the variable i want to get in the js    
            echo (round( $prozent, 2));
                    echo '</font>';
                }
                }
            echo '</div>';
            echo '<div class="back face center">';
            echo'<div class="chart-wrapper">
        }
1个回答

1
PHP和Javascript之间有两种交互方式。
一种是使用AJAX请求PHP脚本,该脚本返回JSON格式的数据;另一种是让PHP输出以下示例HTML代码。
<script type="text/javascript">
var variable = value;
</script>

2
你也可以想象一个 PHP 处理程序将完整的 JS 文件作为输出返回。在你的 AJAX 替代方案中,值得注意的是,你不一定需要从你的 PHP 返回一个 JSON 格式的答案,它可以是任何东西,尽管 JSON(P) 通常是最合适的选择... - Laurent S.
确实,重新思考你的逻辑结构。 - glend
@doveyg,我能否使用JS从innerHTML中多次提取变量? - Emperor'
那样做可以,是的。不过你需要显示它吗? - glend
很好,我在寻找,但我的JS代码不以函数开始,而且我不知道需要调用哪个函数来执行整个程序 :( - Emperor'
你应该编写一个新的函数,它最少做你需要的事情,然后只需在任何其他函数之外调用该函数。你甚至不需要编写一个函数。 - glend

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接