Witam, mam problem natury dosyć nietypowej.
Krótki opis funkcjonalności skryptu:
Użytkownik zaznacza za pomocą checkbox-ów interesujące go dane(JS), które z automatu pobierane są przez skrypt(PHP) i po otrzymaniu danych powinny być wyświetlone w systemie w formie wykresu. Tutaj pojawia się problem. W wyniki końcowym kod JS z wykresem jest generowany, ale pozostaje widoczny tylko pokazując źródło zaznaczenia. Na samej stronie niestety już się nie pojawia.

Plik index.php
  1. <head>
  2. <script type='text/javascript' src='http://www.google.com/jsapi'></script>
  3. <script type="text/javascript" src="wybor.js"></script>
  4. </head>
  5.  
  6. <form method="POST">
  7. <strong>Wybrany produkt piwo Żywiec butelka [0.5l] </strong>
  8. <div>
  9. <label><input onclick="showPart(this.value,100)" name="g" value="7" type="checkbox">Rzeszów</label>
  10. <label><input onclick="showPart(this.value,100)" name="g" value="8" type="checkbox">Warszawa</label>
  11. <label><input onclick="showPart(this.value,100)" name="g" value="9" type="checkbox">Poznań</label>
  12. <label><input onclick="showPart(this.value,100)" name="g" value="10" type="checkbox">Wrocław</label>
  13. <label><input onclick="showPart(this.value,100)" name="g" value="11" type="checkbox">Lublin</label>
  14. </div>
  15. </form>
  16. <br />
  17. <div id="informacja">TUTAJ ŁADUJE SIĘ SKRYPT JS</div>
  18. </body>
  19. </html>


Plik wybor.js
  1. var xmlhttp;
  2.  
  3. function showPart(str,str2)
  4. {
  5. xmlhttp=GetXmlHttpObject();
  6. var url="wczytaj.php";
  7. url=url+"?id_p="+str2;
  8. url=url+"&part="+str;
  9. url=url+"&sid="+Math.random();
  10. xmlhttp.onreadystatechange=stateChanged;
  11. xmlhttp.open("GET",url,true);
  12. xmlhttp.send(null);
  13. }
  14.  
  15. function stateChanged()
  16. {
  17. if (xmlhttp.readyState==4)
  18. {
  19. document.getElementById("informacja").innerHTML=xmlhttp.responseText;
  20. }
  21. }
  22.  
  23. function GetXmlHttpObject()
  24. {
  25. if (window.XMLHttpRequest)
  26. {
  27. return new XMLHttpRequest();
  28. }
  29. return null;
  30. }


Plik wczytaj.php
  1. // troszke kodu generujacego ponizsze wyniki:
  2. $data_start='2011,03,19';
  3. $data_koncowa='2011,07,08';
  4. $cols="data.addColumn('number', ''); data.addColumn('string', 'title1'); data.addColumn('string', 'text1');
  5. data.addColumn('number', ''); data.addColumn('string', 'title1'); data.addColumn('string', 'text1');"
  6. $notowanie="
  7. [new Date(2011,03,19) ,5.500,undefined,undefined,4.700,undefined,undefined ],
  8. [new Date(2011,03,30) ,6.900,'Warszawa',undefined,undefined,undefined,undefined ],
  9. [new Date(2011,04,08) ,undefined,undefined,undefined,5.000,undefined,undefined ],
  10. [new Date(2011,04,12) ,undefined,undefined,undefined,5.000,undefined,undefined ],
  11. [new Date(2011,07,07) ,undefined,undefined,undefined,4.200,undefined,undefined ],
  12. [new Date(2011,07,08) ,undefined,undefined,undefined,4.200,'Katowice',undefined ]
  13. ";
  14.  
  15. <script type='text/javascript'>
  16. google.load('visualization', '1', {'packages' :['annotatedtimeline']});
  17. function drawVisualization()
  18. {
  19. var data = new google.visualization.DataTable();
  20. data.addColumn('date', 'Date');
  21. ".$cols."
  22. data.addRows([
  23. ".$notowanie."
  24. ]);
  25. var annotatedtimeline = new google.visualization.AnnotatedTimeLine(document.getElementById('visualization'));
  26. annotatedtimeline.draw(data, {'displayAnnotations': true,
  27. 'zoomStartTime': new Date(".$data_start."),
  28. 'zoomEndTime': new Date(".$data_koncowa.")
  29. }
  30. );
  31. }
  32. google.setOnLoadCallback(drawVisualization);
  33. </script>
  34. <div id='visualization' style='width: 800px; height: 400px;'></div>";


Sam kod po podstawieniu działa prawidłowo. Tyle że właśnie nie wyświetla się ten wykres. Może problem leży w tym, ze wczytuje JS(wykres) w JS(ładowanie checkbox-ow w indexie).