Tag: mysql

  • Error Codeigniter 3.15: mysqli::real_connect(): Headers and client library minor version mismatch

    Codeigniter
    Codeigniter

    Server yang saya pakai biasanya menggunakan codeigniter 2.12, sehingga ketika update php ataupun mariaDB tidak pernah mengalami masalah. Ketika saya menggunakan Codeigniter 3.15, terjadi error pada halaman Welcome

    A PHP Error was encountered
    Severity: Warning
    
    Message: mysqli::real_connect(): Headers and client library minor version mismatch. Headers:50560 Library:100136
    
    Filename: mysqli/mysqli_driver.php
    
    Line Number: 201
    
    Backtrace:
    
    File: /var/www/html/ujicoba/index.php
    Line: 315
    Function: require_once

    Sehingga muncul pertanyaan, kenapa header dan client library berbeda muncul peringatan pada aplikasi. Untuk mengatasi hal tersebut yaitu cukup menginstall mysql native driver untuk PHP. Karena server saya menggunakan debian cukup ketik perintah:

    # apt-get install php5-mysqlnd

    secara otomatis akan meremove php5-mysql yang ada pada server.

    Sebelum menguji coba server saya, saya lakukan perintah restart pada apache 2 server saya

    # service apache2 restart

    selanjutnya peringatan error pada Codeigniter akan menghilang.

  • Membuat Koneksi Database MySQL dengan PHP 7 menggunakan PDO

    PHP dan MySQL
    Koneksi PHP dan MySQL

    Setelah membuat koneksi database MySQL dengan PHP 7 menggunakan mysqli, selanjutnya kita akan membuat koneksi database MySQL dengan PHP 7 menggunakan PDO. Berbeda dengan menggunakan MySQLi, untuk menyambungkan PHP 7 dengan MySQL, kita menggunakan try{} dan catch{}

    Inti dari try berarti bahwa kita mencoba untuk menjalankan skrip PHP, jika terjadi error, dari galat tersebut akan ditangkap oleh blok catch{}, dimana output dari dari galat akan diisolasi pada blok tersebut.

    Contoh:

    try
    {
    	$pdo = new PDO('mysql:host=localhost;dbname=product', 'root', '');
    
    }
    catch (PDOException $e)
    {
        echo 'Error: ' . $e->getMessage();
        exit();
    }
    echo 'Connected to MySQL';

    Kode lebih lengkap

    // Buka koneksi
    try
    {
    	$pdo = new PDO('mysql:host=localhost;dbname=produk', 'root', '');
    
    }
    catch (PDOException $e)
    {
        echo 'Error: ' . $e->getMessage();
        exit();
    }
    
    // Jalankan Query
    $sql 	= 'SELECT * FROM product';
    $stmt 	= $pdo->prepare($sql); // Mencegah MySQL injection. $stmt artinya statemen
    $stmt->execute();
    while ($row = $stmt->fetch())
    {
    	echo $row['id'];
    }
    
    // Tutup koneksi
    $pdo = null;

    Atribut pada PDO

    PDO mempunyai banyak atribut sesuai dengan aturannya, termasuk

    • PDO :: ATTR_ERRMODE untuk mengatur tampiran kesalahan
    • PDO :: ATTR_DEFAULT_FETCH_MODE untuk mengatur mode pengambilan asali

    Contoh dari penggunaan banyak atribut pada satu waktu:

    try
    {
    	$driver_options = array(
    		PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_OBJ,
    		PDO::ATTR_ERRMODE => PDO::ATTR_ERRMODE_EXCEPTION,
    		PDO::MYSQL_ATTR_LOCAL_INFILE => 1
    	);
    
    	$pdo = new PDO('mysql:host=localhost;dbname=product', 'root', '', $driver_options);
    }

    Contoh penggunaan atribut secara sendirian:

    try
    {
    	$pdo = new PDO('mysql:host=localhost;dbname=product', 'root', '');
    	$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ATTR_ERRMODE_EXCEPTION);
    }

    Demikianlah cara membuat koneksi PHP7 dan MySQL mengunakan PDO

  • Membuat Koneksi Database MySQL dengan PHP 7

    PHP dan MySQL
    PHP dan MySQL

    Agar bisa berinteraksi dengan database, terutama database MySQL, pertama kali yang dibutuhkan adalah membuat koneksi database MySQL dengan PHP. Banyak sekali cara untuk melakukannya. Kali ini saya mencoba untuk membahas cara untuk membuat koneksi database MySQL dengan PHP.

    PHP merupakan bahasa pemrograman yang tumbuh dengan cepat, selalu dirawat dan dikembangkan oleh komunitas. Untuk beberapa alasan, ada beberapa fungsi yang sengaja dihilangkan pada versi terbaru pada PHP.

    Catatan: Beberapa fungsi ini bisa berjalan dengan menggunakan MariaDB yang merupakan turunan dari MySQL
    (more…)

  • Membackup Database beserta Store Procedure, Function dan Trigger pada MySQL

    PHP dan MySQL
    PHP dan MySQL

    MySQL merupakan RDBMS yang banyak digunakan sebagai database server. Sejak versi 5, MySQL memiliki fitur menarik, yaitu Store Procedure, Function dan Triggers. Membackup database menggunakan command line mysqldump merupakan cara yang paling mudah. Secara default, backup database mysql dengan menggunakan mysqldump tidak akan membackup store procedure dan function tetapi membackup trigger. Membackup database beserta store procedure, function dan trigger pada mysql cukup mudah. Perintah yang ada pada MySQL seperti pada di bawah ini:

    • –routines – FALSE by default
    • –triggers – TRUE by default

    Oleh sebab itu ketika menjalankan mysqldump, kita tidak bisa mendapatkan hasil backup Store Procedure dan Function. Untuk menambahkan Store Procedure dan Function pada hasil backup-an kita, maka kita harus menambahkan “–routines” pada perintah mysqldump kita seperti ini

    mysqldump <other mysqldump options> --routines outputfile.sql

    Demikian cara Membackup database beserta store procedure, function dan trigger pada mysql dengan sekali langkah.

  • Cara Update Isi Tabel dari Tabel Lain di MySQL

    MySQL database
    MySQL database

    Update isi tabel dari tabel lain di MySQL cukup mudah jika jumlah recordnya hanya kurang dari belasan baris dengan phpmyadmin atau aplikasi manajemen database MySQL lainnya. Akan tetapi, jika jumlah record yang ingin diupdate berjumlah ratusan bahkan puluhan ribu, hal ini akan cukup merepotkan. Kali ini saya akan menulis bagaimana cara supaya sebuah table yang pada salah isinya berisi NULL dengan sumber tabel lain tanpa harus mengisi manual yang sangat merepotkan.

    Misal saya punya 1 tabel yang bernama pel_tindakan dan pelayanan.

    Tabel pelayanan berisi :

    • kd_pelayanan varchar(50)
    • kd_pasien varchar(20)
    • kd_puskesmas varchar(20)
    • tgl_pelayanan date
    • unit_pelayanan varchar(5)

    (more…)

  • Menghilangkan index.php pada Codeigniter di Ubuntu/Debian

    Codeigniter
    Codeigniter

    Meskipun sudah banyak yang beralih ke framework lainnya, saya masih menyukai framework Codeigniter yang menurut saya simpel, ringan dan mempunyai banyak komunitas. Ukuran file yang diunduh tidak terlalu besar. Sebelumnya saya sempat pesimis dengan kelanjutan Codeigniter ini, tetapi setelah berganti pengembang dan sepertinya akan terus dilanjutkan, saya kembali menyukainya.

    Untuk mengembangkan aplikasi dengan menggunakan xampp di Windows, sepertinya tidak ada masalah dengan fungsi rewrite url pada xampp dimana bisa menghilangkan tulisan index.php yang merupakan ciri khas dari framework ini. Akan tetapi jika menggunakan hosting dengan server yang diinstal sendiri memakai distro linux Debian/Ubuntu pasti akan mengalami masalah.

    (more…)

  • Install Manual Apache dan PHP di Windows XP

    Di milis PC+ ada seorang yang tanya tentang cara install secara manual Apache dan PHP, sebenarnya ada cara yang lebih mudah sih install XAMPP atau Apache2triad. Ya akhirnya sambil nyari jawabannya aku ikut-ikutan install juga. Itung-itung buat menambah produktifitas tulisan di blog ini. Oh iya aku pake Apache 2.2.4 dan PHP 5.2.3 :

    (more…)

  • Upgrade wordpress

    Awalnya sih aku bimbang dan ragu juga, untuk upgrade wordpress yang blog ini dari versi 2.04 ke versi 2.2. Namun karena sudah cukup uzur untuk ukuran wordpress terpaksa diupgrade juga. Ketakutan awal yaitu database yang hilang. Meski banyak referensi di google tentang bagaimana cara upgrade tapi tetap saja khawatir. Di codex wordpress tentang cara untuk upgrade padahal juga sudah dijelaskan secara jelas dan terang. Tapi tetap tidak membuat hatiku tenang untuk upgrade. Akhirnya aku menemukan blognya cosa tentang upgrade ke wordpress 2.1.3 sekarang juga ternyata hanya ditimpa saja. Akhirnya aku beranikan untuk segera mengupgrade wordpressku.

    (more…)

  • Install dan Konfigurasi PHP Development Environment di Linux Ubuntu

    Untuk mengembangkan software php-mysql di ubuntu, maka perlu dilakukan beberapa konfigurasi, jika mempunyai dvd reposi repository, semuanya begitu mudah. Apalagi kondisi internet di Indonesia yang masih belum begitu menggembirakan, kecuali yang tinggal di kota-kota besar sudah banyak pilihan akses cepat.

    Install Apache, php, dan mysql

    Oke, kembali ke konfigurasi php-mysql di ubuntu. Pertama install dulu apache2-php5-mysql terlebih dahulu. Ada dua cara yaitu:
    (more…)