Kali ini saya akan berbagi cara membuat aplikasi berita yang sederhana menggunkan PHP dan database MySQL. Halaman depan aplikasi bisa dilihat seperti di bawah ini :
Untuk membuat aplikasi berita secara sederhana, langkah pertama yang kita lakukan adalah merancang tabel-tabel database yang diperlukan. Secara sederhana, struktur tabel dapat dibuat dengan spesifikasi sebagai berik berikut :
1. Berikut ini perintah (SQL) untuk membuat tabel "berita" :
- CREATE TABLE berita(
 - id_berita int(5) unsigned NOT NULL auto_increment,
 - id_kategori int(3) unsigned NOT NULL default '0',
 - judul varchar(100) NOT NULL default '',
 - headline text NOT NULL,
 - isi text NOT NULL,
 - pengirim varchar(15) NOT NULL default '',
 - tanggal datetime NOT NULL default '0000-00-00 00:00:00',
 - PRIMARY KEY (id_berita)
 - ) TYPE=MyISAM;
 
2. Berikut ini perintah (SQL) untuk membuat tabel "kategori" :
- CREATE TABLE kategori(
 - id_kategori int(3) unsigned NOT NULL auto_increment,
 - nm_kategori varchar(30) NOT NULL default '',
 - deskripsi varchar(200) NOT NULL default '',
 - PRIMARY KEY (id_kategori)
 - )TYPE = MyISAM;
 
Catatan : Isikan sejumlah data ke tabel kategori langsung di database, agar data kategori bisa muncul di form input.
3. Membuat File Koneksi Database
Nama File : koneksi.php
Deskripsi : Program koneksi ke database.
Nama File : koneksi.php
Deskripsi : Program koneksi ke database.
- <?php
 - $host = "localhost";
 - $user = "root";
 - $pass = "";
 - $dbnm = "pw2";
 - $conn = mysql_connect($host, $user, $pass);
 - if($conn){
 - $connect = mysql_select_db($dbnm);
 - if(!$connect){
 - die("Database tidak dapat dibuka");
 - }
 - }else{
 - die("Server MySql tidak terhubung");
 - }
 - ?>
 
4. Membuat File Menampilkan Headline Berita
Nama File : index.php
Deskripsi : Program menampilkan 5 berita terbaru di halaman depan.
Nama File : index.php
Deskripsi : Program menampilkan 5 berita terbaru di halaman depan.
- <?
 - include "koneksi.php";
 - ?>
 - <html>
 - <head><title>Index Berita</title>
 - <link rel="stylesheet" href="style.css" />
 - </head>
 - <body>
 - <a href="index.php">Halaman Depan</a>  |
 - <a href="arsip_berita.php">Arsip Berita</a> |
 - <a href="input_berita.php">Input Berita</a>
 - <h2>Halaman Depan ~ Lima Bertita Terbaru</h2>
 - <?
 - $query = "SELECT A.id_berita, B.nm_kategori, A.judul, A.isi, A.pengirim, A.tanggal FROM berita A, kategori B WHERE A.id_kategori=B.id_kategori ORDER BY A.id_berita DESC LIMIT 0,5";
 - $sql = mysql_query($query);
 - while ($hasil=mysql_fetch_array($sql)){
 - $id_berita = $hasil['id_berita'];
 - $kategori = stripslashes($hasil['nm_kategori']);
 - $judul = stripslashes($hasil['judul']);
 - $isi = nl2br(stripslashes($hasil['isi']));
 - $pengirim = stripslashes($hasil['pengirim']);
 - $tanggal = stripslashes($hasil['tanggal']);
 - //tampilkan berita
 - echo "<font size=4>
 - <a href='berita_lengkap.php?id=$id_berita'>$judul</a></font></br>";
 - echo "<small>Berita dikirimkan oleh <b>$pengirim</b>
 - pada tanggal <b>$tanggal</b> dalam kategori <b>
 - $kategori</b></small>";
 - echo "<p>$headline</p>";
 - echo "<hr>";
 - }
 - ?>
 - </body>
 - </html>
 
5. Membuat Halaman Input Berita
Nama File : input_berita.php
Deskripsi : Program input berita.
Nama File : input_berita.php
Deskripsi : Program input berita.
- <?php
 - include "koneksi.php";
 - //proses input berita
 - if(isset($_POST['input'])){
 - $judul = addslashes(strip_tags($_POST['judul']));
 - $kategori = $_POST['kategori'];
 - $headline = addslashes(strip_tags($_POST['headline']));
 - $isi_berita = addslashes(strip_tags($_POST['isi']));
 - $pengirim = addslashes(strip_tags($_POST['pengirim']));
 - //insert ke tabel
 - $query = "INSERT INTO berita VALUES('','$kategori','$judul','$headline','$isi_berita','$pengirim',now())";
 - $sql = mysql_query($query);
 - if($sql){
 - echo "<h2><span style='color: blue;'>Berita telah berhasil ditambahkan</span></h2>";
 - }else{
 - echo "<h2><span style='color: red;'>Berita gagal ditambahkan</span></h2>";
 - }
 - }
 - ?>
 - <html>
 - <head><title>Input Berita</title>
 - <link href="style.css" rel="stylesheet"></link>
 - </head>
 - <body>
 - <a href="index.php">Halaman Depan</a>
 - <a href="arsip_berita.php">Arsip Berita</a>
 - <a href="input_berita.php">Input Berita</a>
 - <form action="" method="post" name="input">
 - <table border="0" cellpadding="0" style="width: 700px;">
 - <tr>
 - <td colspan="2"><h2>Input Berita</h2>
 - </td>
 - </tr>
 - <tr>
 - <td width="200">Judul Berita</td>
 - <td>: <input name="judul" size="30" type="text" /></td>
 - </tr>
 - <tr>
 - <td>Kategori</td>
 - <td>:
 - <select name="kategori">
 - <?
 - $query = "SELECT id_kategori, nm_kategori FROM kategori ORDER BY nm_kategori";
 - $sql = mysql_query($query);
 - while($hasil = mysql_fetch_array($sql)){
 - echo "<option value='".$hasil[id_kategori]."'>$hasil[nm_kategori]</option>";
 - }
 - ?>
 - </select>
 - </td>
 - </tr>
 - <tr>
 - <td>Headline Berita</td>
 - <td>: <textarea cols="50" name="headline" rows="4"></textarea></td>
 - </tr>
 - <tr>
 - <td>Isi Berita</td>
 - <td>: <textarea cols="50" name="isi" rows="10"></textarea></td>
 - </tr>
 - <tr>
 - <td>Pengirim</td>
 - <td>: <input name="pengirim" size="30" type="text" /></td>
 - </tr>
 - <tr>
 - <td> </td>
 - <td>
 - <input name="input" type="submit" value="Input Berita" />
 - <input name="reset" type="reset" value="Cancel" /></td>
 - </tr>
 - </table>
 - </form>
 - </body>
 - </html>
 
6. Menampilkan berita lengkap
Nama File : berita_lengkap.php
Deskripsi : Program menampilkan berita lengkap.
Nama File : berita_lengkap.php
Deskripsi : Program menampilkan berita lengkap.
- <?php
 - include "koneksi.php";
 - if(isset($_GET['id'])){
 - $id_berita = $_GET['id'];
 - }else{
 - die("Error. No Id Selected!");
 - }
 - ?>
 - <html>
 - <head><title>Berita Lengkap</title>
 - <link href="style.css" rel="stylesheet"></link>
 - </head>
 - <body>
 - <a href="index.php">Halaman Depan</a>
 - <a href="arsip_berita.php">Arsip Berita</a>
 - <a href="input_berita.php">Input Berita</a>
 - <h2>Berita Lengkap</h2>
 - <?
 - $query = "SELECT A.id_berita, B.nm_kategori, A.judul, A.isi, A.pengirim, A.tanggal FROM berita A, kategori B WHERE A.id_kategori=B.id_kategori AND A.id_berita='$id_berita'";
 - $sql = mysql_query($query);
 - $hasil = mysql_fetch_array($sql);
 - $id_berita = $hasil['id_berita'];
 - $kategori = stripslashes($hasil['nm_kategori']);
 - $judul = stripslashes($hasil['judul']);
 - $isi = nl2br(stripslashes($hasil['isi']));
 - $pengirim = stripslashes($hasil['pengirim']);
 - $tanggal = stripslashes($hasil['tanggal']);
 - //tampilkan berita
 - echo "<font size=5 color=blue>$judul</font>
 - ";
 - echo "<small>Berita dikirimkan oleh <b>$pengirim</b>
 - pada tanggal <b>$tanggal</b> dalam kategori <b>
 - $kategori</b></small>";
 - echo "<p>$isi</p>";
 - ?>
 - </body>
 - </html>
 
7. Membuat Halaman Arsip Berita
Nama File : arsip_berita.phpDeskripsi : Program arsip keseluruhan berita.
Nama File : arsip_berita.phpDeskripsi : Program arsip keseluruhan berita.
- <?php
 - include "koneksi.php";
 - ?>
 - <html>
 - <title>Arsip Berita</title>
 - <link href="style.css" rel="stylesheet">
 - <script language="javascript">
 - function tanya(){
 - if(confirm("Apakah anda yakin akan menghapus berita ini?")){
 - return true;
 - }else{
 - return false;
 - }
 - }
 - </script>
 - <a href="index.php">Halaman Depan</a>
 - <a href="arsip_berita.php">Arsip Berita</a>
 - <a href="input_berita.php">Input Berita</a>
 - <h2>Arsip Berita</h2>
 - <ol>
 - <?
 - $query = "SELECT A.id_berita, B.nm_kategori, A.judul, A.pengirim, A.tanggal FROM berita A, kategori B WHERE A.id_kategori=B.id_kategori ORDER BY A.id_berita DESC";
 - $sql = mysql_query($query);
 - while($hasil = mysql_fetch_array($sql)){
 - $id_berita = $hasil['id_berita'];
 - $kategori = stripslashes($hasil['nm_kategori']);
 - $judul = stripslashes($hasil['judul']);
 - $pengirim = stripslashes($hasil['pengirim']);
 - $tanggal = stripslashes($hasil['tanggal']);
 - //tamppilkan arsip berita
 - echo "<li><a href='berita_lengkap.php?id=$id_berita'>$judul</a>";
 - echo "<small>Berita dikirimkkan oleh <b>$pengirim</b> pada tanggal <b>$tanggal</b> dalam kategori <b>$kategori</b> </small>";
 - echo "<b>Action : </b><a href='edit_berita.php?id=$id_berita'>Edit</a> | ";
 - echo "<b>Action : </b><a href='delete_berita.php?id=$id_berita' onclick='return tanya()'>Delete</a>";
 - echo "<small></small></li>";
 - }
 - ?>
 - </ol>
 - </html>
 
8. Membuat Halaman Edit Berita
Nama File : edit_berita.php
Deskripsi : Program untuk mengedit berita.
Nama File : edit_berita.php
Deskripsi : Program untuk mengedit berita.
- <?php
 - include "koneksi.php";
 - if(isset($_GET['id'])){
 - $id_berita = $_GET['id'];
 - }else{
 - die("Error. No Id Selected!");
 - }
 - $query = "SELECT id_berita, id_kategori,judul, headline, isi,
 - pengirim, tanggal FROM berita WHERE id_berita='$id_berita'";
 - $sql = mysql_query($query);
 - $hasil = mysql_fetch_array($sql);
 - $id_berita = $hasil['id_berita'];
 - $id_kategori = stripslashes($hasil['id_kategori']);
 - $judul = stripslashes($hasil['judul']);
 - $headline = stripslashes($hasil['headline']);
 - $isi = stripslashes($hasil['isi']);
 - $pengirim = stripslashes($hasil['pengirim']);
 - $tanggal = stripslashes($hasil['tanggal']);
 - //proses edit berita
 - if(isset($_POST['edit'])){
 - $id_berita = $_POST['hidberita'];
 - $judul = addslashes(strip_tags($_POST['judul']));
 - $kategori = $_POST['kategori'];
 - $headline = addslashes(strip_tags($_POST['headline']));
 - $isi_berita = addslashes(strip_tags($_POST['isi']));
 - $pengirim = addslashes(strip_tags($_POST['pengirim']));
 - //update berita
 - $query = "UPDATE berita SET id_kategori='$kategori', judul='$judul', headline='$headline',
 - isi='$isi_berita', pengirim='$pengirim' WHERE id_berita='$id_berita' ";
 - $sql = mysql_query($query);
 - if($sql){
 - echo "<h2><span style='color: blue;'>Berita telah berhasil diedit</span></h2>";
 - }else{
 - echo "<h2><span style='color: red;'>Berita gagal diedit</span></h2>";
 - }
 - }
 - ?>
 - <html>
 - <head><title>Edit Berita</title>
 - <link href="style.css" rel="stylesheet">
 - </head>
 - <body>
 - <a href="index.php">Halaman Depan</a>
 - <a href="arsip_berita.php">Arsip Berita</a>
 - <a href="input_berita.php">Input Berita</a>
 - <form action="" method="post" name="input">
 - <table style="width: 700px;" border="0" cellpadding="0">
 - <tr>
 - <td colspan="2"><h2>Edit Berita</h2></td>
 - </tr>
 - <tr>
 - <td width="200">Judul Berita</td>
 - <td>: <input name="judul" size="30" value="<?=$judul?>" type="text"></td>
 - </tr>
 - <tr>
 - <td>Kategori</td>
 - <td>:
 - <select name="kategori">
 - <?
 - $query = "SELECT id_kategori, nm_kategori FROM kategori ORDER BY nm_kategori";
 - $sql = mysql_query($query);
 - while($hasil = mysql_fetch_array($sql)){
 - $selected = ($hasil['id_kategori']==$id_kategori)?"selected" :"";
 - echo "<option value='$hasil[id_kategori]'>$hasil[nm_kategori]</option>";
 - }
 - ?>
 - </select>
 - </td>
 - </tr>
 - <tr>
 - <td>Headline Berita</td>
 - <td>: <textarea cols="50" name="headline" rows="4"><?=$headline?></textarea></td>
 - </tr>
 - <tr>
 - <td>Isi Berita</td>
 - <td>: <textarea cols="50" name="isi" rows="10"><?=$isi?></textarea></td>
 - </tr>
 - <tr>
 - <td>Pengirim</td>
 - <td>: <input name="pengirim" size="30" value="<?=$pengirim?>" type="text"></td>
 - </tr>
 - <tr>
 - <td> </td>
 - <td>
 - <input name="hidberita" value="<?=$id_berita?>" type="hidden">
 - <input name="edit" value="Edit Berita" type="submit">
 - <input name="reset" value="Cancel" type="reset"></td>
 - </tr>
 - </table>
 - </form>
 - </body>
 - </html>
 
9. Membuat Halaman Delete Berita
Nama File : delete_berita.php
Deskripsi : Program untuk menghapus berita.
Nama File : delete_berita.php
Deskripsi : Program untuk menghapus berita.
- <?php
 - include "koneksi.php";
 - if(isset($_GET['id'])){
 - $id_berita = $_GET['id'];
 - }else{
 - die("Error. No Id Selected!");
 - }
 - ?>
 - <html>
 - <head><title>Delete Berita</title>
 - <link href="style.css" rel="stylesheet">
 - </head>
 - <a href="index.php">Halaman Depan</a>
 - <a href="arsip_berita.php">Arsip Berita</a>
 - <a href="input_berita.php">Input Berita</a>
 - <body>
 - <?
 - //proses delete berita
 - if(!empty($id_berita)&&$id_berita!=""){
 - $query = "DELETE FROM berita WHERE id_berita='$id_berita'";
 - $sql = mysql_query($query);
 - if($sql){
 - echo "<h2>
 - <span style='color: blue;'>Berita telah berhasil dihapus</span></h2>";
 - }else{
 - echo "<h2><span style='color: red;'>Berita gagal dihapus</span></h2>";
 - }
 - echo "klik <a href='arsip_berita.php'>di sini untuk kembali ke halaman arsip berita";
 - }else{
 - die("Access Denied");
 - }
 - ?>
 - </body>
 - </html>
 
10. CSS untuk Menghias Tampilan
Nama File : style.css
Deskripsi : File Css sebagai pemanis tampilan
Nama File : style.css
Deskripsi : File Css sebagai pemanis tampilan
- @charset "utf-8";
 - /* CSS Document */
 - body{
 - font-family:Verdana;
 - font-size:11px;
 - }
 - a{
 - color:#0000ff;
 - text-decoration:underline;
 - }
 - a:hover{
 - color:#ffffff;
 - background-color:#8ac452;
 - text-decoration:none;
 - }
 - input, textarea, select, option{
 - font-family:Verdana;
 - font-size:12px;
 - }
 
Kalau mau download file nya silahkan klik download . Selamat mencoba, semoga bermanfaat :)
Update Contact :
No Wa/Telepon (puat) : 085267792168
No Wa/Telepon (fajar) : 085369237896
Email : Fajarudinsidik@gmail.com
No Wa/Telepon (puat) : 085267792168
No Wa/Telepon (fajar) : 085369237896
Email: Fajarudinsidik@gmail.com
atau Kirimkan Private messanger melalui email dengan klik tombol order dibawah ini :