Session 1 Pengenalan Pemrograman Berbasis Web Kemampuan Akhir yang Diharapkan Mampu melakukan rancang bangun Aplikasi berbasis Web pada berbagai jenis Project (di berbagai kegiatan/pekerjaan/bisnis) menggunakan perangkat lunak(software) WEB, metode, teknik-teknik, Algoritma/Logika Pemrograman dan alat bantu (Hardware) tertentu untuk implementasi berikut pendokumentasiannya PEMROGRAMAN BERBASIS WEB Konsep Pemrograman, instalasi PHP/XAMPP, Sintak PHP & menggabungkan dgn HTML Elemen dasar PHP : Variabel Jenis/type, scope & Operator Struktur Kontrol : If …, Else…., ElseIf …., Do…While Sintak PHP (lanjut) Fungsi : Membuat fungsi, fungsi build in PHP, Manipulasi array dan String & Akses ke database Presentasi tugas ke III, atau kuize, sebelum UTS PEMROGRAMAN BERBASIS WEB Menggunakan MySQL : dasar2 MySQL, Membuat database dan tabel & mengenal fungsi2 MySQL Manipulasi tabel : Perintah SQL serta Klausa Where, Operator Logic menghapus, menambah & mengupdate Record Membuat Web Dinamis : dgn CSS, disain web Page dinamis melalui tools form, page login & Administrator. Manajement Cookie dan membentuk sessie MATERI BELAJAR PEMROGRAMAN BERBASIS WEB Manajement Cookie : mengenal Cookie dan HTTP, Menciptakan, mengakses, mengganti Cookie, menambah tgl yg kadarluasa & Memperoleh Daftar Cookie Membentuk sessie Studi kasus : Project dan menampilkannya atau halaman web Project di internet Presentasi Project yg dibuat berkelompok berbaisi web sebelum UAS MATERI BELAJAR PEMROGRAMAN BERBASIS WEB Keterkaitan Matakuliah Pemrograman berbasis Web dan menjadi penunjang matakuliah lain. Terutama matakuliah Programing dan basisData yaitu PBO, Java, Web lanjut & TA. Serta Keterkaitan dgn matakuliah lain yaitu : Dasar2 Pemrograman, Algoritma, SBD, RPL, Analisis dan Perancangan : Basisdata & System informasi. MATERI BELAJAR Pengenalan Pemrograman Web ● HTTP ● Client Side Programming ● Server Side Programming ● Web Server Software (PHPTriad, XAMPP) ● KonsepHTML ● Konsep dasar Web ● Arsitektur Web MATERI BELAJAR HTTP SEJARAH HTTP Protokol HTTP pertama kali dipergunakan dalam WWW pada tahun 1990. Pada saat tersebut yang dipakai adalah protokol HTTP versi 0.9. Versi 0.9 ini adalah protokol transfer dokumen secara mentah, maksudnya adalah data dokumen dikirim sesuai dengan isi dari dokumenter sebut tanpa memandang tipe dari dokumen. Kemudian pada tahun 1996 protokol HTTP diperbaiki menjadi HTTP versi 1.0. Perubahan ini untuk mengakomodasi tipe-tipe dokumen yang hendak dikirim beserta enkoding yang dipergunakan dalam pengiriman data dokumen. Sesuai dengan perkembangan infrastruktur internet maka pada tahun 1999 dikeluarkan HTTP versi 1.1 untuk mengakomodasi proxy, cache dan koneksi yang persisten. MATERI BELAJAR HTTP HTTP (Hyper Text Transfer Protocol) adalah protokol yang dipergunakan untuk mentransfer dokumen dalam World Wide Web(WWW). Protokol ini adalah protokol ringan, tidak berstatus dan generik yang dapat dipergunakan berbagai macam tipe dokumen MATERI BELAJAR HTTP HTTP (Hyper Text Transfer Protocol) adalah protokol yang dipergunakan untuk mentransfer dokumen dalam World Wide Web(WWW). Protokol ini adalah protokol ringan, tidak berstatus dan generik yang dapat dipergunakan berbagai macam tipe dokumen MATERI BELAJAR HTTP HTTP adalah sebuah protokol meminta/menjawab antara clientdan server. Sebuh client HTTP seperti web browser, biasanya memulai permintaan dengan membuat hubungan TCP/IPke porttertentu di tuan rumah yang jauh (biasanya port 80). Sebuah server HTTP yang mendengarkan diport tersebut menunggu client mengirim kode permintaan (request), seperti "GET / HTTP/1.1" (yang akan meminta halaman yang sudah ditentukan), diikuti dengan pesan MIMEyang memiliki beberapa informasi kode kepala yang menjelaskan aspek dari permintaan tersebut, diikut dengan badan dari data tertentu. Beberapa kepala (header) juga bebas ditulis atau tidak, sementara lainnya (seperti tuan rumah) diperlukan oleh protokol HTTP/1,1. Begitu menerima kode permintaan (dan pesan, bila ada), server mengirim kembali kode jawaban, seperti "200 OK", dan sebuah pesan yang diminta, atau sebuah pesan error atau pesan lainnya. MATERI BELAJAR HTTP ContohTransaksi S = Server C = Client C: (Inisialisasikoneksi) C: GET /index.htmHTTP/1.1 C: Host: www.wikipedia.org S: 200 OK S: Mime-type: text/html S: S: --data dokumen-S: (close connectioin) TUGAS Client Side Programming Dalam jaringan komputer, kata “client side” mengacu kepada operasi yang dilakukan oleh client pada satu hubungan “client-server”. Secara umum, suatu client adalah satu aplikasi komputer, seperti web browser yang berjalan pada satu komputer lokal dari pengguna atau workstation dan terhubung kesatu server seperlunya. TUGAS Client Side Programming Operasi dapat dilakukan client-side karena operasi tersebut membutuhkan akses keinformasi atau fungsi yang tersedia pada client tetapi tidak pada server, karena pengguna membutuhkan observasi terhadap operasi tersebut atau menyediakan input, atau server kekurangan kekuatan pememrosesan untuk melakukan operasi yang tepat waktu untuk seluruh client yang harus dilayaninya. Sebagai tambahan, jika operasi dapat dilakukan oleh client tanpa mengirim data melalui jaringan, maka hal itu memakan waktu lebih sedikit, menggunakan lebih kecil bandwidth dan mengurangi resiko keamanaan. . Client Side Programming Client-side scripting umumnya mengacu kepada kelas dari program komputer pada web yang dieksekusi client-side, oleh browser web pengguna, bukan server-side (pada server web). Jenis pemrograman komputer merupakan bagian penting dari konsep (DHTML) Dynamic HTML, memungkinkan halaman web yang akan ditulis, yaitu, untuk memiliki konten yang berbeda dan berubah tergantung pada input pengguna, kondisi lingkungan (seperti waktu hari), atau variabel lainnya. Penulis menulis web client-side script dalam bahasa seperti Java Script (Client-side JavaScript) atau VBScript, yang didasarkan pada beberapa standar: -HTML scripting -HTTP -Document Object Mode Client Side Programming Sebaliknya, server-side script, ditulis dalam bahasa seperti Perl dan PHP, yang dieksekusi oleh server web ketika pengguna meminta dokumen. Mereka menghasilkan output dalam format yang dimengerti oleh web browser (biasanya HTML), yang kemudian dikirim ke komputer pengguna. Pengguna tidak dapat melihat kode sumber script ini (kecuali penulis menerbitkan kode terpisah), dan bahkan mungkin tidak menyadari bahwa script dieksekusi. Dokumen-dokumen yang dihasilkan oleh server-side script mungkin, tentu saja, mengandung client-side script. Client Side Programming -Client-side script memiliki akses lebih besar ke informasi dan fungsi yang tersedia pada komputer pengguna, sedangkan server-side script memiliki akses lebih besar ke informasi dan fungsi yang tersedia di server. Server-side script mengharuskan penerjemah bahasa mereka diinstal pada server, dan menghasilkan output yang sama terlepas dari browser klien, sistem operasi, atau rincian sistem lainnya. -Client-side script tidak memerlukan perangkat lunak tambahan pada server (membuat mereka populer dengan penulis yang tidak memiliki akses administratif ke server mereka), namun mereka memang mengharuskan web browser pengguna memahami bahasa scripting di mana mereka ditulis. Oleh karena itu praktis bagi seorang penulis untuk menulis script dalam bahasa yang tidak didukung oleh browser web yang digunakan oleh mayoritas nya atau audiens. Server Side Programming Dalam jaringan komputer, istilah server-side mengacu pada operasi yang dilakukan oleh server dalam hubungan clientserver. Biasanya, server adalah sebuah program perangkat lunak, seperti web server, yang berjalan di server jauh, dicapai dari komputer lokal pengguna atau workstation. Operasi dapat dilakukan sisi server karena mereka memerlukan akses ke informasi atau fungsi yang tidak tersedia pada klien, atau memerlukan perilaku khas yang tidak dapat diandalkan jika dilakukan client-side. Server-sisi operasi juga termasuk pengolahan dan penyimpanan data dari klien ke server, yang dapat dilihat oleh sekelompok klien. TUGAS Server Side Programming Server-side scripting adalah teknologi web server di mana permintaan pengguna terpenuhi dengan menjalankan script langsung pada server web untuk menghasilkan halaman HTML dinamis. Hal ini biasanya digunakan untuk menyediakan situs web interaktif yang antarmuka ke database atau menyimpan data lainnya. Hal ini berbeda dari klien-side scripting dimana script dijalankan oleh browser web melihat, biasanya dalam JavaScript. Keuntungan utama ke server-side scripting adalah kemampuan untuk menyesuaikan sangat respon berdasarkan kebutuhan pengguna, hak akses, atau query ke dalam menyimpan data. MENEMUKAN PELUANG BISNIS Server Side Programming Makin hari / makin lama web ini hampir secara eksklusif dilakukan dengan menggunakan kombinasi program C, Perl script dan skrip Shell menggunakan Common Gateway Interface (CGI). Mereka skrip dieksekusi oleh sistem operasi, dan hasilnya hanya dilayani kembali oleh server web. Saat ini, ini dan bahasa scripting online lainnya seperti ASP dan PHP sering dapat dieksekusi langsung oleh server web itu sendiri atau oleh modul ekstensi (misalnya mod _ perl atau mod _ php) ke server web. Entah bentuk scripting (misalnya CGI atau eksekusi langsung) dapat digunakan untuk membangun kompleks multi-halaman situs, tapi eksekusi langsung biasanya menghasilkan overhead yang rendah karena kurangnya panggilan ke interpreter eksternal. Website dinamis juga kadang-kadang didukung oleh server aplikasi web kustom, misalnya Python "Base HTTP Server" perpustakaan, meskipun beberapa mungkin tidak menganggap hal ini menjadi server-side scripting. Server Side Programming Daftarserver-sidescriptingteknologi Setiap bahasa pemrograman dapat menghasilkan halaman web melalui CGI atau modul ekstensi atau kerangka aplikasi server. Bagian ini daftar teknologi yang dirancang terutama atau secara eksklusif untuk server-side scripting, biasanya oleh embedding petunjuk langsung dalam halaman web template. ASP Microsoft dirancang utk solusi yang memungkinkan berbagai bahasa (meskipun umumnya VBscriptis digunakan) dalam halaman HTML seperti luar, terutama digunakan pada Windows, tetapi platform Pendukung lainya terbatas. ColdFusion Tag lintas platform berbasis sistem server scripting sisi komersial. JSP Sebuah sistem berbasis Java untuk embedding kode dalam halaman HTML. laso Sebuah ditafsirkan Datasourceneutral bahasa pemrograman dan server lintas platform. MENEMUKAN PELUANG BISNIS Server Side Programming SSI Sebuah sistem yang cukup dasar yang merupakan bagian dari web server apache umum. Bukan lingkungan yang penuh pemrograman jauh tapi masih berguna untuk hal-hal sederhana seperti termasuk menu yang umum. PHP Opensourcesolution umum berdasarkan termasuk kode dalam bahasa sendiri ke dalam halaman HTML. Server-side JavaScript Sebuah bahasa umumnya digunakan pada sisi klien, tetapi juga kadangkadang pada sisi server. SMX Lisplikeopensourcelanguage dirancang untuk dimasukkan ke dalam halaman HTML. MENEMUKAN PELUANG BISNIS WEB Server Software Server web adalah sebuah perangkat lunak server yang berfungsi menerima permintaan HTTP atau HTTPS dari klien yang dikenal dengan browser web dan mengirimkan kembali hasilnya dalam bentuk halaman-halaman web yang umumnya berbentuk dokumen HTML. Server web yang terkenal diantaranya adalah Apache dan Microsoft Internet Information Service (IIS). Apache merupakan server web antar-platform, sedangkan IIS hanya dapat beroperasi di sistem operasi Windows. Server web juga dapat berarti komputer yang berfungsi seperti definisi diatas MENEMUKAN PELUANG BISNIS WEB Server Software XAMPP adalah paket perangkat lunak bebas yang berisi Apache HTTP Server, MySQL database dan alat yang diperlukan untuk menggunakan PHP dan bahasa pemrograman Perl. Program ini dirilis di bawah GNU General Public License dan berfungsi sebagai server, gratis, mudah digunakan web, mampu melayani halaman dinamis. Saat ini, XAMPP tersedia untuk Windows, Linux, Sun Solaris dan Mac OS X (X dalam namanya bisa berdiri untuk salah satu dari sistem operasi). XAMPP secara luas bernama "WAMP / LAMP instalasi pria malas," karena hanya membutuhkan satu file zip, tar atau exe untuk didownload dan dijalankan, dan konfigurasi sangat sedikit dari berbagai komponen yang membentuk server web diperlukan. MENEMUKAN PELUANG BISNIS WEB Server Software XAMPP secara teratur diperbarui untuk memasukkan rilis terbaru dari Apache / MySQL / PHP dan Perl. Hal ini juga dilengkapi dengan beberapa modul lainnya, termasuk SSL Terbuka dan MyAdmin php. Secara resmi, XAMPP hanya dimaksudkan untuk digunakan sebagai alat pembangunan, untuk memungkinkan situs web desainer dan programmer untuk menguji pekerjaan mereka pada komputer mereka sendiri tanpa akses ke Internet. Dalam prakteknya, bagaimanapun, XAMPP kadang-kadang digunakan untuk benar-benar melayani halaman web di World Wide Web, dan dengan beberapa modifikasi secara umum cukup aman untuk melakukannya. MENEMUKAN PELUANG BISNIS HTML HyperTextMarkup Language (HTML) adalah sebuah bahasa markup yang digunakan untuk membuat sebuah halaman web dan menampilkan berbagai informasi didalam sebuah browser Internet. Bermula dari sebuah bahasa yang sebelumnya banyak digunakan di dunia penerbitan dan percetakan yang disebut dengan SGML, HTML adalah sebuah standar yang digunakan secara luas untuk menampilkan halaman web dan HTML kini merupakan standar Internet yang saat ini dikendalikan oleh World Wide Web Consortium (W3C). Versi terakhir dari HTML adalah HTML 4.01, meskipun saat ini telah berkembang XHTML yang merupakan pengembangan dari HTML. MENEMUKAN PELUANG BISNIS HTML HTML berupa kode-kode tag yang menginstruksikan browser untuk menghasilkan tampilan sesuai dengan yang diinginkan. Sebuah file yang merupakan file HTML dapat dibuka dengan menggunakan browser web seperti Mozilla Firefox atau Microsoft Internet Explorer. HTML juga dapat dikenali oleh aplikasi pembuka email ataupun dari PDA dan program lain yang memiliki kemampuan browser MENEMUKAN PELUANG BISNIS HTML Markup/Tanda Secara garis besar, terdapat 4 jenis elemen dariHTML: structural. Tanda yang menentukan level atau tingkatan dari ebuah teks (contoh, <h1>Golf</h1> akan memerintahkan browser untuk menampilkan"Golf" sebagai teks tebal besar yang menunjukkan sebagai Heading 1 presentational. Tanda yang menentukan tampilan dari sebuah teks tidak peduli dengan level dari teks tersebut (contoh, <b>boldface</b> akan menampilkan bold. Tanda presentational saat ini sudah mulai digantikan oleh CSS dan tidak direkomendasikan untuk mengatur tampilan teks, hypertext. Tanda yang menunjukkan pranala kebagian dari dokumenter tersebut atau pranala kedokumen lain (contoh, <a href="http://www.wikipedia.org/">Wikipedia</a> akan menampilkan Wikipedia sebagai sebuah hyperlink ke URL tertentu), Elemen widget yang membuat objek-objek lain seperti tombol (<button>), list (<li>), dan garis horizontal (<hr>). MENEMUKAN PELUANG BISNIS HTML Selain markup presentational, markup yang lain tidak menentukan bagaimana tampilan dari sebuah teks. Namun untuk saat ini, penggunaan tag HTML untuk menentukan tampilan telah dianjurkan untuk mulai ditinggalkan dan sebagai gantinya digunakan Cascading Style Sheets. TUGAS Konsep Dasar Web Definisi Web World Wide Web ("WWW", atau singkatnya "Web") adalah suatu ruang informasi di mana sumber-sumber daya yang berguna di identifikasi oleh pengenal global yang disebut Uniform Resource Identifier (URI). WWW sering dianggap sama dengan Internet secara keseluruhan, walaupun sebenarnya ia hanyalah bagian daripadanya. MENEMUKAN PELUANG BISNIS Konsep Dasar Web Hiperteks dilihat dengan sebuah program bernama browser web yang mengambil informasi (disebut "dokumen" atau “halaman web") dari server web dan menampilkannya, biasanya di sebuah monitor. Kita lalu dapat mengikuti pranala disetiap halaman untuk pindah kedokumen lain atau bahkan mengirim informasi kembali kepada server untuk berinteraksi dengannya. Ini disebut "surfing“ atau "berselancar“ dalam bahasa Indonesia. Halaman web biasanya diatur dalam koleksi material yang berkaitan yang disebut “situsweb". Sekian dan ...... Semoga anda sukses