Mengganti Address Bar Setelah Ajax Request

Setelah melakukan ajax request, tentu saja Anda akan melihat address bar tidak berubah. Karena memang tidak ada reload halaman yang akan mengubah address bar.

Untuk dapat mengubah address bar setelah ajax request, Anda bisa menambahkan fungsi javascript ini setelah melakukan ajax request :
window.history.pushState("object or string", "Title", "/url-baru");
Berikut ini contoh implementasi nya pada jQuery ajax request :
$.ajax({
 "type":"get",
 "url":"http://same-site/a/b/c/",
 "success":function(html) {
  $("body").html(html);
  if("http://same-site/a/b/c" != window.location) {
    window.history.pushState({path: "http://same-site/a/b/c"}, "", "http://same-site/a/b/c/");
 });
Selanjutnya, ketika user klik back pada browser mereka, untuk sementara tidak ada aksi yang terjadi. Untuk ini kita perlu menambahkan event popstate pada window.
$(window).bind("popstate", function() {
  $.ajax({
    "type": "get",
    "url": location.pathname,
    "success": function(html) {
        $("body").html(html);
    }
  });
});

Konversi MySQL Timestamp ke PHP Date Format

Ketika kita membuat kolom di MySQL dengan tipe kolom timestamp dan meng-set default current_timestamp, maka data yang tersimpan adalah dalam bentuk seperti :
mysql> select fdate from t_feed;
+---------------------+
| fdate               |
+---------------------+
| 2012-03-02 07:14:59 |
| 2012-03-02 07:15:29 |
| 2012-03-02 07:16:29 |
+---------------------+
3 rows in set (0.00 sec)

Dan bentuk tersebut juga lah yang akan muncul ketika kita mengambil dengan PHP. Untuk menampilkan bentuk tanggal di PHP sesuai dengan format yang kita inginkan, PHP sudah menyediakan fungsi strtotime yang bisa mengubah timestamp MySQL menjadi Unix Timestamp.
<php
 $dat = $date_from_mysql_timestamp;
 $fdat = date('g:i d M Y', strtotime($dat));
 echo $fdat; // => 7:15 02 Mar 2012