Rabu, 05 September 2012

Konversi Bilangan Biner, Hexa, Oktal dengan PHP

1. Buka Netbeans anda, buat New PHP Web Page. Terserah mau Anda letakkan dimana saja file tersebut.

2. Jika sudah membuat file, langsung saja ketikkan code berikut diatas tag <html>
.
<?php
if(isset($_POST['submit'])){//
$nama=$_REQUEST['nama'];
    if(isset($_POST['gender'])){
        $gender=$_REQUEST['gender'];
    }
    else{
        $gender='';
    }
$cek='';
}
else{
    $nama='';
    $gender='';
    $cek='Sebelum Anda Masuk, Isi data anda terlebih dahulu';
}
?>

3. Kemudian tuliskan code berikut di bawah tag <body> pada file anda
    Namun sebelumnya Anda buat terlebih dahulu New PHP Web Page dengan nama file,disini saya menggunakan nama file 'KonversiBilangan.php'

        <h1 class='a'><?php echo $cek ?></h1> <br>
        <form action="KonversiBilangan.php" method="post" name="form1">
            <p>
<h3 class='b'>
Nama : <input class='highlight' placeholder="Nama" 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>
<input type="submit" name="submit" value="Masuk">
        </form>
5. Karena code yang harus dituliskan pada file anda telah selesai kita tuliskan semua, sekarang kita beralih ke file KonversiBilangan.php
   Buka file dan tuliskan code di bawah ini, sama seperti tadi letakkan code ini di atas tag <html>.
<?phpif(isset($_POST['submit1'])){ $decimal=$_REQUEST['decimal'];
    if(isset($_POST['pilih'])){
        $pilih=$_REQUEST['pilih'];
    }
    else{
        $pilih='';
    }
}
else{
    $decimal='';
    $pilih='';
}
?>

6. Selanjutnya tulis code html dan php seperti di bawah ini. Fungsinya code php ini untuk memproses apa yang kita lakukan di file anda tadi. Sedangkan html nya hanya untuk wadah tampilannya saja. Letakkan code berikut tepat dibawah tag <body>

     <h1 class="b"> Area Konversi Bilangan !!</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 class='bayangan'>
Selamat Datang Brather, $nama !!</h1>
";
                
            }
            else{
                echo"<br><h1 class='bayangan'>
Selamat Datang Sista, $nama !!</h1>
";
            }
        }
        }
    ?>
    <!-- End proses pilih Gender -->
    </td>
    </tr>
</table>
8. Dan tulis code html berikut. Code ini untuk menampilkan form dan pilihan konversi nantinya. Dan, sejenak coba Anda lihat, pada form ini actionnya bertuliskan action="<?php echo $_SERVER['PHP_SELF']; ?>"  yang artinya adalah file itu nantinya akan di proses di file PHP itu sendiri, yaitu file KonversiBilangan.php

    <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="nama" 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="Konverikan"><br>
    </form>
9. Yang terakhir, tulis code php di bawah ini. Yang fungsinya untuk memproses konversi bilangan nantinya.

    <!-- 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('Waw, kesalahan! Isi nilai Desimal dan pilih Konversi !!')</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 ("Maaf. Inputan salah...");
                }
                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>
Jika semuanya sudah Anda lakukan, sekarang Anda coba jalankan. Jalankan file Validator.php , tekan Shift + F6 .

SELAMAT MENCOBA

0 komentar:

Posting Komentar

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | cheap international calls