Showing posts with label PHP. Show all posts
Showing posts with label PHP. Show all posts

Membuat Konversi Angka Dengan PHP


Membuat Konversi Angka Dengan php

Selamat siang semua, hari ini saya ingin sharing tutorial mengenai cara membuat function konversi angka ribuan, angka ratusan, angka jutaan atau milliaran kedalam format pendek. Tetapi sebelumnya kita harus mengetahui apa sih konversi angka dan bagaimana sistem kerja nya berikut penjelasannya.

Apa itu Konversi Angka?

Adalah Konversi bilangan adalah proses mengubah bentuk bilangan satu ke bentuk bilangan lain yang memiliki nilai yang sama. Dimana format bilangan ada berupa biner, desimal, octal dan hexadesimal. Misal: nilai bilangan desimal 12 memiliki nilai yang sama dengan bilangan octal 15; Nilai bilangan biner 10100 memiliki nilai yang sama dengan 24 dalam octal dan seterusnya. 

Dalam scripts berikut kita akan selalu menggunakan number_format untuk mendapatakan format dari angka yang dimasukan. kemudan di cek dan di bandingkan kedalam array seperti code berikut ini:
<?php  
                function thousandsCurrencyFormat($num) {
                $x = round($num);
                $x_number_format = number_format($x);
                $x_array = explode(',', $x_number_format);
                $x_parts = array('k', 'M', 'B', 'T', 'q', 'Q', 's', 'S', 'O', 'N', 'd');
                $x_count_parts = count($x_array) - 1;                    $x_display = $x;
                $x_display = $x_array[0] . ((int) $x_array[1][0] !== 0 ? '.' . $x_array[1][0] : '');
                $x_display .= $x_parts[$x_count_parts - 1];
                return $x_display;
                }
            ?>
Berikut adalah scripts lengkapnya dan cara menggunakannya.
<!DOCTYPE html>                        
<html lang="eng">
    <head>
        <title>PHP Number Abbreviator</title>
    </head>
    <body>
            <?php  
                function thousandsCurrencyFormat($num) {
                $x = round($num);
                $x_number_format = number_format($x);
                $x_array = explode(',', $x_number_format);
                $x_parts = array('k', 'M', 'B', 'T', 'q', 'Q', 's', 'S', 'O', 'N', 'd');
                $x_count_parts = count($x_array) - 1;                    $x_display = $x;
                $x_display = $x_array[0] . ((int) $x_array[1][0] !== 0 ? '.' . $x_array[1][0] : '');
                $x_display .= $x_parts[$x_count_parts - 1];
                return $x_display;
                }
            ?>
            <table cellpadding="15" cellspacing="5" border="1">
                <thead>
                    <tr>
                        <th>Description</th>
                        <th>Symbol</th>
                        <th>Number</th>
                        <th>Result</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <td style="text-align:center;">Trillion</td>
                        <td style="text-align:center;">T</td>
                        <td style="text-align:center;">7,300,000,000,000</td>
                        <td style="text-align:center;"><?php echo thousandsCurrencyFormat(7300000000000)?></td>
                    </tr>
                <tr>
                        <td style="text-align:center;">Billion</td>
                        <td style="text-align:center;">B</td>
                        <td style="text-align:center;">9,000,000,000</td>
                        <td style="text-align:center;"><?php echo thousandsCurrencyFormat(9000000000)?></td>
                    </tr>
                <tr>
                        <td style="text-align:center;">Million</td>
                        <td style="text-align:center;">M</td>
                        <td style="text-align:center;">12,000,000</td>
                        <td style="text-align:center;"><?php echo thousandsCurrencyFormat(12000000)?></td>
                    </tr>
                <tr>
                        <td style="text-align:center;">Thousand</td>
                        <td style="text-align:center;">K</td>
                        <td style="text-align:center;">588,000</td>
                        <td style="text-align:center;"><?php echo thousandsCurrencyFormat(588000)?></td>
                    </tr>
                </tbody>
            </table>
    </body>
</html>
Baiklah Sekian dulu yah tutorials mengenai cara membuat Membuat Konversi Angka Dengan PHP selamat siang ini semoga bermanfaat bagi kalian semua.

Salam Hangat,
Depri Pramana

Website Pariwisata Dengan CodeIgniter

Selamat siang semuanya kali ini saya ingin membagi-bagi source code Website Pariwisata yang saya buat sendiri dengan CodeIgniter, Website ini mungkin bisa menjadikan pelajaran atau bahan bagi kalian semua. CodeIgniter yang digunakan sudah Versi 3. Feature yang ada di versi 3 sangat menarik sekali untuk di pelajari, dan silakan kembangkan lagi lebih jauh source code yang saya berikan ini. Berikut adalah feature yang sudah saya buat:
  1. Management Menu  digunakan Untuk membuat Menu Navigation Backend dan FrontEnd
  2. Management Contents diguanakan untuk membuat contents yang ada di halaman Frontend
  3. Management User digunakan untuk membuat user yang bisa login.
  4. Management Events digunakan membuat Events Calender.
  5. Berikut tampilan events calendernya






















Baiklah berikut adalah link Download nya Disini
Silakan kembangkan lagi yah, source code ini, masih banyak kekurangan dalam source ini. jika ada pertanyaan silakan tanyakan.
Salam Hangat,
Depri Pramana


Install Git atau Github di windows

Selamat siang para blogger, Maaf baru sempat saya update blog karena saya banyak kesibukan dan kerjaan serta saya melanjutkan kuliah lagi. siang ini saya ingin membagi artikel mengenai Install Git di windows, Jujur baru kali ini saya mengunakan Git atau Github dimana sebelumnya saya selalu keep data saya di layanan cloud seperti OneDrive atau di Google Drive, dan baru kali ini saya mencobanya dimana applikasi ini ditujukan untuk keperluan programing supaya kita bisa clone project orang atau menyimpan versi kita dan balik ke versi sebelumnya lebih save lah. 
Dimana Dalam Github jika kita ingin download aplikasi atau plug in kita di sediakan 3 options,
  • HTTPS Clone URL dimana harus mengunkan Git for windows : Download Disini 
  • Clone in Desktop ini akan mendownload aplikasi dari github langsung tampilannya akan seperti GUI.
  • Download ZIP nah kalo yang ini pasti kalian semua tahu, dimana kita download manual.
Syarat dalam mengunakan layanan Github baik menggunakan Git atau applikasi Github GUI kita harus membuat account terlebih dahulu di GITHUB jika belum silakan buat dulu yah kawan.

Install Git For windows.
Terlebih dahulu download applikasi nya dari Disini pilih jenis OS nya dikomputer saya menggunakan Windows 64bit jadi saya download yang 64 bit.
1. Pilih Jenis OS nya
2. Pilih Type nya disini saya menggunakan windows 64bi.
3. Kemudian setelah download Install Aplikasi dengan klik 2 kali dari File tersebut:
 4. Keluar seperti berikut dan klik Next
5. Klik next lagi.
6. Pilih semua options kecuali yang paling di bawah.
7. Pilih Options ke 2 "use git from the windows command prompt"
8. Plih options 1 "Checkout windows style, commit Unix-style line endings"
9. Pilih Options 2 " Use Windows' Default console Window"
10. Tick Enable file system Caching supaya mempercepat atau performance lebih cepat.
11. Kalau keluar seperti ini di continue aja.
12. Installasi Program akan berjalan seperti berikut sampai finish.

Setelah selesia install sekarang kalian bisa menggunakannya seperti berikut:
1. Buka Git CMD seprti berikut:
2. Cari Aplikasi yang ingin di clone sebelumnya masuk terlebih dahulu ke dalam folder dimana saya menggunakan Xampp jadi saya masuk ke C:\xampp\htdocs setelah itu copy link dari Github pada HTTPS Clone URL kemudian di awalnya tambahkan GIT CLONE {URL} seperti gambar berikut:
Jika keluar perintah masukan Username dan password masukan account dari Github yah kawan, kalau punya saya tidak lagi karena sudah saya masukan diawal jadi langsung di simpan. Jika berhasil maka akan keluar seperti berikut:

Demikian dulu tutorials dari saya, Untuk option ke 2 nanti saya akan buatkan tutorials Installnya.
Salam Hangat,
Depri Pramana




Pengertian PSR dan Hubungan PSR dengan PHP

Kalau Anda developer PHP pasti cepat atau lambat Anda akan mendengar istilah “PSR”, atau “standar PSR-0″, “standar PSR-1″ dan seterusnya. Lalu apa itu PSR?
PSR adalah singkatan dari “PHP Standards Recommendations”, yaitu sekumpulan standar penulisan skrip PHP yang dibuat oleh developer PHP, praktisi, pengembang framework atau aplikasi dan semua pihak atau perusahaan yang memiliki kepentingan dengan PHP dan adanya standar yang disepakati bersama.

Kenapa PSR?

PHP sebelumnya tidak pernah memiliki standar yang benar-benar digunakan bersama dalam penulisan kode-nya. Kalaupun ada, ini biasanya dikeluarkan oleh masing-masing pihak yang berbeda-beda sesuai kepentingan mereka. Ini mungkin disebabkan oleh sejarah PHP yang memang dibuat untuk developer yang ingin membangung aplikasi web semudah dan secepat mungkin.
Namun dalam perjalanannya, ketika PHP mulai diadopsi oleh perusahaan-perusahaan besar dan digunakan untuk membangun aplikasi yang “serius”, ditambah dengan berjamurnya PHP framework di mana masing-masing memiliki cara penulisan yang berbeda-beda, akhirnya kebutuhan akan adanya standarisasi ini menjadi sangat penting.

Sejarah Singkat PSR

Pada konferensi php|tek tahun 2009, beberapa developer yang terlibat dalam project berbeda mendiskusikan kemungkinan adanya mekanisme agar mereka bisa bekerja antar project yang berbeda tersebut. Perbedaan cara masing-masing project dalam menyelesaikan persoalan, termasuk standarisasi penulisan akhirnya menjadi topik utama. Diskusi ini berujung pada pembentukan Framework Interoperability Group (FIG).
Biarpun namanya “Framework Interoperability Group”, group ini kemudian beranggotakan bukan hanya pengembang framework (seperti Lithium, Symfony, dan CakePHP), melainkan seluruh developer yang mengembangkan aplikasi web berbasis PHP seperti PyroCMS, phpDocumentor dan bahkan Composer.
Lewat diskusi dan voting yang dilakukan dalam mailing list mereka, FIG memutuskan dan merekomendasikan standar-standar yang dinamakan standar PSR yang tujuannya cuma satu, yaitu agar tiap project bisa bekerja sama (interoperability).
Sampai tulisan ini dibuat, sudah ada empat standarisasi yang ditelurkan FIG, yaitu PSR-0 untuk autoloader, PSR-1 untuk standar penulisan kode PHP, PSR-2 untuk panduan gaya penulisan (style guide) kode PHP dan merupakan pengembangan dari PSR-1, kemudian yang terakhir yaitu PSR-3 untuk standar logger interface.

Kesimpulan

Dengan keanggotaan yang semakin banyak dan empat standarisasi yang sudah ditelurkan, FIG saat ini makin mendapat perhatian khusus dari komunitas pengembang PHP. PSR-0 misalnya, sudah menjadi standarisasi umum yang digunakan hampir seluruh PHP Framework. Mudah-mudahan standar PSR lainnya juga akan diadopsi segera oleh komunitas pengembang PHP.
Bagi kita developer PHP, standarisasi ini jelas sangat menguntungkan. Karena jika semua framework dan aplikasi PHP menggunakan standar yang sama, semakin sedikit waktu pembelajaran yang dibutuhkan ketika kita harus berganti framework atau mengerjakan project PHP yang berbeda. Konsekuensinya, ketika kita mengerjakan project baru, kita mesti memperhatikan dan mengimplementasikan standar PSR ini, agar developer lain juga makin mudah untuk memahami kode yang kita tulis.

Semoga bermanfaat,
Depri Pramana

Membuat short URL dengan PHP

Selamat siang agan-agan dan bro-bro sekalian, siang ini saya ingin bagi-bagi tutorial cara membuat shorten url atau cara membuat url pendek seperti punya google dengan php dari pada pakai orang kan bagus pakai domain kita hehehe, contoh dari link yang panjang kita ganti menjadi link yang pendek dan mudah di ingat gt low serta bisa attach domain kita sendiri sebagai linknya. Contoh link : http://mytutorialswebsite.blogspot.com/2014/02/instalasi-laravel-versi-4.html jadi http://www.domainkalian/hfajsj1 oke sekarang kita mulai tutorialnya.

Pastikan buat structure folder seperti berikut sebelum ke-syntac:
  1. Buat file index.php dan copy paste code berikut:
  2. <?php
    session_start();
    ?>
    <!DOCTYPE html>
    <html lang="en">
        <head>
            <meta charset="utf-8" />
            <title>URL Shortener</title>
            <link rel="stylesheet" href="css/global.css">
        </head>
        <body>
            <div class="container">
                <h1 class="title">Shorten a URL</h1>
                <?php  
                    //session untuk menampikan url hasil generate
                    if(isset($_SESSION['feedback'])){
                        echo"<p>{$_SESSION['feedback']}</p>";
                        unset($_SESSION['feedback']);
                    }
                ?>
                <form action="shorten.php" method="post">
                    <input type="url" name="url" placeholder="Enter a URL here" autocomplete="off" required>
                    <input type="submit" value="Shorten">
                </form>
            </div>
            <footer>Created by: I Gede Depri Pramana</footer>
        </body>
    </html> 
    
    
    Ket: pada file index diatas ada Session yang akan digunakan untuk menyimpan data pada saat kita tekan post
  3. Buat file global.css untuk keperluan design dari file index.php, kalian bisa copy code berikut:
  4. body {
        font: 0.9em Tahoma, Sans-serif;    
    }
    
    .title{
        font-weight: normal;
    }
    
    .container{
        width: 100%;
        max-width: 600px;
        text-align: center;
        margin: 0 auto;
        margin-top: 15%;
    }
    
    input{
        padding: 10px;
        background-color: #fff;
        border: 1px solid #ccc;
        margin: 0;
    }
    input[type="url"]{
        width: 300px;
    }
    
    footer{
        bottom: 0px;
        right: 0px;
        padding: 20px;
        position: fixed;
        width: 100%;
        z-index: 1000 !important;
        text-align: center;
    }
    
  5. Buat database dengan nama db_shorten, Copy sql berikut:
  6. CREATE TABLE IF NOT EXISTS `links` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `url` varchar(255) NOT NULL,
      `code` varchar(12) NOT NULL,
      `created` datetime NOT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=100000005 ;
    
    
  7. Buat file Config.php untuk keperluan koneksi, kalian bisa copy syntax berikut:
  8. <?php
    
    // Define link server 
    // Shorten adalah nama folder kalau sudah online bisa di hapus jadikan http://'.$_SERVER['SERVER_NAME'] 
    // jadi link yang di hasilkan menjadi http://www.domainkalian.com/ahhskq
    define ("SERVER", 'http://'.$_SERVER['SERVER_NAME'].'/shorten');
    
    
    // Define database server
    define("DBSERVER",'localhost');
    
    
    // Define database username 
    define("DBUSER",'root');
    
    
    // Define database password
    define("DBPASS",'');
    
    
    // define database name
    define("DBNAME",'db_shorten')
    
    ?>
    
    
  9. Buat file class Shortener.php untuk mengelola koneksi sereta select,update dan generate code, kalian bisa copy syntax berikut:
  10. <?php
    require_once'class/Config.php';
    class Shortener{
        protected $db;
    
        public function __construct(){
            $this->db = new mysqli(DBSERVER,DBUSER,DBPASS,DBNAME);
        }
    
        protected function generateCode($num){
            //generate code berjumlah 6 digit.
            return base_convert($num, 10, 36);
        }
    
        public function makeCode($url){
            $url =trim($url);
            
            //Di gunakan untuk memfilter url yang dimasukan
            if(!filter_var($url, FILTER_VALIDATE_URL)){
                return '';            
            }
    
            $url = $this->db->escape_string($url);
            
            //check url jika sudah ada
    
            $exists = $this->db->query("SELECT code FROM links WHERE url='{$url}'");
    
            if($exists->num_rows){
                return $exists->fetch_object()->code;
            }else{
                $insert = $this->db->query("INSERT INTO links (url,created) VALUES ('{$url}',NOW())");
    
                //generate code by id
                $code = $this->generateCode($this->db->insert_id);
    
                ///Update 
                $this->db->query("UPDATE links SET code ='{$code}' WHERE url='{$url}'");
    
                return $code;
            }
        }
    
        public function getUrl($code){
            $code = $this->db->escape_string($code);
            $code = $this->db->query("SELECT url FROM links WHERE code = '{$code}'");
    
            if($code->num_rows){
                return $code->fetch_object()->url;
            }
    
            return '';
        }
    }
    ?>
    
  11. Buat file shorten.php untuk menerima data post dari file index, kalian bisa copy syntax berikut:
  12. <?php
    session_start();
    require_once'class/Shortener.php';
    
    $s = new Shortener;
    
    if(isset($_POST['url'])){
        $url = $_POST['url'];
        if($code=$s->makeCode($url)){
            $_SESSION['feedback']="Generated: Your short URL is:
            <a href=\"".SERVER."/{$code}\">".SERVER."/{$code}</a>";
        }else{
            $_SESSION['feedback'] = "Tolong masukan link URL yang benar !!!";
        }
    }
    
    header("location: index.php");
    ?>
    
  13. Buat file redirect.php untuk menjalankan link pada saat di click, kalian bisa copy syntax berikut:
  14. <?php
    require_once 'class/Shortener.php';
    
    if(isset($_GET['code'])){
        $s= new Shortener;
    
        $code= $_GET['code'];
    
        if($url= $s->getUrl($code)){
            header("Location: {$url}");
            die();
        }
    }
    
    header("Location: index.php");
    ?>
    
  15. Buat file .htaccess untuk memparsing data dari redirect.php, kalian bisa copy syntax berikut:
  16. 
    RewriteEngine On
    RewriteRule ^([a-z0-9]+)$ redirect.php?code=$1
    

Hasil Akhirnya akan seperti berikut:
  1. Pertama masukan url contoh : http://www.mytutorialswebsite.com/2014/02/instalasi-laravel-versi-4.html


  2. Setelah di submit akan mendapatkan link : http://localhost/shorten/1njchx , jika link yang sudah di generate lagi di masukan akan mendapatkan link yang sama pada saat generate pertama
  3. Data yang sudah dimasukan akan di simpan di dalam database bisa di lihat capture berikut:
Oke demikian dulu tutorials nya yah,
Salam Hangat,
Depri Pramana

Instalasi Laravel versi 4



Selamat pagi teman-teman lama juga gak update blog, pagi ini saya lagi belajar Framework baru yang namanya Laravel, Framework ini sangat banyak di perbincangkan di forum atau di website, sebelumnya saya sangat tidak suka yang namanya Framework karena enakan bikin sendiri (CMS sendiri) jadi kita tahu kekurangan CMS kita dimana, tapi ketika saya baca documentasi dari laravel yang simple jadi tertarik untuk di pelajari lebih jauh apa sih laravel. Banyak kelebihan dari laravel kalian harus coba pelajari laravel sekarang sudah ada versi 4 nya loow.
Berikut cara instalsi dari Laravel, saya lebih suka install langsung download lebih aman jadinya.
  1. Download composer terlebih dahulu disini
  2. Kemudian setelah install Composer Test jalankan di Command Prompt (Run - CMD) | Kemudian Ketik composer Seperti capture berikut:
  3. Kemudian saatnya kita install Laravel via command. ketik command berikut di Command prompt, disini saya mengunakan Xampp jadi saya ketik di cmd path nya ke htdocs
     C:\xampp\htdocs\>composer create-project laravel/laravel project --prefer-dist
    
    * Project adalah folder tempat laravel yang akan di download. Prosess instalasi akan seperti berikut: 
  4. Kemudian setelah selesai install, sekarang access ke http://localhost/project/public/ maka akan keluar sebagai berikut: 
  5. Instalasi selesai sekarang sialakan pelajari. 
Demikian tutorials instalasi laravel versi 4.

Salam Hangat,
Depri Pamana

Membuat Function Date Range



Selamat sore agan-agan sekalian, sore ini saya ingin membagi tutorials mengenai pembuatan date range dimana date range disini adalah range antara start date (1988-1-1) sampai dengan end date (2999-1-1). Dimana start date dan end date ini sebelumnya di deklarasikan dalam script atau bisa dalam database, untuk contoh yang saya berikan di deklarasikan dalam scripts. Silakan simak tutorials berikut serta copas saja alias copy paste.
Pertama buat sebuah file dengan nama date_range.php dan copy paste source code di bawah:
<?php

function date_range($fromDate,$toDate){
 $dateMonthYearArr = array();
 $fromDateSTR = strtotime($fromDate); // Convert string tanggal ke time
 $toDateSTR = strtotime($toDate); // Convert string tanggal ke time

        //membuat perulangan sebanyak range antara start and end date.
 for ($currentDateSTR = $fromDateSTR; $currentDateSTR <= $toDateSTR; $currentDateSTR += (60 * 60 * 24)) {
 $currentDateStr = date("Y-m-d",$currentDateSTR);
 $dateMonthYearArr[] = $currentDateStr;
 }
 return $dateMonthYearArr;
}

$fromDate = "02/14/1983"; // month / day / year
$toDate = "06/07/2011";  // month / day / year
$result = date_range($fromDate,$toDate); //Pemanggilan function



echo '<select>';
$i=0;
foreach ($result as $value){
 echo '<option value="'.$i.'">'.$value.'</option>';
 $i++;
}
echo "<select>";


?>
Silakan kembangkan tutorials finction diatas dan terapkan di web kalian.
Salam Hangat dan Terima Kasih ,
I Gede Depri Pramana