Sabtu, 05 Mei 2012

Mencari Nilai MIN dan Max pada Grup


Tabel yang digunakan yaitu :
produk dan kategori


1.Menampilkan nilai Min pada grup

SELECT
  MIN(produk.stok) AS Minimal,
  produk.nama_produk,
  kategori.nama_kategori
FROM
  kategori
  INNER JOIN produk ON (kategori.id_kategori = produk.id_kategori)
GROUP BY
  produk.nama_produk,
  kategori.nama_kategori

2.Menampilkan nilai Max pada Group

SELECT
  MAX(produk.stok) AS Minimal,
  produk.nama_produk,
  kategori.nama_kategori
FROM
  kategori
  INNER JOIN produk ON (kategori.id_kategori = produk.id_kategori)
GROUP BY
  produk.nama_produk,
  kategori.nama_kategori

Langkah-langkah membuat website


Dalam membuat website tentunya tidak lepas  dari software, sehingga sebelumnya perllu untuk mempersiapkan software sebagai berikut:
  • XAMPP , digunakan untuk webserver, dan database server
  • Macromedia Dreamweaver / notepad ++, digunakan untuk coding / menuliskan script php, css, javascript dan mendesain web
  • Adobe phothosop, digunakan untuk mendesain tampilan website.

1.Membuat desain web
Membuat desain web sangat penting karena akan mempengaruhi keindahan dan kemudahan navigasi website nantinya, mendesain web bias dimulai dari
  • Tujuan membuat website
  • Sitemap
  • Sketsa
  • Resolusi
  • Lebar konten
  • Manajemen folder
  •  
2.Membuat database
Membuat database bisa menggunakan MySql. Dimulai dari merancang ERD hingga membuat  table-tabel dan field-nya

3.Pemrogaman
Dalam tahap ini ada penggabungan dari desain, pemrogaman dan database.
Dalam pemrogaman ini bisa menggunakan PHP. Pembuatan bisa dari sisi admin kemudian sisi user/ pengunjung


Untuk memudahkan dalam membuat sebaiknya untuk file file disimpan dal sebuah folder sesuai jenisnya contoh folder gambar, css, javascript dll.
 

PENGERTIAN FRAMWORK / MVC

A. PENGERTIAN MVC (MODEL VIEW CONTROLLER).

Model View Controller merupakan suatu konsep yang cukup populer dalam pembangunan aplikasi web, berawal pada bahasa pemrograman Small Talk, MVC memisahkan pengembangan aplikasi berdasarkan komponen utama yang membangun sebuah aplikasi seperti manipulasi data, user interface, dan bagian yang menjadi kontrol aplikasi. Terdapat 3 jenis komponen yang membangun suatu MVC pattern dalam suatu aplikasi yaitu :
  1. View, merupakan bagian yang menangani presentation logic. Pada suatu aplikasi web bagian ini biasanya berupa file template HTML, yang diatur oleh controller. View berfungsi untuk menerima dan merepresentasikan data kepada user. Bagian ini tidak memiliki akses langsung terhadap bagian model.
  2. Model, biasanya berhubungan langsung dengan database untuk memanipulasi data (insert, update, delete, search), menangani validasi dari bagian controller, namun tidak dapat berhubungan langsung dengan bagian view.
  3. Controller, merupakan bagian yang mengatur hubungan antara bagian model dan bagian view, controller berfungsi untuk menerima request dan data dari user kemudian menentukan apa yang akan diproses oleh aplikasi.
Dengan menggunakan prinsip MVC suatu aplikasi dapat dikembangkan sesuai dengan kemampuan developernya, yaitu programmer yang menangani bagian model dan controller, sedangkan designer yang menangani bagian view, sehingga penggunaan arsitektur MVC dapat meningkatkan maintanability dan organisasi kode. Walaupun demikian dibutuhkan komunikasi yang baik antara programmer dan designer dalam menangani variabel-variabel yang akan ditampilkan.
Ada beberapa kelebihan CodeIgniter (CI) dibandingkan dengan Framework PHP lain,
  • Performa sangat cepat : salah satu alasan tidak menggunakan framework adalah karena eksekusinya yang lebih lambat daripada PHP from the scracth, tapi Codeigniter sangat cepat bahkan mungkin bisa dibilang codeigniter merupakan framework yang paling cepat dibanding framework yang lain.
  • Konfigurasi yang sangat minim (nearly zero configuration)  : tentu saja untuk menyesuaikan dengan database dan keleluasaan routing tetap diizinkan melakukan konfigurasi dengan mengubah beberapa file konfigurasi seperti database.php atau autoload.php, namun untuk menggunakan codeigniter dengan setting standard, anda hanya perlu merubah sedikit saja file pada folder config.
  • Banyak komunitas: dengan banyaknya komunitas CI ini, memudahkan kita untuk berinteraksi dengan yang lain, baik itu bertanya atau teknologi terbaru.
  • Dokumentasi yang sangat lengkap : Setiap paket instalasi codeigniter sudah disertai user guide yang sangat bagus dan lengkap untuk dijadikan permulaan, bahasanya pun mudah dipahami.
  • Dan banyak lagi yang lainnya.

B. PENGERTIAN CODEIGNITER

Codeigniter adalah sebuah aplikasi open source, yaitu aplikasi yang bebas untuk digunakan oleh siapapun tanpa harus membayar lisensi untuk menggunakannya.
Codeigniter juga merupakan sebuah framework untuk membangun sebuah aplikasi website dinamis menggunakan PHP yang dapat digunakan dengan cepat dan mudah tanpa harus membangun apilkasi PHP dari awal.
untuk mendapatkan aplikasi ini, silahkan kunjungi website resminya di http://www.codeigniter.com/
Kelebihan dari codeigniter dari framework lainnya adalah :
1. Mendukung PHP4 dan PHP 5
2. Dolumentasi yang sangat lengkap
3. mudah untuk dipelajari
4. Performa yang cepat,
5. Menggunakan MVC (Model View Controller) yang membedakan antara logika, tampilan.

C. KONFIGURASI DASAR CODEIGNITER

Pada folder System/application/config, terdapat beberapa file konfigurasi dasar untuk Codeigniter. Di sini akan dibahas mengenai 4 file konfigurasi penting yang akan menetukan kinerja Codeigniter, diantaranya : Config.php, database.php, autoload.php, dan routes.php.
Pertama-tama kita bahas konfigurasi Config.php
Pada config.php berisi konfigurasi dasar dari aplikasi yang kita buat. Konfigurasi yang pertama adalah base URL dari aplikasi kita. Kita menentukannya secara lengkap dengan menyertakan bagian http:// juga, misalnya :
$config ['base_url'] = "http://webblog.com/";
 
Keuntungan menggunakan cara ini adalah kita tidak perlu menulis ulang secara lengkap URL jika diperlukan, misalnya untuk menentukan action pada form. Cukup menggunakan fungsi base_url. Apalagi jika anda harus mengalihkan aplikasi kita pada web server lain, maka kita cukup mengganti base_url nya. Hal kedua untuk konfigurasi adalah URL untuk homepage dengan mengatur “$config ['index_page']“. Artinya, index.php akan muncul pada homepage anda. contoh :
http://localhost/webblog/index.php/blog
 
Sehingga sebaiknya biarkan saja setting untuk index page sesuai defaultnya, yaitu index.php
$config ['index_page'] = "index.php" ;
 
Setelah kita mengatur kedua konfigurasi di atas, sebaiknya untuk yang lain dibiarkan dulu saja.
Yang kedua, sekarang kita bahas konfigurasi dari database.php
File database.php berisi semua informasi yang diperlukan untuk berhubungan dengan database. Saat ini, Codeigniter mendukung MySQL(4.1 +), MySQLi, MS SQL, Postgres, Oracle, SQLite, dan ODBC. Untuk berhubungan dengan database, cukup memasukkan informasi yang valid mengenai hostname, username, password, nama database, dan driver database. misalnya :

$active_group = 'default';
$active_record = TRUE;
 
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = 'root';
$db['default']['database'] = 'simdik';
$db['default']['dbdriver'] = 'mysql';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;
 
terdapat 5 poin penting dalam konfigurasi database, yaitu : hostname, username, password, database (nama databse) dan dbdriver(engine RDBMS). Sesuaikan dengan yang ada di komputer kita, jika kita mengisi dengan benar maka tidak akan ada masalah.
yang ke-tiga kita bahas mengenai konfigurasi autoload.php
$autoload['libraries'] = array('session','form_validation');
$autoload['helper'] = array('url','form');
$autoload['plugin'] = array();
$autoload['config'] = array();
$autoload['language'] = array();
$autoload['model'] = array();
 
File autoload.php menspesifikasikan resource apa saja yang akan di load secara otomatis oleh Codeigniter.
Dan yang ke-empat kita bahas mengenai konfigurasi pada routes.php
File konfigurasi routes.php di gunakan untuk melakukan remap URI request agar mengarah ke suatu fungsi tertentu pada sebuah controller.Contoh, kita memiliki sebuah controller bernama blog dengan fungsi index di dalamnya. URI dari pasangan kombinasi controller atau fungsi akan tempak seperti :
http://webblog.com/blog/index
 
Selanjutnya, jika controller kita memiliki sebuah fungsi halaman yang menerima sebuah parameter berupa bilangan, URI akan tampak seperti :

http://webblog.com/blog/halaman/5
 
Nah, pada intinya konfigurasi diatas bertujuan untuk mempermudah kita dalam penggunaan Codeigniter. Agar tidak memanggil berkali-kali suatu model atau database, kita cukup mengkonfigurasi pada file Config.php.


Kamis, 03 Mei 2012

Membuat Anti SQL Injection

Contoh Aplikasi Form Login
Langkah pertama adalah pembuatan database:

Kemudian membuat script php:
Script
1. Public_html /Login _form.php

<!DOCTYPE html>
<head>
<title>form login</title>
</head>
<body>
<form name="login" action="config/login_check.php" method="post">
<table border="1" align="center" bordercolor="#00CCFF">
<tr><td colspan="2"><div align="center">Form Login</div></td></tr>
<tr><td>Username</td><td> : <input type="text" name="username"></td></tr>
<tr><td>Password</td><td> : <input type="password" name="password"></td></tr>
<tr><td colspan="2"><div align="center">
  <input type="submit" value="Login">
</div></td></tr>
</table>
</form>
</body>
</html>

2. public_html/config/login_check.php

<?php
include "../conn.php"; //connection file
function anti_injection($data){
$filter = mysql_real_escape_string(stripslashes(strip_tags(htmlspecialchars($data,ENT_QUOTES))));
return $filter;
}
$username = anti_injection($_POST['username']);
$pass     = anti_injection(md5($_POST['password']));
//make sure the username and password are character or number.
if (!ctype_alnum($username) OR !ctype_alnum($pass)){
echo "Bingo!! sekarang login form telah terlindungi. Tidak ada SQL Injection.";
}
else{
$login=mysql_query("select * from users where username='$username' and password='$pass'
and block='N'");
$found=mysql_num_rows($login);
$r=mysql_fetch_array($login);
//If found the username and password
if ($found > 0){
session_start();
include "timeout.php";
$_SESSION[username]     = $r[username];
$_SESSION[fullname]     = $r[full_name];
$_SESSION[passuser]     = $r[password];
$_SESSION[leveluser]    = $r[level];
// session timeout
$_SESSION[login] = 1;
timer();
$old_sid = session_id();
session_regenerate_id();
$new_sid = session_id();
mysql_query("update users set id_session='$new_sid' where username='$username'");
header('location:../home.php'); //page redirection, after success login
}
else{
echo "<center>LOGIN GAGAL!!<br/>
salah username atau password.<br/>
atau accaunt anda diblokir<br/>";
echo "<a href=../login_form.php><b>Coba Lagi</b></a></center>";
}
}
?>

3. . public_html/config/timeout.php

<?php
session_start();
function timer(){
$time=10000; //set the timer
$_SESSION[timeout]=time()+$time;
}
function login_check(){
$timeout=$_SESSION[timeout];
if(time()<$timeout){
timer();
return true;
}else{
unset($_SESSION[timeout]);
return false;
}
}
?>
4. public_html/config/logout.php
<?php
session_start();
session_destroy();
echo "<center>Anda berhasil Keluar dari sistem.<b>[LOGOUT]</b></center>";
?>

5.public_html/home.php
<?php
session_start();
error_reporting(0);
include "config/timeout.php";
if($_SESSION[login]==1){
if(!login_check()){
$_SESSION[login] = 0;
}
}
if($_SESSION[login]==0){
header('location:login_form.php');
}
else{
if (empty($_SESSION['username']) AND empty($_SESSION['passuser']) AND $_SESSION['login']==0){
"<center>Untuk mengakses halaman ini, login dulu ya!<br/>";
echo "<a href=login_form.php><b>LOGIN</b></a></center>";
}
else{
?>

<!DOCTYPE html>
<head>
<title></title>
<style type="text/css">
<!--
#Layer1 {
            padding:10px;
            width:1000px;
            height:280px;
            background-color: #00CCFF;
}
.style1 {color: #000000}
-->
</style>
</head>
<body>
<div id="Layer1">
  <h1 align="center" class="style1">Selamat Datang </h1>
  <h4 align="center" class="style1">Di Web Ku </h4>
 
  <p align="center"><a href="config/logout.php" target="_parent">logout</a></p>
  <p>&nbsp;</p>
</div>
</body>
</html>
<?php
}
}
?>

6.public_html/conn.php

<?php
$host = "localhost";
$username = "root";
$password = "";
$databasename = "users";
$connection = mysql_connect($host, $username, $password) or die("Kesalahan Koneksi ... !!
");
mysql_select_db($databasename, $connection) or die("Database Error");
?>



Selasa, 01 Mei 2012

Sepucuk Surat Dari Ibu dan Ayah

 
Kawan, lihat dan bacalah agar kita dapat menghormati dan menjaganya kelak. Kalau mau menangis, keluarkanlah tangismu dan kalau mau berubah inilah waktunya.

sumber : youtube

Senin, 30 April 2012

HTML

<html>
<head>
<title>Dasar HTML</title>
</head>
<body>
belajar HTML
</body>
</html>

Jumat, 06 April 2012

Rabu, 04 April 2012

Jquery Dropdown dengan Superfish

Membuat menu dropdown sangat mudah dengan Superfish dan dapat anda download gratis di alamat berikut ini http://users.tpg.com.au/j_birch/plugins/superfish/#download
Setelah didownload dan untuk melihat kemampuannya langsung dicoba dengan cara berikut ini :






    CSS 3 Border & Font

    CSS 3 adalah versi CSS terbaru yang masih dikembangkan oleh W3C. Namun beberapa web browsersudah mendukung CSS 3. CSS 2 didukung seutuhnya oleh CSS 3 dan tidak ada perubahan, hanya ada beberapa penambahan, sehingga ketika bermigrasi dari CSS 2 ke CSS 3, tidak perlu mengubah apapun.







    HTML 5 Audio & Video

    Pengertian HTML5 adalah sebuah standar untuk menstrukturkan dan menampilkan isi pada World Wide Web. Standar bahasa tersebut memperkenalkan fitur baru seperti memutar video serta drag and drop. Sebelumnya fitur tersebut bergantung pada plugins pihak ketiga di penjelajah web seperti Adobe Flash dan Microsoft Silverlight.








    Jumat, 23 Maret 2012

    Wanita Itu Aku by Listiya Pratiwi

    Wanita itu aku
    wanita itu aku
     
                Kuhirup aroma kopi dalam- dalam. Hmm...peningku berangsur- angsur mulai menghilang. Banyak masalah yang kuhadapi sekarang ini. Masalah itu bukan semakin berkurang tetapi semakin bertambah saja ku rasakan. Kalau sudah begini cuma kopi, teman yang selalu setia menemaniku memberangus masalah- masalah itu sejenak. Ahh..seandainya aku kemarin tak melakukan itu pasti sekarang Bram ada di sampingku, menggenggam tanganku dan mendengar semua keluh kesahku, pikirku sedih.
                “Bodoh...bodoh...kamu bodoh Dina. Kenapa kamu sia- siakan orang yang sangat berarti bagimu, orang yang sangat sangat menyukaimu,” ujarku kesal kepada diriku sendiri. Bram pasti tak mau memaafkanku lagi. Terlalu banyak kata maaf yang sudah ku ucap padanya. Aaah..mungkin dia sudah muak padaku atau mungkin dia sudah mencari penggantiku, pikirku lagi. Tak terasa sudah 2 jam aku duduk melamun di Cafe ini.
                Beberapa hari ini terasa hampa tanpa Bram. Gelak tawa Bram, suara Baritonnya, lesung pipinya, tatapan lembut matanya, wangi parfum Black Code beraroma maskulin oriental yang segar yang selalu dia pakai. Semua yang ada di dirinya begitu membuatku rindu. Kembali ku minum kopi yang sudah mulai dingin.
                Sebenarnya masalah antara aku dan Bram hanyalah masalah sepele. Bram telah melamarku tiga kali tetapi selalu aku tolak. Bukan karena aku tidak menyukai Bram tapi lantaran aku belum siap. Bram pertama kali melamarku ketika aku berusia delapan belas tahun, ketika itu aku belum berpikir untuk menikah di usia itu, aku ingin menjadi Sarjana Psikologi paling tidak lulusan S1. Bram pun mengerti dengan alasan yang ku utarakan kepadanya. Sempat kulihat seberkas rasa kecewa di matanya. Dia pun memaksakan sesungging senyum hanya untuk mencairkan suasana yang sempat membeku sesaat di antara kami.
                Setelah empat tahun berlalu dan aku sudah menjadi Sarjana Psikologi dengan predikat cum laud. Bram menemuiku untuk memberiku selamat dan mencium keningku. Sepertinya dia bangga padaku, pikirku waktu itu.
                “Dina, sekarang kamu sudah menjadi Sarjana. Apa yang kamu inginkan sudah tercapai...” Aku terdiam menunggu kelanjutan kata- katanya. “Do you marry me?” ucapnya yakin, dia mengeluarkan kotak kecil dari saku celana jeansnya. Belum habis keterkejutanku, Dia membuka kotak itu dan aku membelalakan mata ketika ku lihat cincin berlian yang sangat indah. Ku taksir harganya ratusan juta.
                Tetapi jawaban yang keluar dari mulutku bukan kata “yes” atau “ya”, mungkin lebih tepatnya bukan kata- kata yang ingin di dengar Bram.
                “Maaf Bram, aku masih belum siap untuk menikah, Aku ingin bekerja dulu, aku ingin mencari banyak pengalaman, aku ingin berkarier” jawabku dengan menunduk, aku tak bisa melihat bagaimana reaksi Bram. Apakah dia akan marah karena aku mengingkari kata- kata ku beberapa tahun lalu. Ternyata Bram tidak marah. Bram hanya mengatakan bahwa dia akan menungguku.
                Sore itu tanpa sengaja aku dan Bram bertemu di Cafe ini. Kami pun duduk berhadapan di meja paling pojok. Kami sama- sama menanyakan kabar satu sama lain. Banyak yang kami bicarakan, dari mulai orang tua kami, film terbaru, lagu yang sedang nge-hits, hingga rayuan- rayuan gombal yang sedang nge-tren sekarang ini. Setelah kami menyantap makan malam, Bram mulai menyinggung tentang niatnya melamarku lagi. Dia tahu kalau aku sudah sukses dalam berkarier. Tetapi aku menolaknya lagi dengan kata maaf dan maaf karena aku belum siap. Raut wajah Bram terlihat kecewa dengan jawabanku.
                “Dina, aku tidak mungkin menunggumu lagi. Umurku sudah tiga puluh tahun. Sebenarnya kamu itu suka padaku atau tidak??Sudah sepuluh tahun aku menunggumu!” Ujarnya kesal. “Aku sudah lelah menunggumu!” Dia pun beranjak pergi meninggalkan aku yang masih termangu memikirkan kata- katanya.
                Malam itu aku bermimpi melihat Bram menikah dengan wanita yang sangat cantik, rambutnya lurus sebahu, dia memakai gaun berwarna putih seperti yang di pakai Bram. Belum sempat aku mengetahui siapa wanita itu, aku sudah terbangun dan aku baru menyadari bahwa aku telah membohongi perasaanku selama ini bahwa sebenarnya aku sangat menyukai Bram, bahkan aku mencintainya.
                Paginya aku bergegas menemui Bram dirumahnya tapi rumahnya sepi. Aku menghubungi ponsel Bram tetapi tidak ada jawaban. Aku mencari ke kantornya bahkan ke tempat- tempat yang sering dia kunjungi tetapi hasilnya nihil. Air mataku mulai menggenang dipelupuk mata, satu persatu butiran air mata jatuh mengalir membasahi pipiku. Tangisku pecah. Aku tahu aku sudah terlambat. Bram marah padaku.
                Aku memutuskan mengunjungi Cafe di mana Bram sempat melamarku. Dan disinilah aku, mengenang kejadian beberapa hari yang lalu. Suara orang menarik kursi di depanku membuyarkan lamunanku.
                “Apa aku sedang bermimpi?” Tanyaku seperti orang bodoh. Dia hanya menggeleng. ”Kamu dari mana saja?Beberapa hari ini aku mencarimu kemana- mana.” Tanyaku dengan suara parau. Dia hanya tersenyum dan meletakkan tas carrier. Aku terteggun melihatnya, dia mengenakan celana army dan jaket parasut berwarna coklat yang kontras dengan kulitnya yang putih.
                “Maaf membuatmu khawatir. Aku kemarin ke Gunung  Sindoro.” Jawabnya singkat.
                “Bram maafkan aku. Selama ini aku salah. Aku membohongi perasaanku. Aku sadar bahwa aku sebenarnya sangat menyukaimu.”
                Bram tersenyum, menampakkan lesung pipinya. Dia mengambil sesuatu dari tas carriernya, setangkai bunga Edelweis berwarna putih. Dia memberikan bunga keabadian itu padaku dan kembali dia melamarku. Aku tidak bisa berkata- kata, aku hanya menganggukkan kepalaku. Dia pun memelukku erat. Dan di detik itu aku tahu siapa wanita yang menikah dengan Bram dimimpiku.

    note : mksh buad sseorang yg sudah mmberi inspirasi kpd qu..
    logo facebook 
    sumber gambar : wallpapers-diq.com

    Minggu, 04 Maret 2012

    Memberi Password pada File .zip /.rar



    Mengekstrak file menjadi RAR sangat tidak aman bila data tersebut  merupakan data penting bila tidak di beri password. Demi keamanan data maka perlu diberi password menggunakan WinRAR, dengan cara yang sangat mudah sebagai berikut:

    1. klik kanan pada file yang akan di-RAR, lalu pilih “add to archive”. Setelah itu pilih tab “advanced” dan pilih “set password” untuk memberi password                                      
    2. dalam pemberian password ada beberapa pilihan, yaitu “show password” agar pada waktu memberi password maka akan tampil masukkan password dan “Encrypt file names” agar nama dan format file yang di-RAR tidak dapat dilihat sebelum mengisikan password. Jika sudah klik ok.

    Sabtu, 03 Maret 2012

    Menciptakan FILE EXE dengan WinRAR

    Selain membuat file RAR dan ZIP, WinRAR juga mempunyai kemampuan untuk membuat file EXE. File EXE adalah file yang dapat dibuka secara langsung tanpa software tambahan. Berbeda dengan file RAR yang hanya dapat dibuka menggunakan WinRAR. Berikut adalah langkah untuk membuat file EXE:

    1. Klik kanan pada file yang akan dibuat EXE
    2. lalu pilih “add to archive”
    3. kemudian pada archiving option pilih “Create SFX archive”  
    4. kemudian masuk ke tab advanced lalu pilih “SFX option” 
    5. Pada menu ini anda dapat mengganti tampilan icon dan memberikan lisensi  
    6. untuk mengganti tampilan icon, anda tinggal pilih tab “text dan icon”. Sedangkan untuk memberikan lisensi anda tinggal pilih tab “lisensi”, jika sudah lalu pilih ok.

    Sabtu, 11 Februari 2012

    Creedence Clearwater Revival-Have You Ever Seen The Rain


    Creedence Clearwater Revival-Have You Ever Seen The Rain Lyrics

    Someone told me long ago There's a calm before the storm
    I know; It's been comin' for some time.
    When it's over so they say It'll rain a sunny day
    I know; Shinin' down like water.

    CHORUS:
    I want to know Have you ever seen the rain?
    I want to know Have you ever seen the rain
    Comin' down on a sunny day?

    Yesterday and days before Sun is cold and rain is hard
    I know; Been that way for all my time.
    'Til forever, on it goes Through the circle, fast and slow,
    I know; It can't stop, I wonder.

    CHORUS
    Yeah!
    CHORUS
    sumber : http://www.lyricsdepot.com