1

データベースから取得した要素を反復処理したいと考えていますが
、結果は非常に予想外のようです。
以下のコードが と を 2 回出力していることがわかりまし$valueecho "<td id=".$key.$tag.">".$value."</td>";。私が誤解したことはありますか?

   function selectTable($table){
        $sql= "SELECT * FROM ".$table ;
         $result=mysql_query($sql)
                          or die(mysql_error());
        return $result;
  }

  $table = 'battery_con';
  $result = selectTable($table);
  unset($table);

 while($row = mysql_fetch_array($result)){
        ......
        foreach ($row as $key => $value) {
                  print $value; 
                  echo "<td id=".$key.$tag.">".$value."</td>";
                }       
        .....
    }
4

3 に答える 3

3

mysql_fetch_assoc()の場所をmysql_fetch_array() 使用してください

于 2013-07-29T10:13:30.477 に答える
1

デフォルトで@Andreasの回答に加えてmysql_fetch_array、連想インデックスと数値インデックスの両方が提供されます。これが必要ない場合は、whileループの2番目のパラメーターで制限できます。

$row = mysql_fetch_array($result, MYSQL_NUM); // numeric keys only
$row = mysql_fetch_array($result, MYSQL_ASSOC); // associative keys only

@sonusindhu が前述したようmysql_fetch_rowに、数値キーのみを取得するか、mysql_fetch_assoc連想キーのみを取得するために使用することもできます。

アップデート

mysql_xxx() 関数は非推奨になっているため、代わりに mysqli_xxx() 関数の使用を検討する必要があります。

詳細については、php マニュアルの例 1 を参照してください: http://php.net/manual/en/mysqli-result.fetch-array.php

于 2013-07-29T10:27:59.927 に答える