Skip to main content

MySql Connection Character Set: Fixing Broken Character in String Data Storing

Have you ever got problem that you got broken/unknown character when you stored string data especially HTML string data to MySql database? I've got that problem few days ago. I built program with Java as main string data processor, PHP as data storing tool, and MySql as database. I tried some encoding function in Java and PHP but I still didn't know why there're broken character like "“", "â€", "’", or others in database.
That characters represent uncommon/special characters like £, €, or special quote symbol which doesn't have HTML code representation like “, ”, or others. After doing some inspections I figured out the problem. The problem is mysqli_query() and other PHP storing functions didn't store string data from PHP program properly. 
HTML string data commonly use UTF-8 character set encoding which can maintain many special characters. So I tried following PHP functions to built connection with MySql.

$mysqli = new mysqli("my_host", "my_user", "my_password", "my_db"); 
$mysqli->query("SET NAMES utf8");

or

$mysqli->query("SET CHARACTER SET utf8");

When you store some string data in PHP using mysql_query("INSERT INTO ... VALUES '$string_data' ... ") the "$string_data" will be handled by using UTF8 character set encoding. UTF8 encoding represents Unicode character into some btyes (8 bits). If character code is more than 255 then it uses more than one byte to store character code.

Comments

Popular posts from this blog

Rangkaian Sensor Infrared dengan Photo Dioda

Keunggulan photodioda dibandingkan LDR adalah photodioda lebih tidak rentan terhadap noise karena hanya menerima sinar infrared, sedangkan LDR menerima seluruh cahaya yang ada termasuk infrared. Rangkaian yang akan kita gunakan adalah seperti gambar di bawah ini. Pada saat intensitas Infrared yang diterima Photodiode besar maka tahanan Photodiode menjadi kecil, sedangkan jika intensitas Infrared yang diterima Photodiode kecil maka tahanan yang dimiliki photodiode besar. Jika  tahanan photodiode kecil  maka tegangan  V- akan kecil . Misal tahanan photodiode mengecil menjadi 10kOhm. Maka dengan teorema pembagi tegangan: V- = Rrx/(Rrx + R2) x Vcc V- = 10 / (10+10) x Vcc V- = (1/2) x 5 Volt V- = 2.5 Volt Sedangkan jika  tahanan photodiode besar  maka tegangan  V- akan besar  (mendekati nilai Vcc). Misal tahanan photodiode menjadi 150kOhm. Maka dengan teorema pembagi tegangan: V- = Rrx/(Rrx + R2) x Vcc V- = 150 / (150+10) x Vcc V- = (150/160) x 5

Beli Bahan Tekstil dan Jasa Jahit di Bandung

Acara wisuda akan dilaksanakan pada Juli 2012 dan untuk acara tersebut saya memerlukan jas. Saya langsung googling  untuk mencari tempat yang menjual jas. Sebelumnya saya sempat berpikir untuk menyewa jas saja namun karena tampaknya jas akan cukup penting nantinya dan harga penyewaan yang umumnya tidak murah maka saya memutuskan membeli. Saya mencari tempat yang menjual jas yang murah di Bandung. Hasilnya beberapa artikel menyebutkan Pasar Baru Bandung menjual berbagai bahan tekstil dan pakaian termasuk jas. Saya langsung membuka Google Maps dan mencari lokasi Pasar Baru Bandung. Berikut adalah lokasi Pasar Baru Bandung. View Pasar Baru Bandung in a larger map Setelah mengetahui lokasi tersebut, saya memutuskan pergi sendiri ke Pasar Baru Bandung. Tidak lupa saya menyiapkan GPS berhubung sangat lemah soal arah jalan. Alhasil, setelah sampai di dekat jembatan, sebelum jalan Suniaraja saya sempat mengambil arah yang salah dan akhirnya berputar-putar di daerah sekitar Pasar Baru

Kerusakan pada Motherboard

1. Sering terjadi hang memory tidak cocok --- ganti memory ada virus di harddisk --- scan harddisk over clock --- seting kembali clock prosesor ada bad sector di harddisk --- partisi harddisk dengan benar 2. Pembacaan data menjadi lambat memori tidak cukup --- tambah memori harddisk penuh atau ada virus --- kurangi isi harddisk, scan harddisk, atau ganti hardisk 3. CMOS failure baterai habis --- ganti baterai CMOS seting BIOS berubah --- seting kembali BIOS 4. Tidak bisa booting cache memory rusak --- disable eksternal cache memory di BIOS memori tidak cocok --- ganti memori boot sector pada harddisk rusak --- masukkan operating system baru ada bad sector pada trek awal harddisk --- partisi harddisk 5. Suara bip panjang berkali-kali memori rusak --- periksa kedudukan memori memori tidak cocok --- ganti memori memori tidak masuk slot dengan sempurna --- periksa kembali kedudukan memori 6. Suara bip bagus tetapi tidak ada tampilan / bip dua kali VGA card

Itachi Uchiha

The Real Hero of Konoha

Sariawan dan Vitamin B12

Beberapa hari yang lalu, saya yang kebetulan sedang sariawan diminta teman saya di FKG Unpad yang sedang mencari pasien sariawan, untuk datang ke tempat praktek FKG yang berada di Sekeloa (dekat Dipati Ukur). Awalnya sempat malas, tapi karena saat itu saya sedang tidak ada kerjaan dan FKG tampaknya cukup 'menarik', akhirnya saya memutuskan pergi ke sana. Saya mendaftar jadi pasien di rumah sakit FKG terlebih dahulu, kemudian baru saya diajak ke tempat prakteknya. Saat ditanya apa penyebab sariawan saya, saya tidak ingat. Mulut saya pun kemudian diperiksa. Kaca mulut, sonde, pinset, dll sudah masuk ke mulut saya. Beberapa kali seriawan saya tersentuh. Seorang temannya Gema membantu mencatat data hasil pemeriksaan. Setelah itu, giliran dosennya yang memeriksa mulut saya. Pada bagian akhir sariawan saya diberi suatu obat cair. Pesan dari teman saya untuk memperbanyak minum air dan konsumsi vitamin B12 . Menurut Dosen Gizi dari Departemen Gizi Masyarakat Sumber Daya dan Kelu

Raspberry Pi Bluetooth Connection

Raspberry Pi 3 provides built-in bluetooh module. Latest Raspbian has been bundled with tools for enabling bluetooth connection. Bluetooth icon will be showed up on top right corner of the desktop. It's a tool to discover available bluetooth devices and connect Pi with bluetooth devices. It is easy to connect any bluetooth-enabled electronic device with Pi. But, sometimes Pi will fail to make a connection especially for bluetooth device which has no standarized services. From terminal, we can use bluetoothctl tool to scan and connect with a bluetooth device. You should make sure that BlueZ protocol stack has been installed by running $ apt-get install bluez Run bluetoothctl to enter the tool command window Turn the power on by running power on (Optional) You can set AutoEnable=true in /etc/bluetooth/main.conf if you want to make the bluetooth auto power-on after reboot. Run devices to see which devices have been paired Run scan on if your desired device has not pair