1

単純な問題の解決策を見つけることができません。残念です。mysql select ステートメントを使用した後、2 つのレコードを取得したとします。これらの結果を 2 つの異なる変数に格納したいとします。たとえば、select ステートメントの後に 4,5 を取得します。4 と 5 を別の変数に保存したい。

$query = mysql_query("SELECT test_id FROM test WHERE MONTH(created)='$res_month'");

while($abc = mysql_fetch_array($query)) {

    echo $abc; 

}
4

3 に答える 3

4

次のように、レコードを配列にプッシュします。

$data = array();
while($abc = mysql_fetch_array($query)) {
    $data[] = $abc;
}

$first = $data[0]['test_id'];
$second = $data[1]['test_id'];
// etc ...

foreach を使用してデータにアクセスできます。

foreach($data as $value){
    //$value
}
于 2013-09-26T21:48:46.077 に答える
0

mysql_fetch_array からの配列のキーは、常にテーブルからのフィールド名です。ループごとに、クエリ結果から新しい行をプッシュします。

アーロンが言うように、値を配列にプッシュして節約できます。テーブルに主キーがある場合は、2 次元配列でも実行できます。このようにして、インデックスで行を見つけることができます。

$query = mysql_query("SELECT test_id,field2,field3 FROM test WHERE MONTH(created)='$res_month'");


$data=array();
while($abc = mysql_fetch_array($query)) 
{

// two dimension array

     $data[$abc['test_id']]['test_id']=$abc['test_id'];
     $data[$abc['test_id']]['field2']=$abc['field2'];
     $data[$abc['test_id']]['field3']=$abc['field3'];

// view values

     echo $abc['test_id']; 
     echo $abc['field2']; 
     echo $abc['field3']; 
}
于 2013-09-26T22:21:19.990 に答える
0
$query = mysql_query("SELECT test_id FROM test WHERE MONTH(created)='$res_month'");
$a = array();
while($abc = mysql_fetch_array($query)) {
$a[] = $abc['test_id']; 
}

値にアクセスするには

foreach($b as $a){
     echo $b;
 }

mysql_* 関数は使用しないでください。PHP 5.5.0 で非推奨になったためです。

于 2013-09-26T21:48:37.953 に答える