Internet Fax To Email - Unlimited

Unlimited Faxes, No Fees, Dedicated Phone Number

Free Website Templates
kecebongsoft » Tutorial

kecebongsoft


Blog, Portfolios, Creativity

PHP : Soal Pilihan Ganda

Posted in Tutorial by Dedi Purwanto on the July 6th, 2007

Kemarin, seorang teman menanyakan tentang hal ini. Dakuw juga sering berfikir kenapa tidak ada tutorial yang seperti ini, rata-rata tutorial tersebut lebih mengarah ke teknik-teknik pemrograman, bukan alur logika yang mengarah pada kasus-kasus spesifik seperti ini (CMIIW). Mungkin beberapa berpendapat, bahwa mereka harus membangun logika sendiri. Bagaimana kalau logikanya Pentium tidur seperti dakuw :D (becanda deng).

Just an opinion. Oke deh, disini kita akan mencoba membuat web sederhana yang menampilkan sejumlah soal dari sekian soal secara acak, dan setiap soal disertai dengan 4 pilihan (pilihan ganda). Setelah soal-soal tersebut dijawab oleh user, maka akan ditampilkan halaman yang mengecek jawaban tersebut benar/salah. Mudah kan?

Pertama, kita desain dulu databasenya, buka phpmyadmin atau MySQL Front atau apapun yang biasa dipakai untuk manajemen database MySQL. Tabel pertama adalah table soal, yang akan menyimpan soal-soal.

Sintaks : (sql)
  1.  
  2. CREATE TABLE `soal` (
  3.   `id` int(99) NOT NULL AUTO_INCREMENT,
  4.   `soal` text NOT NULL,
  5.   PRIMARY KEY  (`id`)
  6. );
  7.  

ID adalah primary key dari tiap record, sedangkan field “soal” akan menyimpan text-text soal. Tabel “soal” sudah jadi, sekarang kita buat tabel jawaban.

Sintaks : (sql)
  1.  
  2. CREATE TABLE `jawaban` (
  3.   `id` int(99) NOT NULL AUTO_INCREMENT,
  4.   `soal` int(99) NOT NULL,
  5.   `jawaban` text NOT NULL,
  6.   `benar` tinyint(1) NOT NULL,
  7.   PRIMARY KEY  (`id`)
  8. );
  9.  

Field “id”, adalah primary key dari tiap record. Field “soal” adalah foreign key yang menunjuk pada tabel soal. Misalkan pada sebuah record di tabel jawaban, terdapat nilai “3” pada field “soal”, maka itu berarti jawaban tersebut milik soal yang ber-id “3” pada tabel soal. Field “jawaban” adalah field yang menyimpan teks jawaban. Field “benar” adalah field yang menentukan jawaban tersebut benar atau tidak (karena peraturannya adalah pilihan berganda), mungkin saja ada banyak jawaban untuk satu soal, tapi hanya satu yang benar. Kita akan set 0 untuk tiap jawaban yang salah, dan 1 untuk jawaban yang benar.
Oke, tabel udah jadi, sekarang kita masuk ke script, perlu diingat struktur file disini dibuat sesederhana mungkin, tapi jangan diikuti untuk website sebenarnya yak :D .

Ini script untuk menampilkan soal dan jawabannya, jangan khawatir tiap baris sudah diberi komentar penjelas kok :D. Klo di jelasin disini lagi justru berbelit-belit :D, simpan dengan nama soal_view.php :

Sintaks : (php)
  1.  
  2. <?
  3.         $db=mysql_connect("localhost","root","");
  4.         if($db)
  5.         {
  6.                 if(mysql_select_db("tutorial_1"))
  7.                 {
  8.                         // Database selected
  9.                 }
  10.                 else
  11.                 {
  12.                         echo "Can’t select database!";
  13.                         exit;
  14.                 }       
  15.         }
  16.         else
  17.         {
  18.                 echo "Can’t Connect to MySQL Server!"
  19.                 exit;
  20.         }
  21. ?>
  22.  
  23. <form method="post" action="soal_process.php">
  24. <?
  25.         // Inisialisasi variabel
  26.         $soal=array(); // Array yang digunakan untuk menyimpan "id" soal
  27.         $soal_max=3; // Jumlah soal yang akan ditampilkan
  28.         $nomor=1; // nomor urutan soal
  29.        
  30.         // Kumpulkan nilai-nilai "id" yang ada pada tabel "soal", simpan ke array "soal"
  31.         $query=mysql_query("SELECT * FROM soal");
  32.         while($row=mysql_fetch_array($query))
  33.         {
  34.                 $soal[]=$row[id];
  35.         }
  36.        
  37.         // Yup, array "soal" sudah terisi, tinggal diacak dan di buang hingga isinya tinggal $soal_max
  38.         // fungsi array_rand, tidak mengacak isi dari array, melainkan hanya nomor urut dari array
  39.         // karena itu kita gunakan variabel $soal_urut, untuk menyimpan urutan soal yang sudah diacak
  40.         // MIS : sebelum diacak :
  41.         // isi array (0=>"1",1=>"2",2=>"3",3=>"4",4=>"5") angka di sebelah kiri adalah nomor urut array
  42.         // dan yang disebelah kanan adalah isi dari array tersebut
  43.         // fungsi array_rand, hanya mengacak urutannya, bukan nilainya.
  44.         $soal_urut=array_rand($soal,$soal_max);
  45.         while($s=each($soal_urut))
  46.         {
  47.                 // ambil nomor soal
  48.                 $soal_nomor=$s["value"]; // ambil nomor urut array
  49.                 $soal_nomor=$soal[$soal_nomor]; // ambil array dengan nomor urut $soal_nomor
  50.                
  51.                 // tampilkan soal
  52.                 $query=mysql_query("SELECT * FROM soal WHERE id=".$soal_nomor);
  53.                 $row=mysql_fetch_array($query);  
  54.                 echo "<b>$nomor. ".$row[soal]." ?</b>
  55. ";
  56.                
  57.                 // tampilkan pilihan ganda, dalam bentuk radio button
  58.                 // value pada radio button kita set sesuai "id" dari jawaban tersebut
  59.                 // jadi, nanti pada saat di proses, cukup kita cek apakah jawaban dengan "id"
  60.                 // tersebut nilai "benar"nya 0 atau 1.
  61.                 $query=mysql_query("SELECT * FROM jawaban WHERE soal=".$soal_nomor);
  62.                 while($row=mysql_fetch_array($query))
  63.                 {
  64.                         $id=$row[id];
  65.                         $jawab=$row[jawaban];
  66.                         $benar=$row[benar];
  67.                        
  68.                         // kita beri nama radio buttonnya jawab_$soal_nomor, kalau "id" soal yang sekarang
  69.                         // adalah 10, maka radio buttonnya jadi jawab_10, dst.
  70.                         echo "<input type=\"radio\" name=\"jawab_$soal_nomor\" value=\"$id\">$jawab
  71. ";
  72.                 }
  73.                 // Oh iya, disini juga kita buat string yang isinya array soal yang sudah diacak tadi
  74.                 // tujuannya, untuk kita masukan ke hidden field, dan ikut di transfer bersama
  75.                 // form, kemudian nanti di pecah lagi menjadi array pada soal_process.php
  76.                 // string ini berguna untuk menyimpan urutan soal mana saja yang ditampilkan sekarang
  77.                 $soal_nomor_send.=$soal_nomor . ",";
  78.                
  79.                 // Ini nomor urut soal, untuk tampilan saja
  80.                 $nomor++;
  81.         }
  82.         // Karena string dari array soal yang kita kumpulkan tadi sudah selesai, namun
  83.         // karakter terakhirnya masih ada "koma" (mis : "5,3,2,1,"), jadi kita ilangin komanya dulu
  84.         $soal_nomor_send=substr($soal_nomor_send,0,strlen($soal_nomor_send)-1);
  85.        
  86.         // yup, sekarang string dari array soal sudah jadi, tinggal di masukan ke hidden field
  87.         echo "<input type=\"hidden\" name=\"soal_nomor\" value=\"$soal_nomor_send\">";
  88. ?>
  89. <input type="submit" value="Jawab">
  90. </form>
  91.  

Dan ini, adalah file untuk memproses jawaban, simpan dengan nama file soal_process.php :

Sintaks : (php)
  1.  
  2. <?
  3.         $db=mysql_connect("localhost","root","");
  4.         if($db)
  5.         {
  6.                 if(mysql_select_db("tutorial_1"))
  7.                 {
  8.                         // Database selected
  9.                 }
  10.                 else
  11.                 {
  12.                         echo "Can’t select database!";
  13.                         exit;
  14.                 }       
  15.         }
  16.         else
  17.         {
  18.                 echo "Can’t Connect to MySQL Server!"
  19.                 exit;
  20.         }
  21. ?>
  22.  
  23. <?
  24.         // Inisialisasi variabel
  25.         $user_jawab=array(); // Array yang digunakan untuk menyimpan jawaban user dari form tadi
  26.         $soal_urut=array(); // Array yang digunakan untuk menyimpan urutan soal dari form tadi (hidden field)
  27.         $nomor=1; // nomor urutan soal
  28.  
  29.         $soal_urut=$_POST["soal_nomor"]; // Ambil hidden field dari form tadi
  30.         $soal_urut=explode(",",$soal_urut); // pecah menjadi array, pecah berdasarkan tanda ","
  31.        
  32.         // Tampilkan soal-soal yang tadi
  33.         while($s=each($soal_urut))
  34.         {       
  35.                 $soal_nomor=$s["value"]; // ambil "id" soal
  36.                
  37.                 // tampilkan soal
  38.                 $query=mysql_query("SELECT * FROM soal WHERE id=".$soal_nomor);
  39.                 $row=mysql_fetch_array($query);  
  40.                 echo "<b>$nomor. ".$row[soal]." ?</b>
  41. ";
  42.                
  43.                 // tampilkan pilihan ganda
  44.                 $query=mysql_query("SELECT * FROM jawaban WHERE soal=".$soal_nomor);
  45.                 while($row=mysql_fetch_array($query))
  46.                 {
  47.                         $id=$row[id];
  48.                         $jawab=$row[jawaban];
  49.                         $benar=$row[benar];
  50.                        
  51.                         // kita ambil "id" jawaban yang di submit user dari form tadi
  52.                         $user_jawab=$_POST["jawab_$soal_nomor"];
  53.                        
  54.                         // apakah "id" jawaban yang sedang ada di query ini sama dengan "id"/value pada radio button yang disubmit user?
  55.                         if($user_jawab==$id){
  56.                                 if($benar==0){ // apakah salah jawaban si user?
  57.                                         $jawab_status="<span style=’color:red;’><< Jawaban Anda… Salah!</span>";
  58.                                 }else{ // atau benar?
  59.                                         $jawab_status="<span style=’color:blue;’><< Jawaban Anda… Benar!</span>";
  60.                                 }
  61.                         }
  62.                         else // kalau "id"nya tidak sama
  63.                         {
  64.                                 $jawab_status="";
  65.                         }
  66.                        
  67.                         // tampilkan radio buttonnya
  68.                         echo "<input type=\"radio\" name=\"jawab_$soal_nomor\" value=\"$id\">$jawab $jawab_status
  69. ";
  70.                 }
  71.                
  72.                 $nomor++; // nomor urut soal, hanya tampilan saja
  73.         }
  74. ?>
  75.  

Oke deh, selamat mencoba, don’t hestitate to reply klo ketemu bug :D

VBCrLF + Excel = Stupid Small Box!

Posted in Tutorial by Dedi Purwanto on the June 30th, 2007

Bagi yang pernah melakukan export data dari Visual Basic ke Microsoft Excel menggunakan Object Library bawaan Microsoft Office, mungkin pernah menemukan kasus dimana ketika kita ingin memasukan baris baru dalam satu sel (menggunakan sintaks VBCRLF), maka akan muncul “unknown char” berbentuk kotak yang letaknya sebelum baris baru. Sintaks regulernya adalah seperti ini

Sintaks : (vb)
  1.  
  2. .Range("A1") = "Budi Yuliono" & VBCrLf & "Samarinda, 15 April 1988"
  3.  

Sintaks diatas, memang akan menghasilkan baris baru, namun juga akan menghasilkan karakter box sebelum baris baru terbentuk, dan itu tentu saja mengganggu pemandangan. Berikut adalah daftar konstanta yang hasilnya sama saja (membentuk box kecil) ketika digunakan di excel

Sintaks : (vb)
  1.  
  2. .Range("A1") = "Budi Yuliono" & VBCrLf & "Samarinda, 15 April 1988"
  3. .Range("A1") = "Budi Yuliono" & VBLf & "Samarinda, 15 April 1988"
  4. .Range("A1") = "Budi Yuliono" & XlCrLf & "Samarinda, 15 April 1988"
  5.  

Banyak programmer (termasuk dakuw) yang pusing 26 lap cuma mikirin beginian, setelah surfing bentar, solusinya yaitu, menggunakan karakter ASCII! (mungkin :p). Ganti aja scriptnya jadi begini:

Sintaks : (vb)
  1.  
  2. .Range("A1") = "Budi Yuliono" & Chr(10) & "Samarinda, 15 April 1988"
  3.  

And.. voila! :D

VBScript : Bikin Game Kuis

Posted in Tutorial by Dedi Purwanto on the June 30th, 2007

Game ini adalah game bertipe kuis kata, cara membuatnya cukup simpel, dan program yang diperlukan cuma notepad aja ^_^. Kalau kalian masih awam sama yang namanya notepad, coba klik menu START -> RUN, trus ketik notepad lalu tekan Enter, muncul deh notepadnya ^_^.

Nah, back to the topic, disini akan di jelasin tutorial bikin game kuis ini, bahasa yang dipergunakan adalah Visual Basic Script, nggak perlu cemas dulu tentang seberapa sulitnya bahasa Visual Basic Script(VBScript), karena ini cukup simple koq, dan rule game kita nanti akan seperti ini :

1. Tampilkan soal
2. User mengetikkan jawabannya
3. Kita cek apakah jawaban user sama
dengan jawaban soal
4. Kalo sama, kita tambahin skor sebanyak 5 poin
5. Kalo enggak sama, kita tanya user, dia mau lanjut apa enggak
6. Kalo dia mau lanjut, kita tampilkan soal yang sama
7. Kalo enggak, kita tutup program kuisnya

Simpel kan?. Sekarang kita masuk ke programmingnya, coba buka aplikasi notepad, kemudian klik menu File -> Save, lalu simpan filenya dengan nama Kuis.vbs, dan dibagian FileType, pilih All Files. Simpan file tersebut di folder C:\. Sekarang coba tutup program notepadnya, lalu buka My Computer dan buka drive C:\ tadi, disitu ada file Kuis.vbs (yang iconnya warna putih-ijo), itu adalah program kuis kita, sekarang coba klik kanan file itu dan pilih EDIT. Lalu masukan kode di bawah ini :
(more…)

Membuat Direktori Alias pada Apache Server

Posted in Tutorial by Dedi Purwanto on the June 28th, 2007

Bagi yang udah akrab ama server Apache, mungkin kita biasa meletakan semua folder website kita pada direktori htdocs atau www, yang merupakan bawaan dari server apache. Bagaimana kalau kita ingin meletakan folder website kita (mis:contoh1) di tempat lain namun tetap dapat di akses melalui http://localhost/contoh1.

Sekarang mari kita buat contoh, semisal aku punya folder berisi sebuah website, folder tersebut namanya adalah “websiteku”, dan kuletakan di “D:\websiteku”. Sementara folder htdocs milik apache terletak di “C:\Apache\htdocs”. Bagaimana agar folder “websiteku” bisa diakses dengan url “http://localhost/websiteku” ?. Solusinya adalah Alias Direktori. Tidak usah terlalu teoritis, langsung aja ke praktek yak!.

Pertama, buka file httpd.conf. Untuk yang pakai phptriad, file ini biasanya terletak di C:\Apache\conf\httpd.conf, atau kalau yang pakai XAMPP, coba lihat di folder XAMPP\Apache\Conf\httpd.conf. Dan kalau gak ketemu tinggal di searching aja :D. Setelah file httpd.conf dibuka, tambahkan kode dibawah ini di bagian paling bawah file httpd.conf.

Sintaks : (apache)
  1.  
  2. Alias /websiteku/ "D:/websiteku/"
  3. <Directory "D:/websiteku">
  4.         Options Indexes MultiViews
  5.         AllowOverride None
  6.         Order allow,deny
  7.         Allow from all
  8. </Directory>
  9.  

Save file httpd.conf tersebut, kemudian restart server apache. Buka browser, lalu tes hasil kode tadi dengan mengetikan “http://localhost/websiteku”.

PHP : Mr.echo() versus Mr.print() & Mrs.printf()

Posted in Tutorial by Dedi Purwanto on the June 21st, 2007

Bagi para pengguna PHP, tentu dah nggak asing dengan fungsi-fungsi macam echo(), print() dan printf(). Sekilas emang keliatannya fungsi ini sama. Tapi layaknya pisang goreng masakan ibunya kecebongsoft sama pisang goreng masakan ibunya chrisnanice, serupa tapi tak sama (enakan masakan ibunya kecebongsoft).

echo() adalah fungsi yang tidak memiliki nilai kembali, anggaplah echo dan print adalah sama-sama komandan upacara, echo adalah komanda yang setelah mengerjakan tugasnya, tidak akan melapor ke atasan, sedangkan print selalu melapor. Singkatnya, karena print memiliki nilai kembali / return value, dia bisa digunakan dalam operasi logika maupun ekspresi.

Perbedaan kedua adalah jumlah parameter yang di pass untuk kedua fungsi tersebut berbeda, printf memungkinkan kita untuk melakukan pemformatan nilai, sedangkan echo tidak bisa, contoh :

Sintaks : (php)
  1.  
  2. $a=4;
  3. $b=2;
  4. $c=$a * $b;
  5. echo ("Hasil perkalian dari $a dan $b adalah $c
  6. ");
  7. printf ("Hasil perkalian dari %d dan %d adalah %d", $a, $b, $c);
  8.  

Nah, terlihat sekali kan perbedaannya? kita bisa meletakan value integer pada posisi berbeda-beda untuk beberapa tempat dengan menggunakan printf(), sedangkan echo lebih bersifat konkrit.

Sebagai referensi, ini parameter variabel untuk fungsi printf();
-d untuk variabel bertipe integer
-b untuk variabel bertipe biner
-s untuk variabel bertipe string
-f untuk variabel bertipe double

Untuk implementasinya sendiri, suka-suka aja deh, tergantung kebutuhan. Terserah mau pakai yang mana, asal jangan pakai bajakan :D

META Rerfresh - Merefresh dokumen dalam hitungan mundur.

Posted in Tutorial by Dedi Purwanto on the June 13th, 2007

Bagi yang pernah pakai javascript, ada satu fungsi yang disebut navigate("") atau document.href untuk memindahkan halaman ke url yang kita inginkan, atau pada php dikenal dengan fungsi header("location : http://…"). Tapi javascript belum tentu kompak dengan semua browser, dan kita belum tentu selalu memakai PHP.

Dari kasus tersebut, kita bisa menggunakan fungsi bawaan dari HTML, yaitu META Refresh. Ialah elemen HTTP META yang dipakai untuk merefresh/mengganti alamat dokumen dalam hitungan mundur yang bisa kita atur (dalam satuan detik). Sintaksnya adalah sebagai berikut :

Untuk refresh dalam 10 detik :

<meta http-equiv="refresh" content="10">

Untuk mengganti alamat dokumen dalam 10 detik :

<meta http-equiv="refresh" content="10;url=http://kecebong.madpage.com/blog/">

Dan tentu saja dimasukan di bagian <head>…</head>, jadi scriptnya seperti ini :

<head>
<title>Websiteku</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta http-equiv="refresh" content="10;url=http://kecebong.madpage.com/blog/">
</head>

Dibanding pakai javascript/php, META Refresh jauh lebih fleksibel karena merupakan bawaan HTML dan cross browser. Ada yang mo coba? coba? coba?.

Main warnet gratis?

Posted in Tutorial by Dedi Purwanto on the May 10th, 2007

Buat yang sering main warnet, pengen main biaya nge-warnetnya berkurang? Triknya cukup mudah, Jika di warnet yang kamu pakai software billingnya menggunakan BillingExplorer (entah versi berapa),
maka ada kemungkinan besar kamu bisa mendapatkan bug(kesalahan program) ini :
1. Coba login dulu di client (pilih personal ato yang lainnya)
2. Buka window BillingExplorernya, liat jam pada label Start
3. Ubah jam windows, misal jam Startnya=10:12:58, maka ubah jam windows jadi 11:20:12 (atau terserah yang penting lebih besar dari jam Start.
4. Lihat label biaya yang ada di window BillingExplorer-mu, biayanya berubah nggak? :D

Entah program BillingExplorer di warnet-warnet Samarinda udah di update atau enggak
karena 80% warnet Samarinda memakai program BillingExplorer (entah versi berapa) maka bug ini cukup bisa bikin yang punya usaha jadi tekor. Tadi sempat muter-muter di om google nyari kejelasan tentang bug ini, tapi sebagian besar laporan bug tidak di tanggapi oleh vendor dari BillingExplorer.

Buat yang punya warnet, kalau bisa tidak perlu tunggu vendor nge-update software billingnya, mungkin lebih baik perbaikin sistem di setiap client, coba atur registry/settingan windows agar user tidak bisa mengganti jam. Dan lakukan pengamanan lainnya untuk menghindari timbulnya bug billing.

Fungsi rakitan buat ngecek variabel kosong

Posted in Tutorial by Dedi Purwanto on the May 5th, 2007

Yang sering pake php, biasanya kan kalau bikin form yang banyak field-fieldnya, begitu di submit si programmer mesti cek satu-satu dulu apakah field-field tersebut sudah terisi atau belum. Mungkin sebagian ada yang pakai fungsi isset. Tapi bagaimana seandainya variabel tersebut sudah di set tapi belum terisi? contoh, jika dalam kondisi register_globals=off, kita biasa menangkap variabel form dengan fungsi $nama=$_POST[’nama’] dst… Sehingga pada php variabel tersebut sudah berstatus diset, namun mungkin saja belum ada isinya.

Untuk mengatasi hal itu, sebagian programmer menggunakan fungsi empty(), tapi kekurangan fungsi empty adalah dia hanya bisa menghandel satu parameter untuk setiap pemanggilan fungsi tersebut. Sehingga jika kita punya belasan atau bahkan puluhan field yang mesti dicek kosong atau tidak, akan menghasilkan listing yang cukup panjang.

Jadi sekarang kita buat aja fungsi sendiri, yang bisa mengecek variabel itu kosong atau tidak (meskipun sudah diset). Dan fungsi ini bisa dimasukan parameter tidak terbatas. ini listingnya :

Sintaks : (php)
  1.  
  2.  
  3. function empties(){
  4.         for($i=0;$i < func_num_args() ;$i++){
  5.                 $isi=func_get_arg($i);
  6.                 echo "Parameter ke-$i : $isi";
  7.                 if(empty($isi)){
  8.                         echo "Variabel ini kosong!";
  9.                 }
  10.         }
  11. }
  12.  
  13. //KITA COBA PANGGIL
  14. empties("Dedi","Titin","Mamah","Papah","Uncu","Ketek","","Jefri","Suanah");
  15.  

selamat mencoba :D.

Mereset root password (Linux)

Posted in Tutorial by Dedi Purwanto on the March 16th, 2007

Kmaren juga sempat pengalaman kelupaan password, buat yang punya LILO, coba deh pas booting pake parameter :

linux init=/bin/sh

Parameter itu bakal ngeset bahwa booting akan menggunakan shell, kemudian setelah shellnya keluar, coba perintah ini:

vi /etc/passwd

Jika kolom kedua pada baris root (kolom dibatasi dengan karakter “:”) hanya berisikan karakter “x”, maka password yang kita gunakan bertipe shadow password, tutup vi, dan buka lagi dengan perintah ini:

vi /etc/shadow

Hapus kolom kedua pada baris root, kemudian save file tersebut. Coba deh di restart, and voila :-D.

Tapi terkadang ada juga kendala, beberapa distro seperti mandrake, dll, secara default mengeset owner file-file tersebut adalah root. Kalau sudah begitu, mungkin shell saja tidak cukup untuk mereset password (pada perintah VI akan muncul pesan yang berbunyi Read Only File). Kalau itu terjadi, coba pakai LiveCD Distro, untuk LiveCD, Ubuntu cukup bisa diandalkan, karena distro ini cukup banyak memiliki perbendaharaan device storage (IDE, SCSI), jadi buat yang pake hardisk SCSI gak perlu khawatir hardisknya gak ke-detect di ubuntu :-D.

Caranya sama dengan cara shell, hanya saja sekarang berbasis GUI, untuk ubuntu, disarankan booting dengan metode live-expert. Kemudian set password rootnya dan biarkan normal user untuk login, setelah itu kita bisa masuk melalui terminal (pada GNOME), dan ketikan perintah SU untuk login sebagai super user. Selebihnya sama seperti saat berhadapan dengan shell :-D.

Ngembaliin boot ke windows lagi

Posted in Tutorial by Dedi Purwanto on the March 10th, 2007

Kemarin sempat nginstall Ubuntu 5.04, trus niatnya pengen di uninstal. Ya udah deh nekat aja pake PowerQuest PartitionMagic, delete & secure erase partisi linuxnya, trus di reboot, eh baru ingat GRUB Boot Loadednya ada di MBR (Master Boot Record) dan masih di konfigurasi buat ngakses ke partisi linux!, jadi nongol error deh (soalnya partisi linuxnya udah kehapus T_T). Jadi bingung deh, dikira langsung otomatis balik booting ke windows. Masa mesti nginstall windows lagi?, padahal udah banyak plugin-plugin yang ku install (yang pasti bakal ilang klo windowsnya di reinstall).

Ah, gak boleh reinstall windows, repot!. Coba buka-buka command line yang disediain boot CD-nya windows xp, gak taunya ada command FIXMBR, yang bisa ngefix master boot record yang invalid, hehehe, setelah pake command line itu, os-nya om bill gates ini akhirnya bisa nongol lagi :D.