2016-06-14 10 views
2

Mysql配列から最小値と最大値を取得しようとしています。しかし、私は常に出力と同じ価値を得ます。最小値と配列の最大値は常に同じ値になります

$query1 = "SELECT * FROM `seriennummern` WHERE id = '$i'"; 
    $result1 = $mysqli->query($query1); 
    $countSN = $result1->num_rows; 
    while($row = $result1->fetch_array()) 
    { 
     $max = (max(array($row['Seriennummer']))); 
     $min = (min(array($row['Seriennummer']))); 
     print_r(array($row['Seriennummer'])); 

    } 

ますprint_rからの出力は

Array ([0] => 53928) Array ([0] => 56945) Array ([0] => 58055) Array ([0] => 59149) Array ([0] => 70518) Array ([0] => 72020) Array ([0] => 71198) Array ([0] => 51161) Array ([0] => 56945) Array ([0] => 70665) 

であると私は70665.

+0

はこれを見ることを防ぐために:http://stackoverflow.com/questions/11727746/how-do-i-fill-an-array-inside-aループの途中で新しいスコープごとにループを繰り返す –

+0

ループアプローチを使用している場合は、現在の値と以前の値を単純に比較して、 (そしてそれより低い)。 – Strawberry

答えて

2

だけMIN and MAXクエリ

SELECT MIN(Seriennummer) AS Min_Seriennummer, MAX(Seriennummer) AS Max_Seriennummer 
FROM `seriennummern` WHERE GeraeteID = '$i' 

を使用した値として、配列から最後の値を持って、あなたは分を取得します最大値

$result1 = $mysqli->query($query1); 
$countSN = $result1->num_rows; 
while ($row = $result1->fetch_array()) { 
    echo $min = $row['Min_Seriennummer']; 
    echo $max = $row['Max_Seriennummer']; 
} 

あなたのコードは、SQLインジェクションのチェックのために開いているHow can I prevent SQL injection in PHP?

関連する問題