2017-04-16 3 views
1

私の投稿は作成時に注文するのではなく、作成した日付で注文する方法を教えてください。だから、新しいものから古いものへ。自動的に。Cakephpの日付を作成しました

<?php 

$db = new PDO('mysql:dbname=forum;host=localhost', 'root', ''); 

// User input 
$page = isset($_GET['page']) ? (int)$_GET['page'] :1; 
$perPage = isset($_GET['per-page']) && $_GET['per-page'] <= 50 ? (int)$_GET['per-page'] : 5; 

// Positioning 
$start = ($page > 1) ? ($page * $perPage) - $perPage : 0; 

// Query 
$posts = $db->prepare(
    " 
    SELECT SQL_CALC_FOUND_ROWS id, title, photo_dir, photo, body, created 
    FROM posts 
    LIMIT {$start}, {$perPage} 
    " 
); 

$posts->execute(); 

$posts = $posts->fetchAll(PDO::FETCH_ASSOC); 

// Pages 
$total = $db->query("SELECT FOUND_ROWS() as total")->fetch()['total']; 
$pages = ceil($total/$perPage); 

?> 

<body> 
    <div id="cont"> 
      <?php foreach($posts as $post): ?> 
       <h2 id="naslov"><?php echo $post['title']; ?></h2> 
       <p id="vri"><?php echo $post['created']; ?></p> 
      <?php endforeach; ?> 
     <div class="pagination"> 
      ... 
     </div> 
    </div> 
</body> 
+0

このようなクエリ – rickdenhaan

+0

にcreated' BY 'ORDERを追加しますか? "作成
LIMIT {$開始}、{$ perPage} BY SELECT SQL_CALC_FOUND_ROWSのID、タイトル、photo_dir、写真、ボディ、
を作成したポスト
ORDER FROMは" それは –

+0

うん動作しない、していますあなたはそれをやった? – rickdenhaan

答えて

1
// Query 
$posts = $db->prepare(
    " 
    SELECT SQL_CALC_FOUND_ROWS id, title, photo_dir, photo, body, created 
    FROM posts 
    ORDER BY created desc 
    LIMIT {$start}, {$perPage} 
    " 
); 
関連する問題