2013-01-19 6 views
1

데이터베이스에서 여러 필드를로드하고 자바 스크립트에서 사용하는 것에 대한 질문이 있습니다. 데이터베이스에서 데이터로드 + ajax + ph

내 테이블 "죽음"필드입니다 :

- district 
- year_1999 
- year_2000 
- year_2001 
- year_2002 
- year_2003 
- year_2004 
- year_2005 
- year_2006 
- year_2007 
- year_2008 
- year_2009 

가 지금은 필드 년을로드 할 _.... 지구 = 'districtname'

이것은 내가 가지고있는 경우 : (PHP)

$host = "localhost"; 
    $user = "root"; 
    $pass = "root"; 

    $databaseName = "testdatabase"; 
    $tableName = "deaths"; 

    //-------------------------------------------------------------------------- 
    // 1) Connect to mysql database 
    //-------------------------------------------------------------------------- 

    $con = mysql_connect($host,$user,$pass); 
    $dbs = mysql_select_db($databaseName, $con); 

    //-------------------------------------------------------------------------- 
    // 2) Query database for data 
    //-------------------------------------------------------------------------- 
    $result = mysql_query("SELECT year_1999,year_2000,year_2001,year_2002,year_2003,year_2004,year_2005,year_2006,year_2007,year_2008,year_2009 FROM $tableName WHERE district = 'Binnenstad'");   //query 

    $data = array(); 
    while ($row = mysql_fetch_row($result)) 
    { 
    $data[] = $row; 
    } 
    echo json_encode($data); 

자바 스크립트 :

$(function() 
    { 
    //----------------------------------------------------------------------- 
    // 2) Send a http request with AJAX http://api.jquery.com/jQuery.ajax/ 
    //----------------------------------------------------------------------- 
    $.ajax({          
     url: './api4.php',     //the script to call to get data   
     data: "",      //you can insert url argumnets here to pass to api.php 
             //for example "id=5&parent=6" 
     dataType: 'json',    //data format  
     success: function(rows)   //on recieve of reply 
     { 
     //-------------------------------------------------------------------- 
     // 3) Update html content 
     //-------------------------------------------------------------------- 

     for (var i in rows) 
     { 
      var row = rows[i];   

      var data = row[0]; 

      $('#districts ul').append("<li>" + data + "</li>") 
        .append(); 
     } 
     } 
    }); 
    }); 

그러나 첫 번째 열 데이터 (year_1999) 만 표시됩니다.

어떻게 해결할 수 있습니까?

+2

/테이블 난 당신이 대답을 인정하지 않았다 프로필에서 볼 미친 물건 – Peter

+0

1,775,531이며, 한편 그의 결과 일 수있다 나쁜 대답은 당신이 낮은 보복으로 인해 미래에 좋은 사람을 잃어 버려야합니다. –

답변

3

대신 for (var i in rows) ... 시도 :

UPDATE. 매년 그릴이 something like을 시도 가깝게 PHP를 상대 : 다른 열에서 매년 유지

$.each(rows, function(i, data) { 
    $.each(data, function(j, year) { 
     $('#districts ul').append("<li>" + year + "</li>") 

    }); 
}); 
관련 문제