2016-10-31 4 views
0

私は自分のアプリケーションのための 'ドリルダウン' UITableを作成するために探しています。このコードが配列の最初の行だけを返す理由は何ですか?

ユーザは'country' > 'division' > 'team'を選択します。それぞれは現在、データベース内に別のテーブルとして存在し、idでリンクされています。

私は各テーブルの詳細を取得し、それらを単一の配列に入れてUITableで使用するためにswiftに送るPHP関数を書いています。

しかし、これはコード現在のみ出力:

{ "国":[{ "ID": "1"、 "名前": "デンマーク"}]、 "分割":[{」 "id": "1"、 "country_id": "1"、 "Name": "ALKA SUPERLIGA"}]、 "teams":[{"id": "1"、 "division_id": "1"、 "name 「:ヌル}]}

そして、私は、これはそれが唯一のトンを印刷している理由は何すべて

$countries = array(); 
    $countries = getCountries($countries); 

    $divisions = array(); 
    $divisions = getDivisions($divisions); 

    $teams = array(); 
    $teams = Teams($teams); 

    public function getCountries() 
     { 
     $returnValue = array(); 
     $sql = "select * from countries"; 

     $result = $this->conn->query($sql); 
     if($result != null && (mysqli_num_rows($result) >= 1)){ 
      $row = $result -> fetch_array(MYSQLI_ASSOC); 
      if(!empty($row)){ 
       $returnValue[] = $row; 
      } 
     } 
     return $returnValue; 

    } 

    public function getDivisions() 
    { 
     $returnValue = array(); 
     $sql = "select * from divisions"; 

     $result = $this->conn->query($sql); 
     if($result != null && (mysqli_num_rows($result) >= 1)){ 
      $row = $result -> fetch_array(MYSQLI_ASSOC); 
      if(!empty($row)){ 
       $returnValue[] = $row; 
      } 
     } 
     return $returnValue; 

    } 

    public function getTeams() 
    { 
     $returnValue = array(); 
     $sql = "select * from teams"; 

     $result = $this->conn->query($sql); 
     if($result != null && (mysqli_num_rows($result) >= 1)){ 
      $row = $result -> fetch_array(MYSQLI_ASSOC); 
      if(!empty($row)){ 
       $returnValue[] = $row; 
      } 
     } 
     return $returnValue; 

    } 

    echo json_encode(array('countries' => $countries,'divisions' => $divisions,'teams' => $teams)); 

を取得するために期待しているだろう彼は最初の行ですか?

2番目のメモでは、チーム内のそのヌルは「BrøndbyIF」と言うべきです - それは特殊文字のためにそれを蹴ったのですか?

+0

文字エンコードが正しく行われている限り、文字列フィールドに「特殊文字」は問題ありません(デフォルトのアドバイスはすべてUTF-8を使用することです)。フロントエンドからデータベースへの道のり)。問題が見つからない場合は、別の質問をする必要があります。 –

+0

øをデータベースに直接変更して正しく出力しました。私はそれがどこから来たのかがさらに増えるので、別の質問をしなければならないと思います! – RDowns

答えて

2

実際にデータベースから返された行をループしているわけではありません。 fetch_arrayは配列として1つの結果行を取得します。

関連する問題