Domanda

Ho una stringa CSV incorporata in un documento XML, che è necessaria per un grafico flash che utilizza XML. Il problema è che il grafico ottiene le impostazioni dal file HTML tramite uno snippet javascript, in questo modo:

<script type="text/javascript">
        // <![CDATA[        
        var so = new SWFObject("/gr/amstock.swf", "line", "100%", "100%", "8", "#FFFFFF");
        //so.addVariable("path", "../amline/");
        so.addVariable("chart_settings", escape('<settings><number_format><thousands_separator></thousands_separator><decimals_separator><![CDATA[.]]></decimals_separator></number_format><number_format><thousands_separator></thousands_separator><decimals_separator><![CDATA[.]]></decimals_separator></number_format><redraw><![CDATA[true]]></redraw><data_sets><data_set did="0"><color><![CDATA[#00688B]]></color><csv><separator><![CDATA[,]]></separator><date_format><![CDATA[MM/DD/YYYY]]></date_format><data><![CDATA[03/29/09,0
03/30/09,0
03/31/09,0
04/01/09,0
04/02/09,0</data><columns>...

Quindi, evidentemente, le nuove righe interrompono il javascript (che viene ripetuto da una variabile PHP). Esiste comunque un modo per rimuovere le nuove righe (o almeno interrompere le nuove righe che interrompono il javascript) e ottenere comunque il grafico flash per leggerlo correttamente come file CSV.

È stato utile?

Soluzione

Prova questo. Se non funziona, ho un'altra idea.

<?php

// assumes *nix style newlines
echo str_replace( "\n", "\\n", $jsCode );

Altri suggerimenti

stringObj.replace("\n","");

dove stringObj è

<script type="text/javascript">
        // <![CDATA[            
        var so = new SWFObject("/gr/amstock.swf", "line", "100%", "100%", "8", "#FFFFFF");
        //so.addVariable("path", "../amline/");
        so.addVariable("chart_settings", escape('<settings><number_format><thousands_separator></thousands_separator><decimals_separator><![CDATA[.]]></decimals_separator></number_format><number_format><thousands_separator></thousands_separator><decimals_separator><![CDATA[.]]></decimals_separator></number_format><redraw><![CDATA[true]]></redraw><data_sets><data_set did="0"><color><![CDATA[#00688B]]></color><csv><separator><![CDATA[,]]></separator><date_format><![CDATA[MM/DD/YYYY]]></date_format><data><![CDATA[03/29/09,0
03/30/09,0
03/31/09,0
04/01/09,0
04/02/09,0</data><columns>...
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top