468x60 Ads



Konversi Desimal ke Biner, Hexa, Oktal di PHP

Di postingan saya kali ini tidak berbeda jauh dari postingan saya sebelumnya. Kalau di postingan ini saya tambahkan halaman seperti login sebelum memasuki area konversi bilangan.

Prosesnya nanti seperti ini :
Sebelum mengkonversikan bilangan, kita diminta untuk menuliskan nama dan memilih jenis kelamin. Dan jika salah satu dari itu ada yang tidak diisi, kita tidak akan bisa masuk ke area konversi bilangan. Jadi harus diisi semua.
Setelah itu, jika sudah masuk ke area konversi bilangan, konsepnya sama seperti saat akan masuk, kita diharuskan mengisi semua yang ada, jika tidak yaa jelas bilangan tidak akan di konversi.
Dan, kali ini bahasa yang kita gunakan ada 4 yaitu : HTML, CSS, Javascript, dan PHP.
Javascript disini memang tidak terlalu mendominasi, fungsinya disini hanya untuk menampilkan 'alert' saja.
Dimana letak javascriptnya ??? Nanti akan Anda temukan setelah Anda menuliskan code-code  di bawah ini.

Daripada kelamaan, langsung aja kita lihat codenya :

1. Buka Netbeans, buat New PHP Web Page. Terserah mau Anda letakkan dimana saja. Beri nama misalnya : Validator.php. Apabila anda ingin merubah backgroundnya, anda bisa mengganti (background:url('1.jpg')).
Dan anda bisa mengganti 1.jpg dengan file anda Usahakan file gambar tersebut anda letakkan dalam satu folder.

<!DOCTYPE html>
<?php
if(isset($_POST['submit'])){//isset : penekanan form
$nama=$_REQUEST['nama'];
    if(isset($_POST['gender'])){
        $gender=$_REQUEST['gender'];
    }
    else{
        $gender='';
    }
$cek='';
}
else{
    $nama='';
    $gender='';
    $cek='Sebelum Masuk, Silahkan Isi Form Di Bawah ini Dahulu';
}
?>

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Konversi Bilangan ke Biner,Oktal,Hexa</title>
                <style type="text/css">
            body{
                background: url('1.jpg') no-repeat;
            }
            .a{                              
                color:lightblue;
                text-align: center;
            }
            .b{               
                color:blue;
                text-align: center;
            }
            form input.highlight{
                background: aquamarine;               
                border-radius:5px;
                padding: 5px;
            }
            form input.highlight:focus {               
                background: whitesmoke;
                border-radius:5px;
                box-shadow:2px 2px 5px blue;
            }
        </style>
    </head>
    <body>
       <h1 class='a'><?php echo $cek ?></h1>
<br>
        <form action="Konversi_bilangan.php" method="post" name="form1">
            <p>
<h3 class='b'>
Nama : <input class='highlight' placeholder="Masukkan Nama Anda disini" required="required" type="text" name="nama" size ="30" value="<?php echo $nama ?>"/></h3>
</p>
<p>
<h3 class='b'>
Jenis Kelamin : <br>
                <input type="radio" name="gender" value="L"
                               <?php ($gender=="L")? print 'checked=""' : print ''; ?>/>
                Laki-Laki<br>
                <input type="radio" name="gender" value="P"
                       <?php ($gender=="P")? print 'checked=""' : print ''; ?>/>
                Perempuan
            </h3>
</p>
<center><input type="submit" name="submit" value="Masuk" /></center>
        </form>
    </body>
</html>

2. Buat New PHP Web Page, dan letakkan pada satu folder yang sama dan beri nama misalnya : Konversi_bilangan. Seperti yang di atas tadi, apabila ingin merubah backgroundnya, bisa anda ganti. Dan letakkan dalam folder yang sama.

<!DOCTYPE html><?php
if(isset($_POST['submit1'])){
$decimal=$_REQUEST['decimal'];
    if(isset($_POST['pilih'])){
        $pilih=$_REQUEST['pilih'];
    }
    else{
        $pilih='';
    }
}
else{
    $decimal='';
    $pilih='';
}
?>

<html>
    <head>
                <style type="text/css">
            body{
                background:url('1.jpg');
            }
            a {
                width: 230px;
                border: 5px solid blue;               
                font:18px;
                font-weight: bold;
                color: white;
                margin: 20px;
                text-align: center;
                padding: 10px;
                border-radius: 12px;               
                -webkit-border-radius: 12px;
                background: lightblue;               
            }
            a:hover{
                background: purple;
            }
            a:active{
                color: #990000;
            }
            .b{
                color: lightgreen;                               
            }
           
                .bayangan1{                              
                font-family:Calibri;
                font-weight:bold;
                color:blue;
            }
            form input.highlight{
                background: aquamarine;               
                border-radius:5px;
                padding: 5px;
            }
            form input.highlight:focus {
                border: solid 1px #D9AD00;               
                border-radius:5px;
                box-shadow:2px 2px 5px blue;
            }
        </style>

        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title></title>
    </head>
    <body>

    <h1 class="b">
<center>Selamat Datang di Tempat Konversi Bilangan</center></h1>
<table border="0" width="900px" heigh="900px" align ="center">
<tr>
    <td align ="center">
    <!-- Proses Pilih Gender dari file Validator.php -->
    <?php
        if(isset ($_POST['submit'])){
            $nama=$_REQUEST['nama'];
            if(isset($_POST['gender'])){
                $gender=$_REQUEST['gender'];
            }
            else{
                $gender='';
            }
        }
        if(isset ($_POST['submit'])){
        if($nama==''|| $gender==''){// tanda || : OR
            echo"<script>
                 alert('Maaf data kurang lengkap ? Isi Nama dan Jenis Kelamin');
                 document.location.href='Validator.php';
                 </script>";//menggunakan javascript
        }
        else{
            //cek jenis kelamin
            //yang ini pakek petik dua
            if($gender=='L'){
                echo"<br><h1>
Selamat Datang Mas $nama !!</h1>
";
               
            }
            else{
                echo"<br><h1>
Selamat Datang Mbak $nama !!</h1>
";
            }
        }
        }
    ?>
    <!-- End proses pilih Gender -->
    </td>
    </tr>
</table>                       
    <table border="1" width="900px" heigh="900px" align ="center" class='bayangan1'>
<tr>
    <td align ="center">
    <p>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>
"
          method="POST" name="form1">
        <h2>
 Tuliskan nilai bilangan Desimal nya : </h2>
<input class='highlight' placeholder="Masukkan Bilangan Desimal disini" required="required" type="text" name="decimal" size ="25" value="<?php echo $decimal ?>"/><br>
        <h2>
 Pilih salah satu Konversi : <br>
        <input type="radio" name="pilih" value="B"
               <?php ($pilih=="B")? print 'checked=""' : print ''; ?>/>
        Biner<br>
        <input type="radio" name="pilih" value="H"
               <?php ($pilih=="H")? print 'checked=""' : print ''; ?>/>
        Hexa<br>
         <input type="radio" name="pilih" value="O"
               <?php ($pilih=="O")? print 'checked=""' : print ''; ?>/>
        Oktal<br>
        </h2>
<input type="submit" name="submit1" value="Konversikan"><br>
    </form>
    <!-- Proses Konversi -->
        <?php
        if(isset($_POST['submit1'])){//isset : penekanan form
        $decimal=$_REQUEST['decimal'];
            if(isset($_POST['pilih'])){
                $pilih=$_REQUEST['pilih'];
            }  
            else{
                $pilih='';
            }
        }
        else{
            $decimal='';
            $pilih='';
        }
        if(isset ($_POST['submit1'])){
        if($decimal==''|| $pilih==''){
            echo"<script>alert('Silahkan pilih dahulu konversi apa yang akan anda lakukan..')</script>";//menggunakan javascript
        }
        else{
            if($pilih=='B'){
            //Konversi ke Biner
            if (isset($_POST['decimal'])) {
                $decimal = $_POST['decimal'];
                $original = $_POST['decimal'];
                $binary = '';
                if (preg_match('/[^0-9]/',$decimal)) {
                        die ("Yang anda inputkan salah, seharusnya anda menginputkan bilangan desimal saja..");
                }
                else {
                    while ($decimal > 0) {
                        if ($decimal%2 == 0) {
                            $binary .= 0;
                            $decimal /= 2;
                        }
                        else {
                            $binary .= 1;
                            $decimal = ($decimal/2)-0.5;
                        }
                    }
                    $result = strrev($binary);
                    echo "<br><h2>
Bilangan decimal : $original jika dijadikan Biner hasilnya adalah $result.</h2>
";
                    }
                }
                else {

                }
            }
            else{
                    if($pilih=='H'){
                    //Konversi ke Hexa
                        if(isset($_POST['decimal'])){
                        $des=$_POST['decimal'];
                        $original=$_POST['decimal'];
                        $hex='';
                        while ($des>0){
                        $hasil=$des%16;
                            switch($hasil){
                            case 0 : $hex.="0"; break;
                            case 1 : $hex.="1"; break;
                            case 2 : $hex.="2"; break;
                            case 3 : $hex.="3"; break;
                            case 4 : $hex.="4"; break;
                            case 5 : $hex.="5"; break;
                            case 6 : $hex.="6"; break;
                            case 7 : $hex.="7"; break;
                            case 8 : $hex.="8"; break;
                            case 9 : $hex.="9"; break;
                            case 10: $hex.="A"; break;
                            case 11: $hex.="B"; break;
                            case 12: $hex.="C"; break;
                            case 13: $hex.="D"; break;
                            case 14: $hex.="E"; break;
                            case 15: $hex.="F";
                            default:break;
                            }
                                if($des/16==0){
                                $sisa=($des%16);
                                $des=$sisa;
                                }
                                    else{
                                    $sisa=($des/16);
                                    $des=$sisa%16;
                                    }}
                                    $result = strrev($hex);
                                    echo "<br><h2>
Bilangan decimal : $original jika dijadikan Hexadecimal hasilnya adalah $result.</h2>
";
                        }
                    }
                    else{
                        //Konversi ke Oktal
                         if(isset($_POST['decimal'])){
                         $des=$_POST['decimal'];
                         $original=$_POST['decimal'];
                         $octal='';
                         while ($des>0){
                         $hasil=$des%8;
                         switch($hasil){
                         case 0 : $octal.="0"; break;
                         case 1 : $octal.="1"; break;
                         case 2 : $octal.="2"; break;
                         case 3 : $octal.="3"; break;
                         case 4 : $octal.="4"; break;
                         case 5 : $octal.="5"; break;
                         case 6 : $octal.="6"; break;
                         case 7 : $octal.="7";
                         default:break;
                         }
                         if($des/8>0){
                            $sisa=($des/8);
                            $des=$sisa%8;
                            }
                            else{
                            $sisa=($des%8);
                            $des=$sisa;
                            }}
                            $result = strrev($octal);
                            echo "<br><h2>
Bilangan decimal : $original jika dijadikan Oktal hasilnya adalah $result.</h2>
";
                            }
                            else{

                            }
                    }
            }
        }
        }
        echo "<br><h2>
<a href='Validator.php'>RESET</a></h2>
<br><br>";
        ?>
    <!-- End proses Konversi -->
    </td>
    </tr>
</table>

    </body>
</html>

Jika semuanya sudah Anda lakukan, sekarang Anda coba jalankan. Jalankan file Validator.php , tekan Shift + F6 .

Untuk Lihat Hasilnya :

Ini adalah tampilan awalnya :

Anda harus menigisi nama dan jenis kelamin, kalau tidak akan muncul notifikasi seperti di bawah ini :

Jika Anda selesai mengisi Nama dan Jenis Kelamin, setelah tekan masuk, langsung menuju Halaman Konversi :

Kalau Anda memasukkan huruf, bukan bilangan desimal, akan terjadi seperti ini :

Kalau anda hanya mengisikan bilangan desimal tanpa mencentang konversinya, akan terjadi seperti ini :

Kalau Bilangan Desimal telah terisi dan sudah terpilih konversinya, akan tampil hasilnya :

Jika anda menekan reset, akan kembali ke halaman awal :



0 komentar:

Posting Komentar