Read 263 times | Created 2014-04-11 08:25:41 | Updated 2014-04-11 08:27:20 | | |

 

<!DOCTYPE html>
<html>
  <head>
    <title>Berita</title>
    <style>
      .news-block{margin:10px;padding:3px;}
      .judul{font-size:16pt;font-weight:bold;}  
      .navigasi{text-align:right;}
    </style>
  </head>
  <body>
<?php
/*
--
-- Database: `test`
--
 
-- --------------------------------------------------------
 
--
-- Table structure for table `tbl_berita`
--
 
DROP TABLE IF EXISTS `tbl_berita`;
CREATE TABLE IF NOT EXISTS `tbl_berita` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `judul` varchar(255) NOT NULL,
  `isi` text NOT NULL,
  `tanggal` date NOT NULL,
  `gambar` varchar(255) DEFAULT NULL,
  `hits` int(11) unsigned NOT NULL DEFAULT '1',
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8;
 
--
-- Dumping data for table `tbl_berita`
--
 
INSERT INTO `tbl_berita` (`id`, `judul`, `isi`, `tanggal`, `gambar`, `hits`) VALUES
(1, 'Mengimplementasikan BBCode di Website Kita', 'Ut tincidunt nec ipsum a mattis. Nullam vestibulum augue auctor neque pharetra porttitor. Quisque vel facilisis sem. Fusce placerat tempus erat id faucibus. In hac habitasse platea dictumst. Donec quis sem orci. Maecenas gravida eros eget sapien sagittis consequat.rnrnDuis egestas nunc sed congue consectetur. Vestibulum egestas porttitor ipsum, non varius libero gravida sed. Phasellus ac pulvinar mi. Donec suscipit massa quis interdum placerat. Pellentesque dapibus et mauris in lobortis. Quisque quis felis et purus ullamcorper ultricies a non ipsum. Ut non blandit felis. Aenean at felis blandit, auctor ante sed, ultrices massa. Vivamus vitae elit pharetra, vestibulum diam ac, sollicitudin ligula. Nulla facilisi. Aenean volutpat lorem ligula, ut feugiat massa dictum ac. Nam orci felis, pulvinar a lorem a, tincidunt cursus eros. Quisque felis odio, commodo et odio ac, rutrum adipiscing enim. Praesent feugiat tristique lobortis.rnrnNunc hendrerit luctus eleifend. Praesent sit amet mollis orci, eget bibendum nisi. Maecenas id bibendum dui. Nulla scelerisque, sapien quis sagittis rutrum, nibh arcu fermentum ligula, bibendum semper nulla purus in dui. Nam et dui a ipsum laoreet tristique id ac urna. Donec a ipsum ac felis volutpat suscipit. Aliquam aliquet enim non augue vulputate, ac lacinia sapien lacinia.rnrnPellentesque et felis justo. Nunc quis pharetra justo, vitae commodo mi. Mauris non purus a erat scelerisque feugiat. Vivamus ipsum urna, commodo vitae metus vitae, tristique imperdiet mauris. Duis aliquam dignissim libero, eget pellentesque magna ornare et. Nam vestibulum rhoncus lobortis. Integer eget gravida ipsum. Fusce condimentum eu mi vitae pharetra.', '2014-04-10', NULL, 1),
(2, 'Optimalisasi memory dengan PHP mysqlnd: dari 49MB ke 2MB', 'Suspendisse dapibus nunc mi, quis placerat metus luctus ac. Aenean ut mollis mi. Nullam vitae lacus tristique, consequat erat non, consequat odio. Ut tincidunt vitae orci quis molestie. In fringilla sapien et nulla ultricies viverra. Vivamus eget malesuada elit, eu scelerisque turpis. Aliquam erat eros, volutpat in dictum eu, hendrerit a felis. Aenean nunc odio, fermentum rutrum arcu ac, cursus luctus mi. Morbi nec scelerisque mauris, sit amet viverra enim. Vivamus consectetur tellus quam, vel tempus enim iaculis sit amet. Proin adipiscing, nisi eu fringilla hendrerit, enim mauris luctus urna, eget congue mi leo in diam. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Integer elementum mi sit amet porta vehicula.rnrnInteger posuere in erat quis porta. Vivamus aliquet velit a massa pellentesque, eget interdum neque scelerisque. Sed pharetra scelerisque euismod. Nam dapibus metus ante, gravida sodales velit pulvinar ut. Nam hendrerit risus lobortis velit euismod, quis malesuada erat ornare. Cras fermentum risus in congue sagittis. Nam quis felis et velit volutpat dictum dapibus ac turpis. Ut vel pellentesque elit. Quisque ac urna metus. Suspendisse rhoncus nisl gravida pulvinar vulputate. Nam fermentum feugiat eleifend. Vestibulum ornare commodo ipsum quis ultricies.rnrnPellentesque at augue vitae orci vulputate scelerisque. Sed et gravida sem. Donec at lorem egestas, vulputate nisl ac, molestie risus. Aenean adipiscing lobortis ante in iaculis. Proin eget auctor diam, vel varius tellus. Quisque aliquam sapien a laoreet sodales. Donec eget commodo risus.rnrnIn rutrum, lorem eu sagittis elementum, erat lorem pellentesque sapien, ac lobortis velit felis nec arcu. Duis ultrices vehicula tortor, a eleifend felis. Phasellus facilisis ornare venenatis. Sed molestie condimentum facilisis. Aliquam erat volutpat. Vivamus et ultricies purus. Cras fermentum fermentum augue at tempor. Curabitur consequat nisl venenatis lectus sollicitudin, sed dictum libero ornare. Vivamus facilisis enim erat, vel commodo erat tincidunt ut. Aenean sit amet orci dui. Aliquam vitae eleifend quam, ultricies rhoncus augue. In semper pellentesque ipsum. Maecenas lacinia diam congue, interdum diam sit amet, tempus sapien. In hac habitasse platea dictumst. Mauris vitae ante vestibulum, vulputate metus a, laoreet urna. Integer ut mollis elit.', '2014-04-10', NULL, 1),
(3, 'Perkembangan Data: bagaimana mengubah database dari satu menjadi satu juta node', 'Fusce sed nisi et est lobortis mollis. Ut dignissim ligula ipsum, vel hendrerit turpis elementum ultricies. Phasellus felis lectus, dapibus tempus odio at, laoreet sodales tellus. Etiam imperdiet urna velit, non semper risus dignissim sed. Donec sit amet diam at metus scelerisque bibendum sit amet eu tellus. Vestibulum tempus turpis ligula, eu vestibulum quam adipiscing eu. Aliquam dictum, odio vitae molestie congue, sapien tortor malesuada lacus, et hendrerit enim augue sed turpis. Curabitur id ullamcorper mi. Mauris ac turpis mi.rnrnSuspendisse eu purus eu mi bibendum pulvinar. Etiam eu est quis ipsum lobortis pulvinar at eu ante. Sed quam nisl, vehicula sed tincidunt eget, lobortis eget nisi. Curabitur sed lorem nec erat feugiat placerat sed in diam. Curabitur pharetra aliquam lacus in tristique. In facilisis adipiscing porta. Proin sagittis nisi non nulla dignissim elementum id et mauris. In hac habitasse platea dictumst.rnrnSuspendisse et metus orci. In consequat arcu augue, ac luctus augue tempor sit amet. Quisque mauris lorem, pulvinar at dictum et, consectetur eget quam. In ut aliquam felis, nec auctor lacus. Etiam ut ante quis sem tincidunt rhoncus sit amet nec dolor. Nam pulvinar est nec erat vestibulum dictum. Ut hendrerit massa nibh, eget varius lacus ullamcorper non.rnrnSuspendisse iaculis, sem convallis posuere cursus, erat quam mollis nunc, id ultrices nisi massa et nisl. Integer ornare quam lacinia velit fringilla, a porta orci sagittis. Fusce ut neque sed orci volutpat laoreet. Sed a pellentesque ipsum. Maecenas pharetra scelerisque magna. Curabitur adipiscing turpis eget diam placerat iaculis eu vel sapien. Proin id aliquam diam, nec tempor justo. Praesent ligula enim, dapibus at sagittis quis, faucibus eget arcu. Praesent varius elit enim. Etiam accumsan nunc et ullamcorper pulvinar.', '2014-04-11', NULL, 1);
 
-- --------------------------------------------------------
 
--
-- Table structure for table `tbl_komentar`
--
 
DROP TABLE IF EXISTS `tbl_komentar`;
CREATE TABLE IF NOT EXISTS `tbl_komentar` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `berita_id` int(11) unsigned NOT NULL,
  `komentar` varchar(512) NOT NULL,
  `tanggal` date NOT NULL,
  `nama` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8;
 
--
-- Dumping data for table `tbl_komentar`
--
 
INSERT INTO `tbl_komentar` (`id`, `berita_id`, `komentar`, `tanggal`, `nama`) VALUES
(1, 1, 'nice post', '2014-04-10', 'agus'),
(2, 1, 'inbox source code-nya bang', '2014-04-10', 'budi'),
(3, 2, 'bijimana caranya tuh gan', '2014-04-11', 'agan'),
(4, 1, 'nggak mudeng', '2014-04-11', 'indra'),
(5, 2, 'bisa lebih kecil lagi?', '2014-04-11', 'dewi'),
(6, 1, 'ajarin dong', '2014-04-11', 'tia');
 
*/
$dbhost='localhost';
$dbuser='root';
$dbpass='';
$dbname='test';
$db=new mysqli($dbhost,$dbuser,$dbpass,$dbname);
if(!isset($_GET['id'])){
  $sql='SELECT
         a.id,
         a.judul,
         SUBSTRING(a.isi,1,200) AS isi,
         a.tanggal,
         SUM(IF(ISNULL(b.berita_id),0,1)) AS jml_komentar
       FROM  tbl_berita a
       LEFT JOIN  tbl_komentar b ON b.berita_id = a.id
       GROUP BY b.berita_id
       ORDER BY a.id DESC';
  if($result=$db->query($sql)){
    if($result->num_rows>0){
      while($data=$result->fetch_object()){
        echo "<div class='news-block'>
               <div class='judul'>{$data->judul}</div>
               <div class='keterangan'>
                 <span class='tanggal'>dipublikasikan tanggal {$data->tanggal}</span>
                 <span class='count'>jumlah komentar: {$data->jml_komentar}</span>
               </div>
               <div class='isi'>{$data->isi}</div>
               <div class='navigasi'><a href='news.php?id={$data->id}'>selengkapnya</a></div>
             </div>n";
      }
    }
  }
}else{
  $sql='SELECT *
       FROM  tbl_berita
       WHERE id='.$_GET['id'];
  if($result=$db->query($sql)){
    if($result->num_rows>0){
      $data=$result->fetch_object();
        echo "<div class='news-block'>
               <div class='judul'>{$data->judul}</div>
               <div class='keterangan'>
                 <span class='tanggal'>dipublikasikan tanggal {$data->tanggal}</span>
               </div>
               <div class='isi'><p>".str_replace("nr","</p><p>",$data->isi)."</p></div>
               <div class='navigasi'><a href='news.php'>index berita</a></div>
             </div>n";
       $result->free();
       $sql='SELECT *
            FROM tbl_komentar
            WHERE berita_id='.$_GET['id'];
       if($result=$db->query($sql)){
        if($result->num_rows>0){
          while($data=$result->fetch_object()){
            echo "<div class='komentar'>
                   <div class='tanggal'>
                        <b>{$data->nama}</b> 
                        berkomentar pada {$data->tanggal}
                   </div>
                   <div class='isi'><em>{$data->komentar}</em></div>
                 </div>n";
          }
        }
      }        
    }
  }
}