Мне нравится то, что я вижу выше, однако на самом деле это не так просто ... попробуйте абстрагироваться от двух вещей, которые вы пытаетесь сделать. Во-первых, от руки код примера того, как должен выглядеть HTML-код:
<script type="text/javascript">
// this is bad javascript, but relevant to his situation
series: [{
name: 'Tokyo',
data: [7.0,6.9,9.5,14.5,18.2,21.5,25.2,26.5,23.3,18.3,13.9,9.6]
}, {
name: 'New York',
data: [-0.2,0.8,5.7,11.3,17.0,22.0,24.8,24.1,20.1,14.1,8.6,2.5]
}, {
name: 'Berlin',
data: [-0.9,0.6,3.5,8.4,13.5,17.0,18.6,17.9,14.3,9.0,3.9,1.0]
}, {
name: 'London',
data: [3.9,4.2,5.7,8.5,11.9,15.2,17.0,16.6,14.2,10.3,6.6,4.8]
}]
</script>
Я собираюсь предположить, что ваши данные находятся в двумерном массиве. Значение $ row_testresults имеет вид $test_results['London']=Array(3.9,4.2,5.7)
Следующее предположение: у вас есть куча данных, приведенных в порядок в этом $ row_testresults. Проверьте этот фрагмент:
<?
function multiRow ( $sql ) {
if( $sql == "" ) return FALSE;
//echo "<hr>\$sql=$sql
\n"; // \$row:
$Q = mysql_query($sql);
if( isData($Q) )
while( $row[]=mysql_fetch_assoc($Q) ) {
;//print_r( $row );
}
if( $row == "" )
$rtn_stuff=FALSE;
else
for($i=0; $iprint_r( $row ): <? print_r( $row ); ?>
<? * /
вернуть $ row;
}?>
Если вы сделаете что-то вроде $row_testresults=multiRow($TestResults)
или измените $ testresults для фактического запроса, который генерирует все эти данные ... тогда мой код ниже упрощает жизнь:
Теперь возьмите повторяющийся бит и поместите его в собственный цикл:
<script type="text/javascript">
series:
<?php
$java_data=array();
foreach( $row_testresults as $city=>$arr ){
$tmpstr = "{\nname: '$city',\n";
$tmpstr.= "data: [".implode( ",", $arr )."]\n} ";
$java_data[]=$tmpstr;
}
$java_output="[".implode(", ", $java_data)."]";
echo $java_output;
?>
</script>
Смешивать языки, как это, вероятно, плохо, но здорово, когда вы можете это сделать. Лично мне тяжело, даже когда jQuery и Ajax делают все это в java, поэтому, так как я очень удобен с php, я сделаю вышеописанное перед динамическим вызовом ajax.
Мне также важно использовать редактор с отличной подсветкой синтаксиса. В Windows я использую psPad, а в gnome - Geany. Еще до выхода KDE v4 я использовал Kate.