php数组进入javascript数组document.write javascript_array

时间:2013-08-08 21:04:48

标签: php javascript json

我的javascript数组有问题。我的代码:

$namen = array();
    $mainimg = array();
    $sql1 = mysql_query("SELECT * FROM image WHERE id = ".$id.";");

        echo "<div class='normal'>";

        while($row = mysql_fetch_array($sql1))
        {
            $namen[] = $row['bild']; 
            $mainimg[] = $row['mainimg'];
            $number_array = count($namen);
            ?>
            <script type='text/javascript'>
            <?php
            for($a=1; $a <= count($namen); $a++){
                $php_array = array($a => $row['bild']);
                $js_array = json_encode($php_array);
                echo "var javascript_array = ". $js_array . ";\n";
                echo "document.write(javascript_array + '<br />');";

                }
            ?>
            </script>
        }

现在我在浏览器中获得[object] [Object],但我想打印出元素,图片的名称。我该怎么办?

提前感谢您的帮助。

问候,Yanick

2 个答案:

答案 0 :(得分:1)

您正在尝试将Object打印为string。您需要做的是直接从对象访问您的属性。

<script>
<?php $data = array('foo' => 'bar'); ?>
var my_js_var = <?php echo json_encode($data); ?>;
</script>

使用此脚本,您可以访问以下值:

document.write(my_js_var.foo); // writes 'bar'

答案 1 :(得分:0)

您需要遍历数组并输出每个项目所需的字段。您当前正在使用JavaScript打印出对象的字符串版本,该版本始终为[object Object]