PHP geeft een nieuw bestand door, Flash negeert dit

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • RetroTycoon
  • Registratie: Juli 2008
  • Laatst online: 22:12
Heey,

Ik zit met het volgende probleem:
Speciaal voor team [Yglo] van Dpcpulse.nl heb ik een weekly stats generator in elkaar gedraaid. Op basis van de huidige dag (of een -via paramaters- ingegeven dag) worden de vorige 7 dagen berekend vanaf die dag, en daarvan wordt de bijbehorende xml-bestanden opgehaald. Dit gaat allemaal zoals afgesproken.
Na dit wordt de bestanden verwerkt, waardoor er een output ontstaat als in:

Hele bestand
Snippet:
XML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<chart showvalues="0" caption="Weekly stats van week 11" xaxisname="dag" yaxisname="naam" formatnumberscale="0" bgcolor="ffffff, dfdfdf" basefontcolor="000000"
 canvasbgalpha="50" canvasbordercolor="ffffff" bgalpha="100">
    <categories>
        <category label="04-03" />
        <category label="05-03" />
        <category label="06-03" />
        <category label="07-03" />
        <category label="08-03" />
        <category label="09-03" />
        <category label="10-03" />

    </categories>
    <dataset seriesname="Brokerchris" color="ff0000">
        <set value="" />
        <set value="11086" />
        <set value="19909" />
        <set value="19909" />
        <set value="23527" />
        <set value="34795" />
        <set value="38094" />

    </dataset>
</chart>


Nu wordt dit in het FusionChart-programma (geeft grafieken in Flash weer) geladen, en wordt de data geleverd in een fantatisch hip kleurtje. Daarbij wordt deze xml met een random nummer geladen, om te voorkomen dat de cache zich ermee gaat bemoeien.

Hele bestand
Snippet:
code:
1
2
3
4
5
<script type="text/javascript">
     var myChart = new FusionCharts("http://l3ga.comoj.com/wp/stats/MSLine.swf", "FusionCharts_1", "750", "600", "0", "0");
     myChart.setDataURL("[b]http://l3ga.comoj.com/wp/stats/statsxml.php?xml=1&dag=10 March 2009&1261416793[/b]");
     myChart.render("chartdiv");
</script>


En hier gaat het fout! Elke keer als ik het probeer, laadt FusionCharts de data van de huidige dag (gedrag dat gewenst is als er GEEN dag wordt meegegeven). Maar ik geef dus wel een dag mee! Als ik in de code kijk zie ik wel dat de dag mee is genomen, zie het dikgedrukte ([b]...[/b] zit niet in de normale code, en is slechts ter verduidelijking).

Als ik de dikgedrukte link open, krijg ik precies wat ik wil (zie het eerste stuk code). Flash doet er alleen dus niks mee (en laadt: http://l3ga.comoj.com/wp/stats/statsxml.php?xml=1)!

Heeft iemand een idee hoe dit mogelijk is, en of dit te verhelpen is? Ik heb ondertussen overal een random nummer aan gekoppeld, en nog steeds blijft hij koppig de verkeerde data weergeven.

Alvast veel dank, ook namens Yglo.
Mocht er iets niet helemaal duidelijk zijn, en dat kan ik me zo voorstellen, vragen staat vrijdag :P

Acties:
  • 0 Henk 'm!

  • HuHu
  • Registratie: Maart 2005
  • Niet online
Die URL is geen geldige URL, want in een URL mogen geen spaties voor komen. Waarschijnlijk wil je iets met urlencode() doen.

Acties:
  • 0 Henk 'm!

  • RetroTycoon
  • Registratie: Juli 2008
  • Laatst online: 22:12
HuHu schreef op vrijdag 13 maart 2009 @ 18:42:
Die URL is geen geldige URL, want in een URL mogen geen spaties voor komen. Waarschijnlijk wil je iets met urlencode() doen.
Excuses, ik had dit al geprobeerd, namelijk met een datum die als 09-03-10. Dat voorkomt de urlencode-problemen, dacht ik. Ik heb het toch voor de zekerheid gefixed, maar het maakt geen verschil.
Toch bedankt voor de suggestie :)

edit: Maar waar te downloaden?

[ Voor 6% gewijzigd door RetroTycoon op 13-03-2009 19:02 ]


Acties:
  • 0 Henk 'm!

  • matthijsln
  • Registratie: Augustus 2002
  • Laatst online: 20-09 00:06
De bug zit hem in het feit dat in de functie getSWFHTML() in FusionChars.js blijkbaar meerdere variabelen aan Flash worden doorgegeven met het "flashvars" attribuut van de "embed" tag maar dat daarin als scheidingsteken '&' wordt gebruikt.

Acties:
  • 0 Henk 'm!

  • RetroTycoon
  • Registratie: Juli 2008
  • Laatst online: 22:12
matthijsln schreef op vrijdag 13 maart 2009 @ 23:14:
De bug zit hem in het feit dat in de functie getSWFHTML() in FusionChars.js blijkbaar meerdere variabelen aan Flash worden doorgegeven met het "flashvars" attribuut van de "embed" tag maar dat daarin als scheidingsteken '&' wordt gebruikt.
Ah, oké. Welke mogelijkheden heb ik nu? Ik dacht zelf aan rewrites, is dat praktisch?

Inmiddels ben ik aan het rewriten geslagen, waardoor het allemaal werkt! Bedankt voor alle tips.

[ Voor 10% gewijzigd door RetroTycoon op 14-03-2009 13:42 ]


Acties:
  • 0 Henk 'm!

  • Tsjilp
  • Registratie: November 2002
  • Niet online

Tsjilp

RS[I]ds

volgens mij was het aanpassen van het & teken naar & amp; voldoende geweest :+

Raar... Is zo gek nog niet


Acties:
  • 0 Henk 'm!

  • matthijsln
  • Registratie: Augustus 2002
  • Laatst online: 20-09 00:06
Tsjilp schreef op zaterdag 14 maart 2009 @ 16:59:
volgens mij was het aanpassen van het & teken naar & amp; voldoende geweest :+
Nee.

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • matthijsln
  • Registratie: Augustus 2002
  • Laatst online: 20-09 00:06
De oorzaak zit in Javascript code. Als je string split op '&' maakt het niet uit of daar nog "amp;" achter staat of niet. In een string expressie in Javascript zijn HTML entities niet van toepassing.
Pagina: 1