2012-03-31 4 views
4

를 사용하여 내 자바 스크립트로 내 레코드를 채울 않습니다 그래서 내가 ZZZ 년대를 넣어 어디 자바 스크립트 .....어떻게 내가 좋아 PHP

의이 부분 ... INTO 행에

채우기 값을 다음 값을 반복해야

categories: ['<?php echo $row_testresults['date']; ?>', 'ZZZ', 'ZZZ'] 

내가 다른 페이지에 .... 이런 식으로합니까 얻을 수 있습니다 ..하지만 난 그게 자바 스크립트 차트

일부 WORKING 비 자바 스크립트 코드와 함께 작동하도록 시도하고있다 .... .....

<?php do { ?><?php echo $row_TestResults['date']; ?><?php } while ($row_TestResults =  mysql_fetch_assoc($TestResults)); ?> 
</body> 
</html> 
<?php 
mysql_free_result($TestResults); 
?> 

답변

3

json_encode()을 사용하면 PHP 객체/배열/문자열을 유효한 JavaScript로 변환 할 수 있습니다.

0

각 행의 날짜를 자바 스크립트 배열에 넣으시겠습니까? 당신은 당신의 코드와 아주 가까이있어,하지만 난 이런 식으로 그것을 할 수 있습니다

<?php 
$categories = ''; 
while ($row_TestResults = mysql_fetch_assoc($TestResults)) { 
    $categories .= (empty($categories) ? '' : "','") . $row_TestResults['date']; 
} 
<script> 
var categories = ['<?= $categories; ?>']; 
</script> 
+0

@ThiefMaster 당 json_encode는 아마도 배열을 페이지로 다시 가져 오는 가장 좋은 방법 일 것입니다. 결과 열에 날짜 열보다 많은 값이있는 경우 PHP에서 집합을 반복하고 날짜 값만있는 배열을 작성해야합니다. 그렇다면 json_encode가 자바 스크립트 배열을 가져옵니다. – davidethell

+1

json 무서워 ... LOL 나는 그것이 어떻게 작동하는지 제로 아이디어를 가지고 ... –

0

<?php 
functin getvalues() { 

    while ($row_TestResults = mysql_fetch_assoc($TestResults)) { 
     echo $TestResults[abc] .", " 
    } 

} 

?> 


<script type="text/javascript"> 
<?php 
echo "var myCat=[". getvalues() ."]"; 

?> 

</script> 
+0

IE는 자바 스크립트 배열에 쉼표를 매달아 싫어. 최종 값 뒤에 코드가 있으면 쉼표가 추가됩니다. – davidethell

0

내가 그것을 미루어 실제로 그러나, 위에서되지보고 있어요 무엇을 좋아하십시오 쉬운 ... 당신이하려는 두 가지를 추상화하려고하십시오. 나는 당신의 데이터가 2 차원 배열에 있다고 가정하기 위하여려고하고있어

<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> 

: 같은 첫째, 손 코드는 HTML을 원하는의 예를 볼 수 있습니다. $ row_testresults의 의미는 $test_results['London']=Array(3.9,4.2,5.7)

입니다. 다음 가정 : $ row_testresults에 정리 된 멋진 데이터가 있음을 가정합니다. 당신이 $row_testresults=multiRow($TestResults) 그런 짓을 또는 $를 변경하는 경우

<? 
function multiRow ($sql) { 
    if($sql == "") return FALSE; 
    //echo "<hr>\$sql=$sql<br><pre>\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; $i<count($row); $i++){ 
        if($row[$i] == "") 
          unset($row[$i]); 
      } 
    /*?>print_r($row): <? print_r($row); ?> </pre> <? */ 
    return $row; 
}?> 

모든 데이터를 생성하는 실제 쿼리에 대한 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가 자바로이 모든 것을하고 있기 때문에 힘든 시간을 보냈다. 그래서 나는 PHP로 매우 편안하기 때문에 동적 아약스 호출 전에 위의 작업을 수행 할 것이다.

구문 강조 기능이있는 편집기를 사용하는 것도 중요합니다. Windows에서는 psPad를 사용하고 그놈에서는 Geany를 사용합니다. KDE가 v4로 돌아 오기 전에 나는 Kate를 사용했다.

+0

아마도 문맥에서 볼 때 그래프를로드하는 것 같습니다. http://fish.cutewhitecloud.com/graph.php –

+0

오, 멋지다! 내 대답 –

+0

편집하려고합니다. 작동하도록 시도 중입니다 ...롤과 나는 내 맥에 약 10 텍스트 편집기를 가지고, 나는 그들 중 하나가 작동 확신합니다. –

관련 문제