2016-04-21 8 views
-2

データベースから最高の値を持つ3つのエンティティを取得し、ソートして各divに配置したいのは、上位3つのスコアボードのようなものです。私はまた、例えば使用してフィールド(ID、名前、説明など)を分離し、それらを取得することができるようになります:mysql/phpを使用してトップ3をソート

<?php echo $sql['id']; ?> 
私はすでに情報を取得し、それをソートするコードを知っている

$sql = ("SELECT * FROM table ORDER BY tablefield DESC LIMIT 3"); 

しかし、私はそれぞれ自分のdivのに3つのエンティティを置いて、名前などのエンティティのフィールドを区切る方法がわからない、説明など

+0

それについては何も魔法はありません: 'while($ row = fetch from result){echo'

'; echo $row stuff; echo '
'; } ' –

+0

PHP開発を始めたばかりで、アプリケーションを作成するには、[Laravel]のように [開発フレームワーク](http://codegeekz.com/best-php-frameworks-for-developers/) (http://laravel.com/)あなたのスタイルとニーズに適しています。これらには、あなたがここで求めていることを正確に行う方法を示す多くの例があります。 – tadman

答えて

1

あなたは、私は非常にお勧めのMySQL(PDO)、それはだを使用している場合次のように行われます。

$sql = "SELECT * FROM table ORDER BY tablefield DESC LIMIT 3"; 
$stmt = $conn->prepare($sql); 
$stmt->execute(); 

/*here you get a multidimentional array with the information you wanted*/ 
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC); 


//this would be one method of extracting the information 
//If you want to place them in specific divs as your 
//question suggests, then you could just use the array 
//inside the divs instead than echoing them out in 
//this foreach loop 

foreach ($rows as $row) 
{ 
    foreach ($row as $key => $value) 
    { 
    echo $key.": ".$value."<br>"; 
    } 
    echo "<br>"; 
} 

/*alternatively you could just use: 

print_r($rows); 

if you just want to have a quick look at the 
composition of the array*/ 
+0

通常、 'prepare()'呼び出しの結果は、文で使用され、 '$ stmt'と呼ばれます。ここではより短い方が良いかもしれない。 – tadman

+0

@タッドマン観測のおかげで!より良いクリーナーです – Webeng

+0

今見栄えます。慣例に従うと、後で驚きが少なくなります。 – tadman

関連する問題