Pemberitahuan :

Maaf Atas Ketidak Nyamanan, Blog Ini Sedang Dalam PERBAIKAN !!

English French German Spain Italian Dutch Russian Portuguese Japanese Korean Arabic Chinese Simplified
Translate This Blog by JAS_Blog

Sep 5, 2012

Cara Dapat Uang Dengan Mudah Lewat Internet

Reactions: 
usaha milyarderPada kesempatan ini saya ingin sekali berbagi informasi ke seluruh tema-teman...
Ketika tadi saya Blogwalking... Hehehe maklum cari backlink.. saya bertemu dengan blog yang membahas mengenai Pekerjaan sampingan di Indonesia... saya tertarik dengan postingannya karena kita bisa dapat UANG dengan sangat mudah....

saya memberi komentar untuk cara mendaftarkan diri...


Naaah  kemudian saya mendapat balasan di kotak komentar di blog tersebut dan ada link yang menuju sebuah website statis.... ya website ini adalah website bisnis online asli indonesia.. kita masuk saja sudah di beri 5.000 rupiah.. memang sih sistemnya afiliasi tapi sangat menguntungkan kalau saya bilang.... namanya adalah Usaha Milyarder

Kenapa begitu..? Karena setiap orang yang menjadi afiliasi kita... kita akan mendapat earning sebesar "5000.000"... Hahahahah siapa aja juga mau gitu tuh.. bercanda.. yang benar adalah 5.000 rupiah teman-teman pembaca.. kita kalkulasikan saja deh kalau kita daftar dapet 5.000 kemudian dalam 1 bulan bisa mengajak sekitar 10 orang saja sudah jadi 50.000 di tambah komisi pendaftaran 5.000 tadi jadi 55.000 nah lumayanlah agan-agan untuk sampingan anak kos kayak saya ini....

Tapi ingat ya itu kan kalkulasi dengan afiliasi 10 orang... dalam 1 bulan bagi teman-teman yang punya website atau blog dengan jumlah pengunjung 300 orang sehari wah bisa dapet berapa orang ya...?? silahkan kalkulasikan sendiri ya.. hehehehe..

Masalah Payout.. Hmmm pasti kalau bisnis memang bayaran yang di cari.. di sini Payout untuk seorang afiliasi adalah 50.000 dan langsung di transfer ke rekening bank lokal teman-teman... nah disini yang saya suka... karena gak ribet.. gak harus pakek Liberty Reserve.. atau Paypal... apalagi kalau pakai Paypal yang belum terferifikasi aduuuh susah.. kalau pakai Rek. bank kan langsung sampai dan cepat prosesnya... untuk yang sudah berpengalaman cari 10 orang itu mah gampang banget.. kalau sudah 50.000 silahkan payout..

Website dengan bahasa Indonesia jadinya kalau ada apa-apa gampang.. silahkan saja daftar di sini.. atau klik GAMBAR di bawah ini.. karena kalau tidak pakai alamat referensi saya ini akan sedikit susah untuk dapat komisi 5.000 yang seperti saya dapat...


usaha milyarder

May 28, 2012

10 film hollywood terbaru 2012

Reactions: 

10 Film Hollywood Terbaru 2012, Film Popular, Box Office, Film Terbaik. Beberapa film yang layak ditunggu pada 2012.
1. The Dark Knight Rises
kelanjutan kisah Batman yang sudah lama ditunggu-tunggu. Kali ini menampilkan Tom Hardy sebagai Bane dan Anne Hathaway sebagai Catwoman. Tanggal rilis: 20 Juli 2012.
The Dark Knight Rises
2. THE HOBBIT: UNEXPECTED JOURNEY
THE HOBBIT: UNEXPECTED JOURNEY
Penggemar Lord of The Ring pasti akan menantikan film ini yang juga dibuat berdasarkan buku Tolkien. Sayang, rilisnya masih akhir tahun. Rilis: 14 Desember 2012.
3. THE AVENGER
THE AVENGER
Chris Evans sebagai Captain America, Robert Downey Jr. sebagai Iron Man, and Chris Hemsworth alias Thor dan superhero lainnya akan muncul dalam film ini. Rilis: 27 April 2012.
4. MEN IN BLACK 3
MEN IN BLACK 3
Masih dibintangi Will Smith, agen rahasia kembali mengatur kedamaian manusia dan alien. Sutradara Barry Sonnenfeld. Rilis: 25 Mei 2012
5. SKYFALL
SKYFALL
Aksi ke 23 James Bond dengan Berenice Marlohe sebagai pemanis. Rilis: 26 Oktober.
6.THE AMAZING SPIDERMAN
THE AMAZING SPIDERMAN
Film baru tentang si manusia laba-laba yang diperankan Andrew Garfield. Disebut-sebut sebagai film yang paling setia pada pakem asli komiknya. Mari kita bandingkan dengan trilogi Spidey yang diperankan Tobey Maguire. Rilis: 4 Juli
7. SNOW WHITE AND THE HUNTSMAN
SNOW WHITE AND THE HUNTSMAN
Lupakan citra Putri Salju yang lemah lembut. Film ini hadir dengan wajah dongeng yang gelap, dengan Charlize Theron sebagai ratu jahat dan Kristen Stewart sebagai sang putri. Rilis: 1 Juni
8. THE BOURNE LEGACY
THE BOURNE LEGACY
Banyak orang penasaran dengan akting Jeremy Renner yang menggantikan Matt Damon sebagai pemeran utama film ini. Rilis: 17 Agustus
9. War Horse
War Horse
War Horse adalah film yang disutradarai Steven Spielberg dan direncanakan akan rilis di Amerika Serikat pada 25 Desember 2011 dan di Inggris pada 13 Januari 2012. Cerita ini diambil dari novel War Horse, setingan waktu diambil ketika Perang Dunia I terjadi, oleh Michael Morpurgo, yang pertama kali diterbitkan di Inggris pada tahun 1982 dan 2007 mengalami perbaikan dengan menggunakan nama yang sama. Aktor yang ikut berperan dalam film ini antara lain David Thewlis, Benediktus Cumberbatch, Jeremy Irvine, Emily Watson, Tom Hiddleston dan Peter Mullan. Film ini diproduksi oleh Spielberg dan Kathlenn Kennedy, dengan Frank Marshall sebagai eksekutif produksinya dibantu oleh Revel Guest.
10. Impossible-Ghost Protocol
Impossible-Ghost Protocol
Film paling anyar Tom Cruise Mission: Impossible-Ghost Protocol mendapat sukses ganda. Selain menjadi pemuncak dalam box office pekan ini dengan raihan USD 46 juta (Rp417 miliar) di pasar AS dan Kanada, film tersebut mendapatkan review yang cukup bagus. Jumlah pendapatan di seluruh dunia lebih tinggi lagi. Film yang biasa disebut MI-4 tersebut meraih total USD 140 juta (Rp1,2 triliun). Paramount Pictures, distributor film tersebut, menyebut bahwa para penonton memberi rating A- sebagaimana dikutip dari CinemaScore. Di sisi lain, Rottentomatoes.com, salah satu situs kritikus paling bawel di internet, memberi rating 94 persen.

akhir kisah doraemon, sungguh mengharukan,…

Reactions: 


Siapa tak kenal Doraemon, serial kartun yang sejak tahun 1991 sampai sekarang selalu menghiasi minggu pagi anak-anak Indonesia. Doraemon adalah judul sebuah manga populer yang dikarang Fujiko F. Fujio sejak tahun 1969 dan berkisah tentang kehidupan seorang anak pemalas kelas 5 SD yang bernama Nobi Nobita yang didatangi oleh sebuah robot kucing bernama Doraemon yang datang dari abad ke-22. Dia dikirim untuk menolong Nobita agar keturunan Nobita dapat menikmati kesuksesannya daripada harus menderita dari utang finansial — yang akan terjadi di masa depan — yang disebabkan karena kebodohan Nobita.
Nobita, setelah gagal dalam ulangan sekolahnya atau setelah diganggu oleh Giant dan Suneo, akan selalu mendatangi Doraemon untuk meminta bantuannya. Doraemon kemudian biasanya akan membantu Nobita dengan menggunakan peralatan-peralatan canggih dari kantong ajaibnya; peralatan yang sering digunakan misalnya “baling-baling bambu” dan “Pintu ke Mana Saja”. Sering kali, Nobita berbuat terlalu jauh dalam menggunakan peralatannya dan malah terjerumus ke dalam masalah yang lebih besar.
Lalu timbul pertanyaan? Apakah Nobita akan terus menjadi anak kelas 5 SD dan cerita Doraemon ini akan begitu-begitu saja?
Karena pengarangnyanya sudah meninggal, pertanyaan ini pun tak bisa terjawab secara pasti. Namun di internet sudah lama beredar spekulasi tentang akhir cerita Doraemon ini. Berikut ini adalah salah satu versinya. (Dalam Komik yang diterjemahkan kedalam Bahasa Indonesia).















 


Ringkasan Cerita:
Diceritakan suatu hari, Nobita pulang ke rumah dan merengek-rengek mengadu ke Doraemon. Tapi tak lama, ia menyadari ada sesuatu yang salah dengan Doraemon; robot kesayangannya itu hanya diam dan tak menjawab keluhannya. Ia pun segera menelepon Dorami, adik Doraemon, dan meminta petunjuk darinya. Dorami kemudian memberi tahu bahwa baterai milik Doraemon habis. Lebih jauh lagi, Dorami menjelaskan bahwa robot kucing versi lama seperti Doraemon seharusnya memiliki cadangan baterai pendukung memori di bagian telinga, tetapi karena Doraemon telah kehilangan telinganya, ia tidak memiliki tenaga cadangan untuk menyimpan memori dan ingatannya. Satu-satunya cara untuk menghidupkan kembali Doraemon adalah dengan mengganti baterainya, namun itu berarti Doraemon akan kehilangan seluruh ingatan tentang diri dan kawan-kawannya; termasuk tentang Nobita.
Disaat bersamaan, polisi-waktu membuat peraturan baru dan melarang adanya “perjalanan waktu” dan menghalangi Nobita yang berusaha membawa Doraemon untuk diperbaiki di masa depan. Dorami kemudian memberikan pilihan: nekat menerobos polisi-waktu, memperbaiki Doraemon di masa depan dan menghapus ingatannya atau menunggu seseorang dari masa depan datang dan memperbaiki Doraemon; Nobita memilih cara kedua. Nobita —yang sangat kehilangan Doraemon— kemudian berjanji untuk belajar keras demi Doraemon.
Usaha Nobita berhasil, tiga tahun kemudian Nobita lulus SMA dengan nilai terbaik dan menjadi seseorang yang sangat populer di sekolahnya. Meskipun demikian, sifat Nobita yang ceria dan optimistik hilang, ia menjadi seorang kutubuku yang selalu menyendiri. Dua puluh sembilan tahun kemudian, diceritakan Dekisugi yang telah menjadi presiden Jepang, mengadakan reuni dengan Suneo dan Jaian. Ketiganya membahas mengenai masalah tentang “hilangnya” Doraemon dan tentang Time Paradox; sebuah teori yang menjelaskan bahwa sejarah dunia dapat berubah dengan diciptakannya mesin waktu. dan dari percakapan itulah terpapar alasan kenapa patroli waktu tak memberikan ijin nobita untuk memperbaiki Doraemon di masa depan, karena Nobita itu sendiri yang menciptakan Doraemon. Setelah diperbaiki, doraemon menjadi mempunyai telinga dan berwarna kuning, dipeluknya erat-erat Doraemon. Dan mereka hidup bahagia selamanya,….

Sumber

May 24, 2012

Microsoft luncurkan jejaring sosial

Reactions: 
Raksasa komputer Amerika, Microsoft, meluncurkan situs jejaring sosial yang disebut So.cl.

"So.cl merupakan sebuah proyek eksperimen yang dikembangkan FUSE Labs Microsoft," demikian pernyataan resmi dalam situs jejaring sosial itu.

So.cl fokus pada kemungkinan-kemungkinan pencarian sosial yang ditujukan sebagai pembelajaran.

"Kami mengharapkan para pelajar terus menggunakan produk-produk seperti Facebook, Twitter, LinkedIn ataupun jejaring sosial lain, seperti halnya Bing, Google, dan situs pencarian lain," sebut pengumuman resmi itu.

Pernyataan tersebut ditunjukkan So.cl dengan menggandeng sejumlah perguruan tinggi Amerika seperti University of Washington, Syracuse University, dan New York University.

Steven Musil dari CNET mengatakan So.cl tidak didesain menjadi penantang Facebook.

"So.cl tidak bermaksud mengganti fitur pencarian dan peralatan pendukung pada situs jejaring sosial yang ada," demikian disebut dalam pernyataan resmi itu.

Sebagai salah satu produk ciptaan Microsoft, So.cl didukung pula mesin pencari Bing.

"Kami menggunakan Bing untuk mencari data dengan API (application programming interface) publik, tapi ini bukan produk Bing," tulis pernyataan resmi itu. 


aku juga udah punya akunnya loh.... 

jangan lupa di follo yach disini

Sumber

Jan 30, 2012

Mempercepat Buffer Video

Reactions: 


Sekedar tips mengakali koneksi internet yaitu dengan hanya Menggunakan Tools Notepad,,Insya Allah anda bisa mempercepat Buffering Video di youtube atau dimana pun saja.

Berikut cara mempercepat buffering video tanpa software adalah:


•Klik Start ? RUN
•didalam box RUN,,tulis ? system.ini
Kemudian akan muncul notepad yang ada tulisannya
•Sekarang,,Copy Teks Dibawah ini,,Paste di bawah teks yang tadi
page buffer=1000000Tbps
load=1000000Tbps
download=1000000Tbps
save=1000000Tbps
back=1000000Tbps
search=1000000Tbps
sound=1000000Tbps
webcam=1000000Tbps
voice=1000000Tbps
faxmodemfast=1000000Tbps
update=1000000Tbps
jadinya seperti gambar dibawah ini
Simpan dan restar komputer anda dan lihat hasilnya. Semoga tips ini dapat bermanfaat bagi anda sekalian.

Semoga tips ini bermanfaat..

Menampilkan data berdasarkan pilihan di listbox pada PHP

Reactions: 




Alur Program :

  1. Buat koneksi ke database
  2. Buat Form
  3. Fungsi javascript
  4. Proses tampilkan data

Script Koneksi

<?php
$host=”localhost”;
$user=”root”;
$pass=”";
$db=”test”;
//koneksi
$koneksi=mysql_connect($host,$user,$pass);
mysql_select_db($db,$koneksi);
?>

Potongan Script Form

<td width=”241″>
<select multiple=”multiple” name=”id” id=”id” onChange=”pilih(this.value)”>
<?php
$query_limit=mysql_query(“select * from guestbook“);
while($row=mysql_fetch_array($query_limit))
{
?><option value=”<?php  echo $row['id_gb']; ?>”><?php  echo $row['nama']; ?></option><?php
}
?>
</select>
</td>
<td width=”195″ valign=”top”>
<select name=”id” id=”id” onChange=”pilih(this.value)“>
<option value=”0″ selected=”selected”>Pilih Nama</option>
<?php
$query_limit=mysql_query(“select * from guestbook”);
while($row=mysql_fetch_array($query_limit))
{
?><option value=”<?php  echo $row['id_gb']; ?>”><?php  echo $row['nama']; ?></option><?php
}
?>
</select>
</td>

Fungsi Javascript

<script languange=”Javascript1.2″>
function pilih(id){
location.replace(“list-ri32.php?id=”+id);
}
</script>

Script menampilkan data

<?php
include “conn.php”;
if($_GET['']!==”"){
$id=$_GET['id'];
$query=mysql_query(“select * from guestbook where id_gb=’$id’”);
?>
<table border=”1″>
<tr><th>No</th><th>Nama</th><th>Email</th><th>Pesan</th></tr>
<?php
while($row=mysql_fetch_array($query)){
?>
<tr><td><?php echo $c=$c+1;?></td><td><?php echo $row['nama'];?></td><td><?php echo $row['email']; ?></td><td><?php echo $row['pesan']; ?></td></tr>
<?php
}
?></table><?php
}
?>




Sekian artikel dari saya semoga bermanfaat :)

Cara buat pencarian dengan kategori dalam PHP

Reactions: 
Proses searching ini akan menggunakan dua file PHP :
  1. searching.php berisi form untuk melakukan pencarian berdasarkan tabel yang ada di database bukutamu
  2. searching_proses.php merupakan halaman selanjutnya ketika tombol go ditekan
searching.php
Tampilan searching.php
Kode lengkap searching.php :
</pre>
<h1>SEARCH</h1>
<table>
<tbody>
<tr>
<td>Search</td>
<td><select name="table"> <option value="-">--- table ---</option></select>
<select name="table"></select>
<select name="table"></select>
<select name="table"><option value="' . $tab.'">' . $tab . '</option></select>
<select name="table"></select>
<select name="table"></select></td>
<td><input type="text" name="keyword" size="20" maxlength="255" /></td>
<td><input type="submit" value="go" /></td>
</tr>
</tbody>
</table>
<pre>
Halaman ini berfungsi menampilkan tabel-tabel yang ada di database bukutamu dalam bentuk form select, disini kita akan memberikan kebebasan dalam melakukan pencarian terhadap tabel tertentu.
$tables = mysql_list_tables( $nama_db );
Pengambilan data tabel dari database dilakukan dengan menggunakan fungsi mysql_list_tables( $nama_db ) yang nilai baliknya akan disimpan dalam $tables dengan tipe variabel array.
while( list( $tab ) = mysql_fetch_array( $tables ) )
{
echo '' . $tab . '';
}
Dan nantinya variabel $tables akan ditelusuri jumlah nilai yang terkandung didalamnya menggunakan blok pengulangan while().
searching_proses.php
Tampilan searching_proses.php
Kode lengkap searching_proses.php
$server = 'localhost';
$user_db = 'root';
$password_db = '';
$nama_db = 'bukutamu';

$link = mysql_connect( $server, $user_db, $password_db ) or die( mysql_error() );
mysql_select_db( $nama_db ) or die( mysql_error() );

$table = $_REQUEST['table'];
$keyword = $_REQUEST['keyword'];

echo '</pre>
<h1>RESULT</h1>
<pre>
';

if( empty( $table ) || empty( $keyword ) || $table == '-' )
{
die('Tidak boleh ada kolom yang kosong
 <a href="searching.php">Kembali</a>');

}

$fields = mysql_list_fields( $nama_db, $table, $link );
$columns = mysql_num_fields( $fields );

echo '<a href="searching.php">Kembali</a>';
echo '</pre>
<div style="width: 100%; background-color: #cccccc;"> Searching <strong>';
echo $keyword . '</strong> from table <em>' . $table . '</em></div>
<pre>
';

for ( $i = 0; $i < $columns; $i++ ) {
$sql = 'select * from ' . $table.' where '.mysql_field_name( $fields, $i ) . ' like "%' . $keyword . '%"';
$query = mysql_query( $sql );
$row = mysql_fetch_row( $query );

if( !empty( $row ) ) {
echo '

';
echo '</pre>
<table>';for( $a = 0; $a < $columns; $a++ ) {echo '
<tbody>
<tr>';echo '
<td>' . mysql_field_name( $fields, $a ) . '</td>
';echo '
<td>' . preg_replace( "/$keyword/i", '<span style="background-color: yellow;">' . $keyword . '</span>', $row[$a] ) . '</td>
';echo '</tr>
';}echo '</tbody>
</table>
<pre>
';
echo '

';
}
}
?>
Meskipun hanya satu file namun saya yakin bagi yang baru belajar PHP logika kode diatas cukup untuk membuat pusing untuk beberapa hari he.he. Tapi setelah menguasainya logika pemrograman pasti lebih tajam. searching_proses.php berisi blok syntax highlighter alias penyorot teks sehingga hasil pencarian yang sama dengan kata kunci akan disorot seolah-olah telah di-stabilo.
Akhirnya tutorial pengantar dalam belajar PHP membuat buku tamu sederhana telah selesai. Semoga membantu dalam mengawali pembelajaran bahasa pemrograman PHP
Langkah selanjutnya adalah perbaiki dan tambah fitur dalam buku tamu ini untuk meningkatkan kemampuan PHP anda, contoh sederhana :
  • Satukan semua kode dalam sebuah website dengan navigasi yang konsisten dengan susunan menu seperti Home | Bukutamu | about
  • Tambah informasi lain pada user, seperti nama, tgl lahir, tgl daftar, dll
  • Gunakan include() atau require() sehingga blok koneksi ke database tidak perlu berkali-kali ditulis.
  • Supaya lebih interaktif kambah kolom balasan sehingga memungkinkan anda atau pengguna melakukan komentar balasan terhadap sebuah komentar.
  • Tambahkan pagination atau pengaturan halaman <<first <prev 1 | 2 |3 next> last>>, jadi kalau komentarnya ada 100 tampilkan 10 komentar perhalamannya
  • Get improvise, anda punya potensi besar dalam mencetuskan ide sendiri ;-)

Membuat Kuis atau Ujian Online

Reactions: 

Pada tutorial kali ini kita akan membuat kuis atau ujian online dengan menggunakan jQuery, javascript timer dan PHP. Pada Kuis online ini kita akan menampilkan pertanyaan dan pilihan-pilihan jawaban dari database MySQL menggunakan efek-efek jquery. Kuis online ini juga ada timer, di sini kita memanfaatkan javascript cookies untuk mencatat timer, yang berguna untuk mencegah user mengembalikan nilai timer dengan refresh. Jadi walaupun direfresh, waktu nya tetap jalan, tidak kembali ke semula. Jika waktu habis, otomatis kuis selesai dan melakukan penghitungan jawaban yang benar.


    Membuat tabel banksoal di MySQL


    CREATE TABLE `banksoal` (
      `soalid` int(5) NOT NULL auto_increment,
      `topik` tinytext NOT NULL,
      `pertanyaan` text NOT NULL,
      `pilihan_a` tinytext NOT NULL,
      `pilihan_b` tinytext NOT NULL,
      `pilihan_c` tinytext NOT NULL,
      `pilihan_d` tinytext NOT NULL,
      `jawaban` varchar(1) NOT NULL,
      PRIMARY KEY  (`soalid`)
    ) 
    

    Membuat form untuk tulis nama user dan pemilihan topik pertanyaan

    index.php
    <html>
    <head>
    <title>Kuis Online</title>
    </head>
    <body bgcolor="#FFFFCC"  onunload=keluar()>
    <center>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <form action="soal.php" method="get">
    Nama: <br>
    <input type=text name=nama><p>
    Jenis soal: <br>
    <select name="topik">
    <?php
    include "koneksi.php";
    $topik = mysql_query("SELECT DISTINCT topik FROM banksoal");
    while($t = mysql_fetch_array($topik)){
        echo "<option>".$t['topik']."</option>\n";
    }
    ?>
    </select>
    <p>
    <input type=submit value="mulai">
    </body>
    </html>
    

    Mengambil pertanyaan menggunakan ajax jquery json

    soal.php

    topik = $("#divtopik").html();
    url = "ambilsoal.php?topik="+topik
    $.ajax({
        url: url,
        dataType: 'json',
        cache: false,
        success: function(msg){
            topik = msg;
            setinputpilihan();
            setinputjawaban()
            tampilkan();
            mainkanwaktu();
        }
    });
    
    topik kita ambil dari <div id="divtopik"> yang nilainya kita ambil dari form index.php
    setinputpilihan(), adalah fungsi untuk meng-generate <input type=hidden name="pilihan[]"> yang nanti berguna untuk menampung jawaban-jawaban yang dipilih oleh user.
    setinputjawaban(), adalah fungsi untuk meng-generate <input type=hidden name="jawaban[]"> yang nanti berguna untuk meletakkan jawaban tiap pertanyaan.
    setinputpilihan() dan setinputjawaban() berguna untuk pengolahan di PHP untuk menghitung jawaban.

    Meng-generate json data pertanyaan dan pilihan jawaban dari MySQL menggunakan PHP

    ambilsoal.php

    <?php
    include "koneksi.php";
    $topik = $_GET['topik'];
    $data = mysql_query("SELECT * FROM banksoal WHERE topik='$topik'");
    
    $json = '{"soal":[ ';
    while($x = mysql_fetch_array($data)){
        $json .= '{';
        $json .= '"id":"'.$x['soalid'].'",
            "topik":"'.htmlspecialchars($x['topik']).'",
            "pertanyaan":"'.htmlspecialchars($x['pertanyaan']).'",
            "a":"'.$x['pilihan_a'].'",
            "b":"'.$x['pilihan_b'].'",
            "c":"'.$x['pilihan_c'].'",
            "d":"'.$x['pilihan_d'].'",
            "jawaban":"'.$x['jawaban'].'"
        },';
    }
    $json = substr($json,0,strlen($json)-1);
    $json .= ']';
    
    $json .= '}';
    echo $json;
    
    ?>
    
    Jika kita running, akan membentuk data form json seperti berikut:

    {"soal":[
        {
        "id":"1",
        "topik":"internet",
        "pertanyaan":"Website paling populer di dunia?",
        "a":"google.com",
        "b":"facebook.com",
        "c":"yahoo.com",
        "d":"kaskus.us",
        "jawaban":"a"
        },{
        "id":"2",
        "topik":"internet",
        "pertanyaan":"Pencipta PHP",
        "a":"Bill Gates",
        "b":"Steve Jobs",
        "c":"Rasmus Lerdorf",
        "d":"Larry Page",
        "jawaban":"c"
        }
        ]
    }
    

    Menjalankan timer

    Berikut adalah fungsi untuk membuat countdown

    var totalwaktu = 20; //batas waktu pengerjaan semua soal
    
    function mainkanwaktu(){
        if(totalwaktu>0){
            $("#divtotalwaktu").html(totalwaktu);
            totalwaktu--;
            timer = setTimeout("mainkanwaktu()",1000);
        }else{
            clearTimeout(timer);
            habis = 1;
            document.getElementById("formulir").submit();
        }
    }
    
    document.getElementById("formulir").submit(); berguna jika waktu sudah habis maka kita langsung mensubmit form

    Memasukkan dan mengecek waktu di javascript cookies


    function getCookie(c_name){
        if (document.cookie.length>0){
            c_start=document.cookie.indexOf(c_name + "=");
            if (c_start!=-1){
                c_start=c_start + c_name.length+1;
                c_end=document.cookie.indexOf(";",c_start);
                if (c_end==-1) c_end=document.cookie.length;
                return unescape(document.cookie.substring(c_start,c_end));
            }
        }
        return "";
    }
    
    function setCookie(c_name,value,expiredays){
        var exdate=new Date();
        exdate.setDate(exdate.getDate()+expiredays);
        document.cookie=c_name+ "=" +escape(value)+((expiredays==null) ? "" : ";expires="+exdate.toGMTString());
    }
    
    function checkCookie(){
        totalwaktucookies=getCookie('waktucookies');
        if (totalwaktucookies!=null && totalwaktucookies!=""){
            totalwaktu = totalwaktucookies;
        }else{
            setCookie('waktucookies',totalwaktu,7);
        }
    }
    
    Jika user refresh, maka kita masukkan nilai totalwaktu ke cookies, cara mendeteksinya adalah dengan deteksi event onunload, kita pasang di tag <body onunload="keluar()">
    berikut adalah kode fungsi keluar(), yang berfungsi memasukkan nilai totalwaktu yang sedang berjalan ke cookies

    function keluar(){
        if(habis==0){
            setCookie('waktucookies',totalwaktu,7);
        }else{
            setCookie('waktucookies',0,-1);
        }
    }
    

    Menampilkan pertanyaan dan pilihan jawaban


    function tampilkan(){
        if(indexsoal<topik.soal.length){
            nomorsoal = indexsoal + 1;
            $("#divnomor").html("Soal "+nomorsoal+" dari "+ topik.soal.length);
            $("#divpertanyaan").html(topik.soal[indexsoal].pertanyaan);
            $("#divpertanyaan").fadeIn(2000);
            $("#jawaban_a").html("<input type='radio' onclick='setnilai(this.value)' name='R"+indexsoal+"'value='a'>A. "+topik.soal[indexsoal].a);
            $("#jawaban_b").html("<input type='radio' onclick='setnilai(this.value)' name='R"+indexsoal+"'value='b'>B. "+topik.soal[indexsoal].b);
            $("#jawaban_c").html("<input type='radio' onclick='setnilai(this.value)' name='R"+indexsoal+"'value='c'>C. "+topik.soal[indexsoal].c);
            $("#jawaban_d").html("<input type='radio' onclick='setnilai(this.value)' name='R"+indexsoal+"'value='d'>D. "+topik.soal[indexsoal].d);
            $("#divoption").slideDown(750);
        }else{
            habis = 1;
            document.getElementById("formulir").submit();
        }
    }
    

    Menghitung hasil kuis

    nilaiakhir.php

    <?php
    echo "Nama: ".$_POST['nama']."<br>";
    $jumlahbenar = 0;
    $i = 1;
    foreach($_POST['pilihan'] as $key => $value){
        if($value == $_POST['jawaban'][$key]){
            $j = "benar";
            $jumlahbenar++;
        }else{
            $j = "<font color='red'>salah</font>";
        }
        echo "No $i : $value ($j)<br>";
        $i++;
    }
    echo "Jumlah benar = $jumlahbenar";
    ?>
    

    Kode lengkapnya

    Untuk kode lengkapnya silahkan download source code,
    Untuk kuis online sederhana tanpa ajax dan konversi timer dalam menit dan detik, silahkan dowload di sini

    untuk sementara kode lengkapnya sedang diperbaiki ... mohon maaf atas ketidaknyamanaannya....
    Sumber >>>>>>> http://blog.codingwear.com/read32-Membuat-Kuis-atau-Ujian-Online-Ajax.drz (BLOG SUDAH MATI)

    Membuat Login Multi User dengan PHP

    Reactions: 
    Saat ini banyak CMS atau juga situs-situs komunitas memiliki multi user, yang mempunyai tingkatan level yang berbeda-beda juga. Misalnya ada level admin, ada level user, yang mempunyai hak akses yang berbeda-beda.
    Konsep untuk membuat login multi user adalah :

    1. Buat tabel user di database yang menyimpan data level masing-masing user
    2. Ketika login kita simpan level user yang login ke dalam variabel $_SESSION
    3. Ketika user masuk ke suatu halaman, cek apakah user sudah login dan cek level user tersebut
    Sekarang mari kita lihat contoh tabel user di database dan kode PHPnya. Misal kita punya banyak halaman, di mana halaman-halaman tersebut mempunyai hak akses yang berbeda-beda. Contoh halaman-halaman web yang kita punya :
    File / Halaman Web Yang Boleh Akses
    homeadmin.php admin
    homeuser.php user
    halaman1.php admin
    halaman2.php admin dan user
    halaman3.php user
    Berikut adah struktur tabeluser di database :

    1-- 
    2-- Table structure for table `tabeluser` 
    3-- 
    4 
    5CREATE TABLE `tabeluser` ( 
    6  `userid` varchar(20) NOT NULL, 
    7  `password` varchar(50) NOT NULL, 
    8  `level` varchar(15) NOT NULL, 
    9  PRIMARY KEY  (`userid`) 
    10) ENGINE=InnoDB DEFAULT CHARSET=latin1; 


    Pertama-tama mari kita buat halaman untuk login. index.php


    1<html> 
    2<head><title>Login</title></head> 
    3<body> 
    4<h2>Halaman Login</h2> 
    5<form action="log.php?op=in" method="post"
    6User ID : <input type="text" name="userid"><br> 
    7Password : <input type="password" name="psw"><br> 
    8<input type="submit" value="Login"
    9</form> 
    10</body> 
    11</html> 


    Pada halaman login di atas terdapat action berupa file log.php

    1<?php 
    2session_start(); 
    3mysql_connect("localhost","root",""or die("Nggak bisa koneksi"); 
    4mysql_select_db("test");//sesuaikan dengan nama database anda 
    5 
    6$userid = $_POST['userid']; 
    7$psw = $_POST['psw']; 
    8$op = $_GET['op']; 
    9 
    10if($op=="in"){ 
    11    $cek = mysql_query("SELECT * FROM tabeluser WHERE userid='$userid' AND password='$psw'"); 
    12    if(mysql_num_rows($cek)==1){//jika berhasil akan bernilai 1 
    13        $c = mysql_fetch_array($cek); 
    14        $_SESSION['userid'] = $c['userid']; 
    15        $_SESSION['level'] = $c['level']; 
    16        if($c['level']=="admin"){ 
    17            header("location:homeadmin.php"); 
    18        }else if($c['level']=="user"){ 
    19            header("location:homeuser.php"); 
    20        } 
    21    }else
    22         die("password salah <a href=\"javascript:history.back()\">kembali</a>"); 
    23    } 
    24}else if($op=="out"){ 
    25    unset($_SESSION['userid']); 
    26    unset($_SESSION['level']); 
    27    header("location:index.php"); 
    28
    29?> 


    Pada kode log.php tersebut pertama-tama kita cek ke dalam tabeluser apakah ada userid dan password yang cocok. Jika ada maka kita set variabel $_SESSION['userid'] dan $_SESSION['level'], di mana nilai dari variabel session tersebut kita ambil dari database. Jika level user adalah admin maka langsung kita arahkan ke halaman homeadmin.php. Jika level user adalah user, maka kita arahlan ke halaman homeuser.php
    Berikut adalah kode homeadmin.php


    1<?php 
    2session_start(); 
    3 
    4//cek apakah user sudah login 
    5if(!isset($_SESSION['userid'])){ 
    6    die("Anda belum login");//jika belum login jangan lanjut.. 
    7
    8 
    9//cek level user 
    10if($_SESSION['level']!="admin"){ 
    11    die("Anda bukan admin");//jika bukan admin jangan lanjut 
    12
    13?> 
    14 
    15<html> 
    16<head><title>Halaman Admin</title></head> 
    17<body> 
    18<?php echo "<h3>Welcome ".$_SESSION['userid']."</h3>";?> 
    19Menu : 
    20<a href=halaman1.php>Halaman 1</a> | 
    21<a href=halaman2.php>Halaman 2</a> | 
    22<a href=log.php?op=out>Log Out</a> 
    23 
    24</body> 
    25</html> 


    Pada kode di atas untuk mengecek apakah user sudah login atau belum adalah dengan menggunakan kode if(!isset($_SESSION['userid'])), artinya jika user belum login, yang ditandai dengan telah diset-nya variabel $_SESSION['userid']. Jika ternyata belum login maka kita stop sampai disitu dengan menggunakan fungsi die().
    Jika user ternyata sudah login maka kita cek tingkatan level user. Kode $_SESSION['level']!="admin") berarti jika level tidak sama dengan admin, maka stop atau die().
    Sekarang mari kita lihat kode homeuser.php


    1<?php 
    2session_start(); 
    3 
    4//cek apakah user sudah login 
    5if(!isset($_SESSION['userid'])){ 
    6    die("Anda belum login");//jika belum login jangan lanjut.. 
    7
    8 
    9//cek level user 
    10if($_SESSION['level']!="user"){ 
    11    die("Anda bukan user");//jika bukan user jangan lanjut 
    12
    13?> 
    14 
    15<html> 
    16<head><title>Halaman User</title></head> 
    17<body> 
    18<?php echo "<h3>Welcome ".$_SESSION['userid']."</h3>";?> 
    19Menu : 
    20<a href=halaman2.php>Halaman 2</a> | 
    21<a href=halaman3.php>Halaman 3</a> | 
    22<a href=log.php?op=out>Log Out</a> 
    23 
    24</body> 
    25</html> 


    halaman1.php

    1<?php 
    2session_start(); 
    3 
    4//cek apakah user sudah login 
    5if(!isset($_SESSION['userid'])){ 
    6    die("Anda belum login");//jika belum login jangan lanjut.. 
    7
    8 
    9//cek level user 
    10if($_SESSION['level']!="admin"){ 
    11    die("Anda bukan admin");//jika bukan admin jangan lanjut 
    12
    13?> 
    14 
    15<html> 
    16<head><title>Halaman Admin</title></head> 
    17<body> 
    18<?php echo "<h3>Welcome ".$_SESSION['userid']."</h3>";?> 
    19 
    20<h4>Ini Halaman 1</h4> 
    21 
    22</body> 
    23</html> 


    halaman2.php

    1<?php 
    2session_start(); 
    3 
    4//cek apakah user sudah login 
    5if(!isset($_SESSION['userid'])){ 
    6    die("Anda belum login");//jika belum login jangan lanjut.. 
    7
    8 
    9//cek level user 
    10if($_SESSION['level']!="admin" && $_SESSION['level']!="user"){ 
    11    die("Anda bukan admin");//jika bukan admin dan user jangan lanjut 
    12
    13?> 
    14 
    15<html> 
    16<head><title>Halaman Admin dan User</title></head> 
    17<body> 
    18<?php echo "<h3>Welcome ".$_SESSION['userid']."</h3>";?> 
    19 
    20<h4>Ini Halaman 2</h4> 
    21 
    22</body> 
    23</html> 


    halaman3.php

    1<?php 
    2session_start(); 
    3 
    4//cek apakah user sudah login 
    5if(!isset($_SESSION['userid'])){ 
    6    die("Anda belum login");//jika belum login jangan lanjut.. 
    7
    8 
    9//cek level user 
    10if($_SESSION['level']!="user"){ 
    11    die("Anda bukan user");//jika bukan user jangan lanjut 
    12
    13?> 
    14 
    15<html> 
    16<head><title>Halaman User</title></head> 
    17<body> 
    18<?php echo "<h3>Welcome ".$_SESSION['userid']."</h3>";?> 
    19 
    20<h4>Ini Halaman 3</h4> 
    21 
    22</body> 
    23</html> 


    Download Source Code

    Sumber >>>>>> http://blog.codingwear.com/read19-Membuat-Login-Multi-User-dengan-PHP.drz

    Cara menghilangkan GENUINE WINDOWS XP

    Reactions: 


    Pada umumnya user banyak yang menggunakan win XP bajakan, user yang menggunakan win XP bajakan suatu saat akan dihadapkan dengan hal seperti ini.....,hal ini mungkin terjadi dikarenakan user lupa mematikan sistem update yang ada pada win XP. Pada saat user bemain di dunia maya sistem update akan secara otomatis meng-update win XP. Inilah tips cara menghilangkan genuine win XP.

    Ikuti langkah-langkah berikut :
    ==================
    1. Buka Task Manager dengan Ctrl+Alt+Del
    2. Matikan proses yang bernama “wgatray.exe
    3. Restart/reboot komputer dan masuklah ke dalam safe mode
    4. Pada safe mode, buka registry editor ato regedit melalui menu Run. Ketik regedit kemudian enter
    5. Pada regedit, carilah hkey_local_mechine/software/microsoft/windowsNT/CurrentVersion/Winlogon/Notify, 
    kemudian hapus folder/directory “wgaLogon
    6. Restart kembali komputer anda
    Langkah 1-6 diatas sudah cukup mengatasi genuine win XP, tapi jika kita benar-benar ingin kupas tuntas sampai ke akar-akarnya. Hapus file-file berikut ini:
    C:WINDOWSsystem32WgaLogon.dll
    C: WINDOWSsystem32WgaTray.exe
    C:WINDOWSsystem32LegitCheckControl.dll
    Untuk menghapus file tersebut, restart komputer terlebih dahulu. setelah direstart, baru dihapus.

    Langkah terakhir anda harus matiin yang namanya automatic update nya
    Semoga bermanfaat.............,

    Setting Dial-Up Modem Hp GSM dan CDMA

    Reactions: 



    Pada saat ini hampir semua operator telephone selular di Indonesia menyediakan layanan koneksi internet baik itu GSM atau CDMA, selain di wap browser (standar browser untuk handphone), tentu juga bisa di komputer. Untuk di komputer harus dibuatkan setting dialup connection terlebih dahulu, dengan parameter disesuaikan operator selular yang kita pakai.

    Berikut adalah settingnya untuk tiap-tiap operator
    -------------------------------------------------
    1. Telkomsel Flash – Halo/Simpati/As (Waktu)
    Dial Up Number : *99***1#
    User Name :
    Password :
    Access Point : FLASH
    Extra Setting : at+cgdcont=1,”IP”,”flash”

    2. Telkomsel GPRS – Halo/Simpati/As (Data)
    Dial Up Number : *99***1#
    User Name : wap
    Password : wap123
    Access Point : TELKOMSEL
    Extra Setting : at+cgdcont=1,”IP”,”internet”


    3. Indosat – Matrix – (Data)
    Dial Up Number : *99***1#
    User Name :
    Password :
    Access Point : www.satelindogprs.com
    Extra Setting : at+cgdcont=1,”IP”,” www.satelindogprs.com”


    4. Indosat – Mentari – (Data)
    Dial Up Number : *99***1#
    User Name : indosat
    Password : indosat
    Access Point : www.satelindogprs.com
    Extra Setting : at+cgdcont=1,”IP”, www.satelindogprs.com”

    5. Indosat – IM3 – (Data)
    Dial Up Number : *99***1#
    User Name : gprs
    Password : im3
    Access Point : www.indosat-m3.net
    Extra Setting : at+cgdcont=1,”IP”,”www.indosat-m3.net”


    6. Indosat – IM3 – (Waktu)
    Dial Up Number : *99***1#
    User Name : indosat@durasi
    Password : indosat@durasi
    Access Point : www.indosat-m3.net
    Extra Setting : at+cgdcont=1,”IP”,” www.indosat-m3.net”

    7. XL – Xplor/Bebas/Jempol (Data)
    Dial Up Number : *99***1#
    User Name : xlgprs
    Password : proxl
    Access Point : www.xlgprs.net
    Extra Setting : at+cgdcont=1,”IP”,”www.xlgprs.net”

    8. Telkom Flexi – Classy/Trendy (Data)
    Dial Up Number : #777
    User Name : telkomnet@flexi
    Password : telkom
    Access Point :
    Extra Setting : at+crm=1

    9. Telkom Flexi – Classy/Trendy (Waktu)
    Dial Up Number : 080989999
    User Name : telkomnet@instan
    Password : telkom
    Access Point :
    Extra Setting : at+crm=0

    10. Mobile 8 – Fren
    Dial Up Number : #777
    User Name : m8
    Password : m8
    Access Point :
    Extra Setting :

    11. Starone
    Dial Up Number : #777
    User Name : starone
    Password : indosat
    Access Point :
    Extra Setting :

    12. Esia (Waktu)
    Dial Up Number : #777
    User Name : esia
    Password : esia
    Access Point :
    Extra Setting :

    Fungsi Jumper

    Reactions: 
    Jumper pada sebuah komputer sebenarnya adalah connector (penghubung) sirkuit elektrik yand digunakan untuk menghubungkan atau memutus hubungan pada suatu sirkuit. Jumper juga digunakan untuk melakukan setting pada papan elektrik seperti motherboard komputer.

    Baiklah kita fokuskan sebuah
    Jumper pada sebuah komputer. Fungsi Jumper ini dalam komputer digunakan untuk menyetting perlengkapan komputer sesuai dengan keperluan. Beruntunglah kita yang pada saat ini penyettingan lewat Jumper sudah mulai berkurang penggunaannya. Sebab, semua fungsi setting saat ini sudah menggunakan outo setting sehingga memudahkan pengguna atau perakit komputer untuk tidak banyak menggunakan Jumper.

    Jumper
    pada komputer biasanya digunakan pada Motherboard, Harddisk dan Optical Disk, dan pada beberapa VGA Card tertentu. Tetapi karena penggunaannya lebih banyak pada Motherboard dan Harddisk serta Optical Disk, maka kita hanya akan membahas ketiga hal itu.


    1. Jumper Clear CMOS
    Jumper CMOS biasanya terletak di dekat Baterai CMOS. Biasanya terdapat 3 kaki (pin) pada jumper ini. Fungsinya adalah untuk menyimpan dan me-reset CMOS (sebuah IC program pada Motherboard) pada posisi default (Setting Awal/Pabrik).
    Biasanya pada pin ke 1 dan 2 bila dihubungkan dengan sebuah Jumper maka CMOS pada posisi normal akan menyimpan setiap settingan yang kita ubah pada CMOS/BIOS. Dan bila Jumper kita ubah pada posisi 2 dan 3, maka komputer akan kembali pada posisi default.
    Lalu untuk apa posisi default? Tentu saja, bila kita melakukan setting yang salah terhadap CMOS / BIOS maka bila terjadi kesalahan yang mengakibatkan komputer tidak bisa hidup, maka dengan melakukan Clear CMOS komputer akan kembali ke posisi awal sebelum kita melakukan perubahan pada CMOS / BIOS.

    Begitu pula Jumper Clear CMOS ini bisa digunakan bila komputer tidak bisa hidup akibat kita lakukan perubahan pada hardware, misalnya processor, tetapi karena CMOS/BIOS anda telah menyimpan setting pada komputer yang lama dan tidak mampu membaca processor yang baru saja anda gantikan maka Jumper ini bisa anda gunakan.


    Jumper ini juga digunakan bila anda lupa pada password yang anda buat di BIOS. Dengan melakukan Clear CMOS, maka password yang anda buat akan hilang dengan sendirinya


    2. Jumper Bus Clock/Bus Speed
    Jumper ini berfungsi untuk menyeting Bus Clock pada processor. Pada saat ini, hampir bisa dibilang  jumper ini jarang digunakan. Fungsi setting yang tadinya diatur oleh jumper sekarang sudah dibuat auto atau bisa disetting lewat BIOS.

    Pada gambar disamping ini adalah salah satu contoh dari komputer Pentium I, yang terdiri dari Bus 50, 55, 60, 66 dan 75. Bus ini terdapat pada processor. Disetiap Bus yang kita pilih, ada petunjuk mengenai penggunaan jumpernya

    3. Jumper Bus Ratio
    Seperti halnya jumper Bus Clock/FSB, jumper ini pun bisa dibilang sudah tidak dipergunakan kembali. Jumper ini adalah ratio perkalian dari processor. Misalnya processor Pentium I 133 MHz dengan Bus/FSB 66, maka Rationya adalah 2x. Maka kita melakukan setting sesuai dengan petunjuk yang terdapat pada keterangan baik di Motherboard maupun buku manual.
     
    4. Jumper VGA
    Jumper ini biasanya terdapat pada Motherboard yang menyediakan VGA onboard beserta Slot VGA sebagai tambahan. Jumper VGA biasanya terdiri dari 3 kaki/pin yang digunakan untuk memilih apakah yang digunakan VGA onboard nya atau Slot VGA. Sama seperti  jumper bus clock, jumper ini sudah jarang dipergunakan dan diganti dengan auto setting, sehingga tanpa melakukan setting apapun, VGA akan memilih sendiri yang mana yang dipergunakan

    5. Jumper Audio 

    Jumper Sound, adalah jumper yang dipergunakan untuk mengaktifkan suara. Jumper ini biasanya terdiri dari 10 pin berjejer dengan pin nomor 8 kosong. Bila anda mengaktifkan Audio di depan Casing, maka otomatis, soket Audio di casing telah mengaktifkan jumper Audio ini. Tapi bila tidak, persiapkanlah sebuah jumper untuk menghubungkan pin nomor 5 dan 6, juga pin nomor 9 dan 10, sebab bila tidak suara tidak akan keluar sekalipun driver telah masuk. Dan kejadian ini sering terjadi dimana Audio tidak bisa terdengar dan orang yang tidak mengerti akan kebingungan dan mengira Sound onboard dari Motherboard anda mati.

    6. Jumper USB
    Power
    Anda pernah mengalami kejadian USB anda tidak bisa berfungsi? atau berfungsi hanya di Windows? Tidak di DOS (misalnya dengan penggunaan Keyboard USB)? Mungkin anda tidak mengaktifkan Jumper USB Power.

    Jumper ini ada di hampir semua Motherboard yang memiliki USB Socket. Jumper ini terdiri dari 3 kaki/pin. Bila tidak dipasang, maka USB anda tidak akan berfungsi. Bila di pasang pada salah satu kaki, misalnya pin 1 dengan pin 2 atau pin 2 dengan pin 3, maka akan punya pengaruh yang berbeda. Yang satu tidak akan bisa mengaktifkan USB di DOS.


    7. Jumper Memory / RAM

    Jumper ini biasanya terdapat pada Motherboard yang memiliki fasilitas 2 jenis Slot memory, misalnya Motherboard yang memiliki slot memory SDRAM dan DDR1, atau DDR1 dengan DDR2, maka untuk memilih salah satu slot diperlukan setting jumper memory

    8. Jumper pada Harddisk atau Optical Disk (CDRom, DVD, dll)




    Jumper pada Harddisk dan Optikal Disk biasanya untuk menentukan status pada harddisk atau optical disk. Status pada harddisk / optical disk apakah dia akan menjadi Master (tuan) atau Slave (budak)

    Hal ini penting di perhatikan tatkala kita melakukan tundem (penggabungan harddisk dengan harddisk, atau harddisk dengan optical disk pada satu kabel). Bila status sama-sama master, maka keduanya tidak akan terdeteksi oleh Motherboard. Karena itu yang satu harus menjadi Master (tuan) dan yang satu menjadi Slave (budak).

    Pada Motherboard tertentu, status Slave (budak) pada harddisk tunggal (tanpa melakukan tundem) tidak akan dapat di deteksi oleh Motherboard.

    Mengenai keterangan status Master dan Slave bisa di dapat pada label yang terdapat di harddisk

            

    Script PHP Upload Download File Via Folder

    Reactions: 
    Pada artikel kali ini, saya akan mencoba memaparkan secara keseluruhan bagaimana ide membuat script PHP untuk upload file ke dalam folder, disertai dengan script untuk downloadnya.


    Untuk keperluan pembuatan script ini, kita butuh sebuah database untuk menyimpan properti dari file yang diupload.

    CREATE TABLE upload (
      id int(11) auto_increment,
      name varchar(30),
      type varchar(30),
      size int(11),
      PRIMARY KEY  (id)
    )
    

    Field ‘id’ digunakan untuk menyimpan nomor id dari file. Nomor id ini nanti digunakan sebagai acuan untuk proses download dan hapus file. Field ‘name’ untuk menyimpan nama file, ‘type’ untuk menyimpan tipe file apakah termasuk file image (gif, jpeg, atau bmp), atau file tipe lain. Field ‘size’ terkait dengan ukuran dari file (dalam satuan bytes).

    Langkah pertama dalam pembuatannya adalah, kita siapkan terlebih dahulu form untuk upload filenya.

    form.html

    <form enctype="multipart/form-data" action="upload.php" method="POST">
        <input type="hidden" name="MAX_FILE_SIZE" value="3000000" />
        Pilih File: <input name="userfile" type="file" />
        <input type="submit" value="Upload" />
    </form>
    

    Form di atas, misalkan kita batasi size maksimum file yang diupload adalah 3MB.

    Hasil dari form di atas adalah seperti pada gambar di bawah ini

    Photobucket

    Selanjutnya, kita buat script upload.php nya. Sebelumnya, misalkan kita asumsikan file yang diupload nantinya kita taruh ke dalam folder yang namanya ‘data’.

    upload.php

    <?php
    
    // setting nama folder tempat upload
    $uploaddir = 'data/';
    
    // membaca nama file yang diupload
    $fileName = $_FILES['userfile']['name'];     
    
    // nama file temporary yang akan disimpan di server
    $tmpName  = $_FILES['userfile']['tmp_name']; 
    
    // membaca ukuran file yang diupload
    $fileSize = $_FILES['userfile']['size'];
    
    // membaca jenis file yang diupload
    $fileType = $_FILES['userfile']['type'];
    
    // koneksi ke mysql
    mysql_connect('dbhost','dbuser','dbpass');
    mysql_select_db('dbname');
    
    // menyimpan properti atau informasi file ke tabel upload dalam db
    // dengan terlebih dahulu mengecek ada tidaknya nama file dalam tabel
    
    $query = "SELECT count(*) as jum FROM upload WHERE name = '$fileName'";
    $hasil = mysql_query($query);
    $data  = mysql_fetch_array($hasil);
    
    if ($data['jum'] > 0)
    {
       $query = "UPDATE upload SET size = '$fileSize' WHERE name = '$fileName'";
    }
    else $query = "INSERT INTO upload (name, size, type) VALUES ('$fileName', '$fileSize', '$fileType')";
    
    mysql_query($query);
    
    // menggabungkan nama folder dan nama file
    $uploadfile = $uploaddir . $fileName;
    
    // proses upload file ke folder 'data'
    if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
        echo "File telah diupload";
    } else {
        echo "File gagal diupload";
    }
    
    ?>
    

    Perhatikan script di atas. Dalam script di atas terdapat antisipasi seandainya file yang diupload memiliki nama yang sama. Proses uploadnya sendiri tidak ada masalah, karena begitu nama file yang diupload sudah ada, maka secara otomatis akan mereplace file yang lama.

    Namun, hal ini akan menjadi kendala di database. Bila tidak diantisipasi, maka bisa jadi terdapat dua atau lebih data nama file yang sama. Oleh karena itu sebelum entri informasi file yang diupload ke database perlu ada pengecekan terlebih dahulu, ada tidaknya nama file tersebut dalam database. Jika sudah ada, maka yang terjadi adalah proses update informasi saja, khususnya size dari file tersebut.

    Setelah informasi file yang akan diupload disimpan dalam database, barulah file tersebut diupload ke folder ‘data’ menggunakan perintah move_uploaded_file();

    Oya, jangan lupa sebelum Anda mengupload file, folder ‘data’ harus telah dibuat. Folder ini letaknya selevel dengan script uploadnya.

    Selanjutnya kita buat script untuk menampilkan daftar file yang telah berhasil diupload. Konsepnya hanyalah membaca informasi file yang ada dalam database.

    list.php

    <?php
    mysql_connect('dbhost','dbuser','dbpass');
    mysql_select_db('dbname');
    
    $query  = "SELECT * FROM upload";
    $hasil  = mysql_query($query);
    
    while($data = mysql_fetch_array($hasil))
    {
       echo "<p><a href='download.php?id=".$data['id']."'>".$data['name']."</a> (".$data['size']." bytes) [ <a href='hapus.php?id=".$data['id']."'>Delete</a> ]</p>";
    }
    
    ?>
    

    Dalam list file di atas, informasi yang ditampilkan adalah nama file dan sizenya. Selain itu pada nama file tersedia link untuk download dan tersedia juga link untuk menghapus filenya. Untuk proses download dan hapus ini menggunakan nomor id dari file sebagai acuannya.

    Berikut ini tampilan hasil dari script list.php dengan 3 buah file yang telah berhasil diupload

    Photobucket

    Trus… bagaimana membuat script untuk downloadnya? OK.. ini dia scriptnya

    download.php

    <?php
    
        mysql_connect('dbhost','dbuser','dbpass');
        mysql_select_db('dbname');
    
        // membaca id file dari link
        $id = $_GET['id'];
    
        // membaca informasi file dari tabel berdasarkan id nya
        $query  = "SELECT * FROM upload WHERE id = '$id'";
        $hasil  = mysql_query($query);
        $data = mysql_fetch_array($hasil);
    
        // header yang menunjukkan nama file yang akan didownload
        header("Content-Disposition: attachment; filename=".$data['name']);
    
        // header yang menunjukkan ukuran file yang akan didownload
        header("Content-length: ".$data['size']);
    
        // header yang menunjukkan jenis file yang akan didownload
        header("Content-type: ".$data['type']);
    
       // proses membaca isi file yang akan didownload dari folder 'data'
       $fp  = fopen("data/".$data['name'], 'r');
       $content = fread($fp, filesize('data/'.$data['name']));
       fclose($fp);
    
       // menampilkan isi file yang akan didownload
       echo $content;
    
       exit;
    ?>
    

    Supaya memberikan proses download begitu file diklik pada list.php, maka perlu dibuat header file sebagaimana script di atas. Bila tidak diberikan header berisi informasi file seperti di atas, maka isi file akan tampil di halaman web.

    Berikut ini tampilan yang muncul setelah salah satu file diklik untuk didownload

    Photobucket

    Terakhir, bagaimana dengan script untuk menghapus file? Konsepnya adalah terjadi 2 proses penghapusan, yaitu menghapus informasi file yang ada pada tabel database, dan menghapus file dalam folder ‘data’. Untuk menghapus file yang telah diupload ke folder, digunakan perintah unlink();

    hapus.php

    <?php
    
        mysql_connect('dbhost','dbuser','dbpass');
        mysql_select_db('dbname');
    
        // membaca id file yang akan dihapus
        $id      = $_GET['id'];
    
        // membaca nama file yang akan dihapus berdasarkan id
        $query   = "SELECT * FROM upload WHERE id = '$id'";
        $hasil   = mysql_query($query);
        $data    = mysql_fetch_array($hasil);
        $namaFile = $data['name'];
    
        // query untuk menghapus informasi file berdasarkan id
        $query = "DELETE FROM upload WHERE id = $id";
        mysql_query($query);
    
        // menghapus file dalam folder sesuai namanya
        unlink("data/".$namaFile);
        echo "File telah dihapus";
    
    ?>
    

    Perhatikan script hapus.php di atas! Dalam script tersebut terdapat proses membaca nama file yang akan dihapus berdasarkan id nya. Nama file ini nantinya akan dijadikan acuan dalam proses menghapus file dalam folder menggunakan unlink().

    Nah.. gampang bukan membuatnya? Mudah-mudahan artikel ini berguna buat pengunjung setia blog ini.

    Download Script

    Sumber >>>>>http://blog.rosihanari.net/ide-pembuatan-script-php-upload-download-file-via-folder
    EasyHits4U.com - Your Free Traffic Exchange - 1:1 Exchange Ratio, 5-Tier Referral Program. FREE Advertising!

    Copyright @ 2013 JAS Blog. Designed by Templateism | Love for The Globe Press