Menyambung tulisan gw tentang Permalink Layaknya Wordpress Dengan cara yang paling bodoh
Jadi masih ingat khan dengan ini.
[QUERY_STRING] =>
[REQUEST_URI] => /permaling/woi-cobain-permalinkdonk
Sebenarnya dengan gw kasih salah satu core permalink gw harusnya udah pada ngarti tapi untuk lebih jelas ini dia...
Gw akan mulai dengan permalink seperti ini
http://localhost/permaling/id/334/woi-cobain-permalinkdonk
kita print dulu REQUEST_URInya
echo $_SERVER['REQUEST_URI'];
hasilnya adalah jreng jreng...
/permaling/id/334/woi-cobain-permalinkdonk
karena ini gw di subdirectory maka directorynya juga muncul yaitu permaling.
Logikanya seperti ini, tangkap apapun setelah directory /permaling/ codenya adalah
$localpath = '/permaling/'; //namasubdirectory $gettingpath = explode ($localpath, $_SERVER['REQUEST_URI']); print_r($gettingpath);hasilnya adalah
Array ( [0] => [1] => id/334/woi-cobain-permalinkdonk )
Kenapa kok gw kasih id? karena ntar itu untuk membedakan, jadi elu bisa macem macem slug, yaitu media, images, pdf, atau apalah. kedua itu ntar bisa sangat ringan kalau buat nyari ke dalam database.. karena dalam database itu ruar biasa buanyak....
sekarang kita buat pembeda antara root directory ( tempat di mana cms atau subdirectory dari script ini ) atau post, atau media lain yang mungkin elu akan buat nanti...
$localpath = '/permaling/'; //namasubdirectory $gettingpath = explode ($localpath, $_SERVER['REQUEST_URI']); $gettingid = explode ('/',$gettingpath[1]); /* print_r ($gettingid); Array ( [0] => id [1] => 334 [2] => woi-cobain-permalinkdonk ) */ if ($gettingid[0] == "id") { //maka disini adalah post ( single post kalau di wordpress ) // kalau gw sih begini dah scriptnya... //$rsa = "SELECT * FROM `isi` WHERE `ftubeid` = '$gettingid[1]' LIMIT 1"; //code seterusnya dari sql itu... ( very light, dan sangat makan kecil dari resouce ) echo "ini single post"; }elseif(($_SERVER['REQUEST_URI'] == $localpath) OR ($gettingid[0] == "index.php") ) { //maka disini adalah index, // Usahakan index ini yang paling akhir dari logicnya soalnya ntar kalau elu bikin search ala wordpress, atau media lain seperti mungkin pdf, atau video, atau apalah jaminan belibet ntar... echo "index.php"; } else { //disini elu bisa bikin search query atau 404 error aja... echo "error "; }sekarang coba elu akses ke
http://localhost/permaling
atau
http://localhost/permaling/index.php
pasti muncul tulisan index.php khan?
trus coba lagi ke
http://localhost/permaling/id/333/manga
akan muncul ini single post
trus coba lagi ke
http://localhost/permaling/?nejfneuifuanufuefrne8biubeufbffb
akan muncul error, karena permalink tidak di ketahui... lumayanlah bisa buat protektif dari sql injection... jadi dia cuma bekerja sesuai dengan syarat dan peraturan yang kita buat...
Okeh done sementara itu mungkin bisa kita sambung lagi kapan kapan