0

mysqlテーブルのデータを表示するには、私が慣れている通常の方法は次のとおりです。

while ($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
     echo $row['FIELD'];
}

今、物事をより動的にするために、私はこれを試しました:

/* $array carries list of column names like 'FIELD'. In this case its the only one
 * $result stores whatever the query like "SELECT * FROM TABLE1" returned
 */
function dosomething($array, $result) 
{
     while ($row = mysql_fetch_array($result, MYSQL_ASSOC))
     {
          for($i = 0; $i < sizeof($array); $i++)     //gets size of $array and loops
          {
              echo $row["'".$array[$i]."'"];         //should read $row['FIELD'] yes?
          }
     }
}

上記のコードは何も示していません。データが存在します。echo $ row ['FIELD']; 何かを返します。しかし、ライン

echo $row["'".$array[$i]."'"];

見返りは何も与えません。私は別のようなものを試しました-

echo $row[$array[$i]];

まだ何もありません。

読者に問題を理解してもらうことができたと思います。mysql_fetch_arrayタイプの配列に配列を配置するにはどうすればよいですか?

どんな提案でも大歓迎です。

4

3 に答える 3

0

これを試して....

$ array = array( "テーブルフィールド");

テーブルfieldaはid、name、valueです。

配列に入れる必要があります。

 $array=array('id','name','value');


 function dosomething($array, $result) 
 {
    while ($row = mysql_fetch_array($result, MYSQL_ASSOC))
    {
        for($i = 0; $i < sizeof($array); $i++)     //gets size of $array and loops
        {
            echo $row[$array[$i]];         //should read $row['FIELD'] yes?
         }
    }
 }
于 2012-04-21T10:26:40.023 に答える
0
while ($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
    foreach ($row as $key => $field)
    {
        echo "$key: $value";
    }
}

表示するフィールドはクエリ
で定義する必要があり、dosomething()のような関数を使用しても意味がありません。

于 2012-04-21T10:30:07.403 に答える
-1

なぜ$row["'".$array[$i]."'"]これを使うのですか?やってみようと思います$row["'".$array."'"]

そして、配列が空でないことを確認し、関数を呼び出します

于 2012-04-21T10:20:18.080 に答える