Category Archives: PHP dan MySQL

Meredirect directory ke subdomain menggunakan .htaccess

0
Filed under PHP dan MySQL

Awalnya ingin membuat subdomain untuk website pusatpromosi.com. Nah biasanya kan kalo bikin subdomain pasti bikin directory di main directory. Inginnya sih ketika orang mengakses domainname.com/subdomain langsung di redirect ke subdomain.namadomain.com karena kebetulan kalo diakses pake domainname.com/subdomain tidak bisa berjalan sebagaimana mestinya.

Setelah nanya ke paman google akhirnya ketemu blog ini dan didapatlah caranya. Dengan menambahkan kode berikut dalam file .htaccess maka ketika mengakses namadomain.com/subdomain akan diredirect ke subdomain.namadomain.com. Kode .htaccess berikut juga akan meredirect namadomain.com/subdomain/post-name ke subdomain.namadomain.com/post-name.

1
2
3
4
5
<ifmodule>
  RewriteEngine On
  RewriteBase /
  RedirectMatch 301 ^/subdomain/(.*)$ http://subdomain.namadomain.com/$1
</ifmodule>

Menghilangkan karakter aneh dengan php

1
Filed under PHP dan MySQL

Awalnya sih lagi membangun situs iklan baris gratis untuk klien dari Indowebmaker. Namanya juga iklan baris gratis maka yang ngisi juga banyak orang yang terkadang untuk isi iklannya cuma copas (copy paste) dari microsoft word atau yang lainnya. Nah akibat dari copas ini kadangkala muncul karakter aneh non ascii atau non utf-8. Karakter ini sangat mengganggu dan menyebabkan situs kita tidak valid xhtml.

Bingung juga sih gimana cara ngilanginnya, padahal udah coba berbagai macam cara mulai dari pake htmlentities, htmlspecialchars, dan lain-lain. Akan tetapi karakter tersebut tetap ada. Setelah bertanya ke paman google, akhirnya ketemu library phputf8 – library untuk menangani utf-8 dalam php. Library ini sangat lengkap diantaranya untuk validasi, menghapus, mengganti dan lain-lain.

Dari sekian banyak fungsi yang ada, saya hanya gunakan satu fungsi yang akan menghapus karakter non-ascii dan non-utf-8 yaitu:

1
2
3
4
5
6
7
8
9
10
11
12
function utf8_strip_non_ascii_ctrl($str) {
     ob_start();
     while ( preg_match('/^([\x09\x0A\x0D\x20-\x7E]+)|([^\x09\x0A\x0D\x20-\x7E]+)/S', $str, $matches) ) {
         if ( !isset($matches[2]) ) {
              echo $matches[0];
        }
        $str = substr($str, strlen($matches[0]));
    }
    $result = ob_get_contents();
    ob_end_clean();
    return $result;
}

Nah dengan fungsi tersebut semua karakter non-ascii dan non-utf-8 akan dihilangkan dan situs kita akan kembali valid xhtml.