Tentu kita tidak asing dengan Form macam ini: Itu adalah form pengiriman email pada GMail. Pada form tersebut, memungkinkan kita menambahkan input type file untuk penambahan attachment file, dan input type text pada kolom CC dan BCC. Semua itu hanya kita lakukan dalam satu kali klik tanpa mereload halaman. Bagaimana cara membuatnya? Continue reading “[Tips] Menambah “Add More” Input Form” → Webchat adalah sebuah media obrol interaktif memalui web. Contoh webchat sering kita lihat di meebo atau fasilitas chat Facebook. Kita pun bisa membuat. Secara konsep sederhana, chat terdiri dari sebuah halaman POST chat, yang dikirimkan ke server, dan ditampilkan melalui halaman web. Secara standard, web tidak akan bisa menerima POST chat dan menampilkannya tanpa merefresh. Maka dengan fasilitas Javascript, kita bisa merefreshkan beberapa bagian elemen web tersebut, tanpa harus merefresh halaman secara keseluruhan. Proses merefresh elemen(div) tersebut jika kurang bijak juga akan banyak memakan resource browser dan menghabiskan memori komputer. Disini kita belajar memahami sebuah konsep web dengan menggunakan PHP, MySQL dan JQuery. JQuery sendiri adalah sebuah library Javascript yang telah disusun untuk keperluan penyederhanaan dan optimalisasi fungsi-fungsi javascript. JQuery ini juga cukup tangguh untuk pengganti ajax terutama untuk keperluan hubungan Client Server. Marilah kita mencoba merancang
sebuah skenario pembuatan sistem chat berbasis web. Di sini saya merancang menggunakan tiga (3) file script server utama yaitu :
Script Server tersebut dikunci tampilan oleh file: styles.css. Sedangkan script sisi-client (diletakkan di direktori js) yang digunakan adalah:
Script pendukung di sisi server (diletakkan di direktori scripts) akan dipisahkan sesuai dengan tugasnya antara lain:
Secara rancangan
sistem ini akan berjalan dengan kendali penuh dari script chat.js. MENGAMBIL KOORDINAT SEBUAH TITIK DARI SEBUAH GAMBAR Jika pada Posting lalu https://blogit.bimosaurus.com/2013/03/16/berkreasi-dengan-peta-html-dan-tag-map-area-bagian-1/ telah dipaparkan bagaimana cara menyajikan sebuah gabungan antara gambar peta dan data koordinat dalam source HTML, maka di bagian ini akan dijelaskan bagaimana cara mengambil koordinat sebuah gambar. Untuk mengambil value koordinat yang diperlukan oleh MAP AREA, kita akan menggunakan bantuan Javascript untuk menentukannya. Format koordinat MAP AREA untuk kategori POLYGON adalah sebagai berikut : x1,y1,x2,y2,x3,y3,x4,y4………xn,yn Seperti artikel sebelumnya, contoh yang digunakan adalah halaman untuk web chat. Namun disana, halaman yang dibuat adalah dalam bentuk Chronological atau berurutan sesuai waktu, dan yang akan terbaru akan ditempatkan paling bawah. Sedang jika kita melihat beberapa situs, menempatkan komentar terbaru ada di paling atas. Untuk itu, kita dapat menggunakan fungsi JQuery .insertBefore untuk melakukan generating halaman ini. Jam sepertinya hal yang sederhana, tapi ternyata jam bisa membuat masalah tertentu. Perbedaan antara client dan server dalam beberapa aplikasi web dapat menjadi masalah tersendiri. Dalam sebuah halaman web, dapat saja kita menampilkan jam di web dengan javascript biasa, namun hasilnya hanyalah jam Client, artinya jam yang diambilkan waktunya dari waktu masing-masing pengakses internet. Bayangkan saja apabila sebuah input data dilakukan berdasar jam Client, maka bisa terjadi banyak masalah, terutama manipulasi waktu dan kesalahan time stamp. Salah satu syarat menampilkan jam server ke browser adalah dengan menggunakan perintah command PHP : Ketika sebuah “Link a href” yang terdapat dalam halaman web kita diklik, meskipun link tersebut menuju ke halaman kita sendiri, sebenarnya seluruh halaman ikut berubah, termasuk header-headernya. Padahal header itu akan selalu sama dimanapun saja link fitur web kita di klik. Hal ini akan sangat terasa lambat jika halaman header memuat gambar yang cukup besar, dan lebih-lebih pada koneksi internet yang kurang memadai. Ada satu trik dimana ketika sebuah link / hyperlinks diklik maka hanya akan berubah elemen yang dimaksud. Perpindahannya juga dapat disiasati dengan cara yang lembut dan menggunakan waktu yang cukup sehingga proses yang lama akan terasa tetap terlihat tidak kaku. Caranya adalah dengan menggunakan sebuah fungsi JQuery, yang tentu kita harus meload JQuery lebih dulu dalam halaman kita. Yang jelas, kita harus lebih dulu menetapkan elemen yang akan berubah, dalam kasus ini saya ambil #content, atau div id=content. Selanjutnya, pada a href yang akan kita set kita beri class, dalam hal ini saya berikan class = bms_fade. Letakkan script ini di awal halaman, selanjutnya ketika a href yang ber class bms_fade itu di clik, akan segera muncul perpindahan, hanya pada contentnya saja.. Silakan atur waktu set time outnya :), selamat mencoba //perhatikan versi dan letak jquery.. cari yang terbaru Sedangkan kode a nya akan menjadi seperti berikut: INI LINK nya Bagian yang akan terload adalah
Dalam ilmu web pada umumnya, dengan PHP-MySQL pada khususnya, sebuah proses Post Form, akan selalu mengarah ke suatu halaman yang ditandai dengan method dan action sebagai properti Formnya. Contoh: Ketika tombol submit ditekan, maka halaman tujuan (action) akan dijalankan. Jika halaman adalah halaman itu sendiri, maka akan ter-refresh (terambil ulang dengan sudah membawa perubahan post) dan jika halaman lain sebagai action, akan masuk ke halaman tujuan itu. Hal ini akan menjadi tidak nyaman bagi sebuah web yang memiliki desain gambar cukup besar, sedangkan diperkirakan client
akan membuka dengan bandwidth yang minim.
atau contoh dengan googlehost Langkah kedua adalah membuat form post seperti biasa, namun dengan seluruh komponen input diberikan id agar dapat diterima browser sebagai variabel yang berbeda, dan diberikan arah action yang berbeda dengan halaman pemuat form. Berikan juga fungsi javascript untuk Button pemicu submit form. Contoh: Langkah berikutnya adalah menyisipkan script javascript yang ada di bawah ini diantara load JQuery dan Form. Script ini berupa fungsi yang dipanggil oleh button ketika diklik Untuk menampung hasil kiriman POST, maka kita perlu membuat file submit.php yang isinya antara lain adalah file PHP biasa yang isinya adalah sebagai berikut: Asumsi tambahan: File submit.php ini tidak akan muncul di browser, karena prosesnya telah ditahan oleh JQuery. Selanjutnya tinggal membuat halaman untuk memuat tampilan dari isi tabel post dengan menggunakan jquery juga, yang akan dipost pada posting berikutnya 🙂 |