Membuat Aplikasi Buku Telepon dengan PHP dan MYSQL

Assalamualaikum wr wb

Met jumpa lagi, sob, di blog sederhana ini…. Kali ini, kita kita mau share nih tentang cara membuat aplikasi sederhana menggunakan PHP dan MYSQL …. Bagi yang belum tahu, PHP adalah bahasa pemrograman web yang terintegrasi dengan HTML dan MYSQL adalah database yang digunakan penyimpanan data teleponnya entar…. Daripada penasaran, lebih baik kita bahas bersama yo…



  • Buat database dengan nama bukutelepon, dan buat tabel dengan nama phone di phpmyadmin, caranya buka aplikasi xampp, klik start pada jajaran Apache dan mysql, kalo udah, klik tombol Admin jajaran MYSQL, nanti phpmyadmin nya pasti muncul….. lalu kasih nama field, tipe data, total karakter, dan jangan lupa pada field id, pada kotak AI atau auto incrementnya centang artinya field id jadi primary key yang ketika pas ada data masuk, nah, nanti data yang masuk tersebut meskipun pada tabelnya nanti muncul nama yang sama, namun, no id nya pasti beda , nah ketentuannya kayak di bawah ini, dan sesuaikan aja….
Membuat Aplikasi Buku Telepon dengan PHP dan MYSQL Pemrograman Web

  • Buat folder di jalur C->Xampp->htdocs, kasih nama phone,
  • Buka notepad/notepad++

a.       Buat inputannya sama tabelnya, nih, kalo dimsimpan, simpan dengan nama index.php, simpan di folder phone tadi. Kodenya kopikan aja nih :

<h1 align="center">Input Data Phone</h1>
<fieldset style="width: 50%; margin: auto;">
   
    
    <form action="simpan.php" method="post">
        <p>
            Nama Lengkap

            &nbsp;&nbsp;&nbsp;<input type="text" name="nama" required />
        </p>
        
        <p>
            Jenis Kelamin&nbsp;&nbsp;&nbsp;

            <input type="radio" name="jenis_kelamin" value="Laki-Laki" id="laki-laki" /><label for="laki-laki">Laki-Laki</label>
            <input type="radio" name="jenis_kelamin" value="Perempuan" id="perempuan" /><label for="perempuan">Perempuan</label>
        </p>
        
        
        <p>
            Nomor Handphone

            <input type="text" name="no_hp" required />
        </p>
        
        <p>
            <input type="submit" value="Simpan" />
            <input type="reset" value="Reset" onclick="return confirm('hapus data yang telah diinput?')">
        </p>
    </form>
</fieldset>

<center><a href="cari.php" style="background-color:#ff3c1f;color:black;text-decoration:none;padding:1px 12px 1px 12px;">Pencarian</a></center>



<?php
include 'connect.php';
?>
<style>
    tbody > tr:nth-child(2n+1) > td, tbody > tr:nth-child(2n+1) > th {
        background-color: #ededed;
    }
    table{
        width: 70%;
        margin: auto;
        border-collapse: collapse;
        box-shadow: darkgrey 3px;
    }
    thead tr {
        background-color: #2dde5f;
    }
</style>

<h1 align="center">PhoneBook List</h1>




<table border="1">
    <thead>
        <tr>
            <th>No</th>
            <th>Nama</th>
            <th>Jenis Kelamin</th>
            <th>No Hp</th>
            <th>Pilihan</th>
        </tr>
    </thead>
    
    <tbody>
    <?php
    $sql = "SELECT * FROM phone ORDER BY id";
    $no  = 1;
    foreach ($dbh->query($sql) as $data) :
    ?>
        <tr>
            <td align="center"><?php echo $no++; ?></td>
            <td><?php echo $data['nama'] ?></td>
            <td><?php echo $data['jenis_kelamin'] ?></td>
            <td><?php echo $data['no_hp'] ?></td>
            <td align="center">
                <a href="edit.php?id=<?php echo $data['id'] ?>"style="background-color:#1aa9b6;color:black;text-decoration:none;padding:1px 12px 1px 12px;">edit</a>
                  
                <a href="delete.php?id=<?php echo $data['id'] ?>"style="background-color:#e82a2a;color:black;text-decoration:none;padding:1px 12px 1px 12px;" onclick="return confirm('Anda yakin akan menghapus data?')">hapus</a>
                                                        <a href="kartu.php?id=<?php echo $data['id'] ?>"style="background-color:#7582ea;color:black;text-decoration:none;padding:1px 12px 1px 12px;">Buat Kartu</a>
            </td>
        </tr>
    <?php
    endforeach;
    ?>
    </tbody>
</table>

b.      Untuk kode simpan ke database, pake kode dibawah ini, nanti simpan dengan nama simpan.php.
<?php
include 'connect.php';

if (isset($_POST)) {
    $sql = "INSERT INTO phone VALUES ('', '$_POST[nama]', '$_POST[jenis_kelamin]','$_POST[no_hp]')";
    $dbh->exec($sql);
}

header("location:index.php");
?>

c.       Untuk koneksi ke database untuk pengelolaan data teleponnya pake koding di bawah ini. Kasih nama connect.php.
<?php
$dsn  = "mysql:dbname=bukutelepon;host=localhost";
$user = "root";
$pass = "";

try {
    $dbh = new PDO($dsn, $user, $pass);
} catch (PDOException $e) {
    echo "Koneksi ke database gagal: ".$e->getMessage();
}
?>

d.      Untuk kode menghapusnya pake kode ini, kasih nama dengan nama delete.php.
<?php
include 'connect.php';
if (isset($_GET['id'])) {
    $dbh->exec("DELETE FROM phone WHERE id = '$_GET[id]'");
}
header("location:index.php")
?>

e.      Untuk tampilan edit data, pake kode ini, kasih dengan nama edit.php.
<?php
include 'connect.php';
if (isset($_GET['id'])) {
    $query = $dbh->query("SELECT * FROM phone WHERE id = '$_GET[id]'");
    $data  = $query->fetch(PDO::FETCH_ASSOC);
} else {
    echo "ID tidak tersedia!
<a href='index.php'>Kembali</a>";
    exit();
}

if ($data === false) {
    echo "Data tidak ditemukan!
<a href='index.php'>Kembali</a>";
    exit();
}
?>
<h1 align="center">Edit Biodata</h1>
<fieldset style="width: 50%; margin: auto;">
    <legend>Form Input Biodata</legend>
    
    <form action="update.php" method="post">
        <input type="hidden" name="id" value="<?php echo $data['id']; ?>" />
        <p>
            Nama Lengkap

            <input type="text" name="nama" required value="<?php echo $data['nama']; ?>"/>
        </p>
        
        <p>
            Jenis Kelamin

            <?php if ($data['jenis_kelamin'] === "Laki-Laki") : ?>
            <input type="radio" name="jenis_kelamin" value="Laki-Laki" id="laki-laki" checked /><label for="laki-laki">Laki-Laki</label>
            <input type="radio" name="jenis_kelamin" value="Perempuan" id="perempuan" /><label for="perempuan">Perempuan</label>
            <?php else : ?>
            <input type="radio" name="jenis_kelamin" value="Laki-Laki" id="laki-laki" /><label for="laki-laki">Laki-Laki</label>
            <input type="radio" name="jenis_kelamin" value="Perempuan" id="perempuan" checked /><label for="perempuan">Perempuan</label>
            <?php endif; ?>
        </p>
        
    
        
        <p>
            Nomor Handphone

            <input type="text" name="no_hp" required value="<?php echo $data['no_hp']; ?>" />
        </p>
        
        <p>
            <input type="submit" value="Simpan" />
            <input type="reset" value="Reset" onclick="return confirm('hapus data yang telah diinput?')">
        </p>
    </form>
</fieldset>


<center><a href="index.php">kembali</a></center>

f.        Untuk kode pengupdatetan data yang diedit, pake kode ini, kasih nama update.php.
<?php
include 'connect.php';

if (isset($_POST)) {
    $sql = "UPDATE phone SET nama = '$_POST[nama]',
                                     jenis_kelamin = '$_POST[jenis_kelamin]',
                                  
                                     no_hp  = '$_POST[no_hp]'
                                 WHERE id = '$_POST[id]' ";
    $dbh->exec($sql);
}

header("location:index.php");
?>

g.       Untuk preview kartu nama, kode nya ada…. Kasih nama dengan nama kartu.php.
<?php
include 'connect.php';
if (isset($_GET['id'])) {
    $query = $dbh->query("SELECT * FROM phone WHERE id = '$_GET[id]'");
    $data  = $query->fetch(PDO::FETCH_ASSOC);
} else {
    echo "ID tidak tersedia!
<a href='index.php'>Kembali</a>";
    exit();
}

if ($data === false) {
    echo "Data tidak ditemukan!
<a href='index.php'>Kembali</a>";
    exit();
}

?>
<style>
 fieldset {
    background-image: url("kucing.png");
    background-color: #cccccc;
}


</style>
<fieldset style="width: 30%; margin: left;">
  
     <center><b>Kartu Pengenal</b></center>
         
        <frame>
    <form action="" method="">
        <input type="hidden" name="id" value="<?php echo $data['id']; ?>" />
        <p>
            Nama Lengkap : <?php echo $data['nama']; ?>
        </p>
         <p>
       
            Jenis Kelamin : <?php echo $data['jenis_kelamin']; ?>

        </p>
        
    
        
        <p>
            Nomor Handphone : <?php echo $data['no_hp']; ?>
        </p>
         </form> </frame></fieldset><center><br>
                         <a href="printkartu.php?id=<?php echo $data['id'] ?>" style="background-color:blue;color:white;text-decoration:none;padding:5px 12px 5px 12px;">Cetak Kartu</a>
                         <a href="index.php"style="background-color:red;color:white;text-decoration:none;padding:5px 12px 5px 12px;">kembali</a></center>
                       
h.      Untuk print kartu teleponnya, pake kode ini dan kasih nama printkartu.php.
<?php
include 'connect.php';
if (isset($_GET['id'])) {
    $query = $dbh->query("SELECT * FROM phone WHERE id = '$_GET[id]'");
    $data  = $query->fetch(PDO::FETCH_ASSOC);
} else {
    echo "ID tidak tersedia!
<a href='index.php'>Kembali</a>";
    exit();
}

if ($data === false) {
    echo "Data tidak ditemukan!
<a href='index.php'>Kembali</a>";
    exit();
}

?>
<style>
 fieldset {
    background-image: url("kucing.png");
    background-color: #cccccc;
}


</style>
<fieldset style="width: 30%; margin: left;">
  
     <center><b>Kartu Pengenal</b></center>
         
        <frame>
    <form action="" method="">
        <input type="hidden" name="id" value="<?php echo $data['id']; ?>" />
        <p>
            Nama Lengkap : <?php echo $data['nama']; ?>
        </p>
         <p>
       
            Jenis Kelamin : <?php echo $data['jenis_kelamin']; ?>

        </p>
        
    
        
        <p>
            Nomor Handphone : <?php echo $data['no_hp']; ?>
        </p>
         </form> </frame></fieldset>
                          <script>
 window.load = print_d();
 function print_d(){
 window.print();
 }
 </script>

i.         Kopiin gambar ini ke folder tadi dan kasih nama kucing. Maksudnya nanti pas cetak kartu, nih gambar jadi background ,bro atau bisa pake gambar lain



j.        Untuk koneksi kedua untuk pencariannya, pake kode ini dan kasih nama connect.php.
<?php
    //database connection. sesuaikan dgn konfigurasi mysql anda
    $host = "localhost";
    $user = "root";
    $password = "";
    $dbname = "bukutelepon";
    $pdo = new PDO("mysql:host=$host;dbname=$dbname", $user, $password, array(
        PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
    ));

k.       Untuktampilan  pencariannya pake kode ini dan kasih nama cari.php.
<style>
body{
   
    background:#f8f9fa;
    width:99%;
}
.form{
   
    padding:30px;
    border:1px solid #eee;
    background:#fff;
    margin-left:30%;
    width:500px;
    height:300px;
}
h2{text-align:center;margin-bottom:30px;color:#ff3c1f}
input,button {height:30px}
table{border-collapse:collapse;width:100%;border:1px solid #ddd}
table tr td,table tr th{height:30px;padding:5px}
.footer{text-align:center;}</style>

<html>
    <head>
        <title>Pencarian Data PhoneBook</title>
        <link rel="stylesheet" href="style.css">
    </head>
    <body>
       <div class="form">
          <h2>Pencarian</h2>
          <form action="" method="get">
            Search: <input name="search" placeholder=" Search"/>
                    <input type="submit" value="GO" />
          </form>
          <table border="1">
               </thead>
                   <tr>
                       <th>No</th>
                       <th>Nama</th>
                       <th>Jenis Kelamin</th>
                       <th>No HP</th>
                   </tr>
               </thead>
               <tbody>
                   
                   <!--Blok PHP-->
                   <?php
                       //include file koneksi
                       include "connect2.php";
                   
                       if(isset($_GET['search'])){
                        
                           $param = $_GET['search'];
                           $query = $pdo->prepare("SELECT * FROM phone WHERE nama LIKE :param OR jenis_kelamin LIKE :param  OR no_hp LIKE :param ");
                           $query->bindValue(':param', '%'.$param.'%', PDO::PARAM_STR);
                           $query->execute();
                           if($query->rowCount() > 0 ){
                               
                               $no=1;
                               while ($r = $query->fetch()) {
                                   
                                   echo '<tr>
                                           
                                            <td>'.$no.'</td>
                                            <td>'.$r['nama'].'</td>
                                            <td>'.$r['jenis_kelamin'].'</td>
                                            <td>'.$r['no_hp'].'</td>
                                         </tr>';
                                   
                                   ++$no;
                   
                                }//end while
                               
                            }else{
                               
                                echo "<tr><td colspan=\"4\">Not Found</td></tr>";
                            }
                           
                        }//end if
                   
                    ?>
                  
               </tbody>
           </table>
      </div>
     <p class="footer"><a href="index.php">kembali</a></p>
    </body>
</html>

 Udah deh… kalo dah silahkan jalankan caranya buka Mozilla, ketikkan di address nya localhost/phone.

Ok, sekian dulu ya sharing nya tar disambung lagi, ya.. bro….
Wassalamualaikum wr wb

0 Komentar untuk "Membuat Aplikasi Buku Telepon dengan PHP dan MYSQL"