Dosen adalah pendidik profesional dan ilmuwan dengan tugas utama mentransformasikan, mengembangkan, dan menyebarluaskan ilmu pengetahuan, teknologi melalui pendidikan, penelitian, dan pengabdian kepada masyarakat (Permendikbud 49/2014 Pasal 1:14)

Sekolah Tinggi Teknologi Garut

Diselenggarakan mulai tahun 1991 dan bernaung di bawah Yayasan Al-Musaddadiyah.

Program Studi Teknik Informatika

Berdiri pada tanggal 30 Juni 1998.

Rinda Cahyana

Dosen PNS yang diperbantukan di Sekolah Tinggi Teknologi Garut sejak tahun 2005

Minggu, 25 September 2011

Menyimpan jpg ke database

Seluruh kode yang ditulis di sini memerlukan unit DB dan jpeg sehingga harus dituliskan

uses DB, jpeg;

Cara untuk menyimpan file gambar ke dalam field "photo" bertipe text milik tabel dalam basis data SQL Server adalah sebagai berikut :

  1. Tambahkan komponen bernama OpenDialog1, ADOQuery1, Button1, dan Image1
  2. Pada event onClick komponen tombol Button1, tuliskan kode berikut :
procedure TFormPustaka.Button1Click(Sender: TObject);
var
FileStream: TFileStream;
BlobStream: TStream;
begin
OpenDialog1.Execute;
ADOQuery1.Edit;
try
BlobStream := ADOQuery1.CreateBlobStream(ADOQuery1.FieldByName('photo'),bmWrite);
FileStream := TFileStream.Create(OpenDialog1.FileName,fmOpenRead or fmShareDenyNone);
BlobStream.CopyFrom(FileStream,FileStream.Size);
FileStream.Free;
BlobStream.Free;
ADOQuery.Post; // menimpan gambar ke field "photo"
QDataPustakaAfterScroll(QDataPustaka); // memanggil event AfterScroll (di bawah)
except
ADOQuery1.Cancel;
end;
end;
end;


Cara untuk menampilkan data gambar yang merupakan isi field "photo" dengan menggunakan komponen ADOQuery1 dan Image1 adalah sebagai berikut :

  1. Pastikan properti string dari komponen ADOQuery1 mengandung SQL yang terhubung ke tabel yang memiliki field bertipe text.
  2. Pada event AfterScroll dari komponen ADOQuery1, tuliskan perintah berikut ini :
procedure ADOQuery1AfterScroll(DataSet: TDataSet);
var
JpegImage: TJPEGImage;
BlobStream: TStream;
begin
if (not ADOQuery1.FieldByName('photo').IsNull) then
begin
BlobStream:= ADOQuery1.CreateBlobStream(ADOQuery1.FieldByName('photo'),bmRead);
JpegImage := TJPEGImage.Create;
try
JpegImage.LoadFromStream(BlobStream);
Image1.Picture.Assign(JpegImage);
Image1.Visible := True; // ini tidak perlu jika Image1.Visible := False; tdk ditulis di bawah
finally
JpegImage.Free;
BlobStream.Free;
end;
end
else
Image1.Visible := False; // atau bisa juga Image1.Picture.Assign(nil);
end;

Tambahkan DBGrid, kemudian hubungkan dengan ADOQuery menggunakan DataSource. Setiap anda mengklik sel DBGrid, maka apabila field "photo" pada record tersebut mengandung gambar, akan muncul gambarnya di komponen image1.

Kamis, 22 September 2011

Enkripsi dan Deskripsi Password


unit uEncrypt;

interface

function Decrypt(const S: AnsiString; Key: Word): AnsiString;
function Encrypt(const S: AnsiString; Key: Word): AnsiString;

implementation

const
C1 = 52845;
C2 = 22719;

function Decode(const S: AnsiString): AnsiString;
const
Map: array[Char] of Byte = (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 0, 0, 63, 52, 53,
54, 55, 56, 57, 58, 59, 60, 61, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2,
3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
20, 21, 22, 23, 24, 25, 0, 0, 0, 0, 0, 0, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
46, 47, 48, 49, 50, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0);
var
I: LongInt;
begin
case Length(S) of
2:
begin
I := Map[S[1]] + (Map[S[2]] shl 6);
SetLength(Result, 1);
Move(I, Result[1], Length(Result))
end;
3:
begin
I := Map[S[1]] + (Map[S[2]] shl 6) + (Map[S[3]] shl 12);
SetLength(Result, 2);
Move(I, Result[1], Length(Result))
end;
4:
begin
I := Map[S[1]] + (Map[S[2]] shl 6) + (Map[S[3]] shl 12) +
(Map[S[4]] shl 18);
SetLength(Result, 3);
Move(I, Result[1], Length(Result))
end
end
end;

function PreProcess(const S: AnsiString): AnsiString;
var
SS: AnsiString;
begin
SS := S;
Result := '';
while SS <> '' do
begin
Result := Result + Decode(Copy(SS, 1, 4));
Delete(SS, 1, 4)
end
end;

function InternalDecrypt(const S: AnsiString; Key: Word): AnsiString;
var
I: Word;
Seed: Word;
begin
Result := S;
Seed := Key;
for I := 1 to Length(Result) do
begin
Result[I] := Char(Byte(Result[I]) xor (Seed shr 8));
Seed := (Byte(S[I]) + Seed) * Word(C1) + Word(C2)
end
end;

function Decrypt(const S: AnsiString; Key: Word): AnsiString;
begin
Result := InternalDecrypt(PreProcess(S), Key)
end;

function Encode(const S: AnsiString): AnsiString;
const
Map: array[0..63] of Char = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' +
'abcdefghijklmnopqrstuvwxyz0123456789+/';
var
I: LongInt;
begin
I := 0;
Move(S[1], I, Length(S));
case Length(S) of
1:
Result := Map[I mod 64] + Map[(I shr 6) mod 64];
2:
Result := Map[I mod 64] + Map[(I shr 6) mod 64] +
Map[(I shr 12) mod 64];
3:
Result := Map[I mod 64] + Map[(I shr 6) mod 64] +
Map[(I shr 12) mod 64] + Map[(I shr 18) mod 64]
end
end;

function PostProcess(const S: AnsiString): AnsiString;
var
SS: AnsiString;
begin
SS := S;
Result := '';
while SS <> '' do
begin
Result := Result + Encode(Copy(SS, 1, 3));
Delete(SS, 1, 3)
end
end;

function InternalEncrypt(const S: AnsiString; Key: Word): AnsiString;
var
I: Word;
Seed: Word;
begin
Result := S;
Seed := Key;
for I := 1 to Length(Result) do
begin
Result[I] := Char(Byte(Result[I]) xor (Seed shr 8));
Seed := (Byte(Result[I]) + Seed) * Word(C1) + Word(C2)
end
end;

function Encrypt(const S: AnsiString; Key: Word): AnsiString;
begin
Result := PostProcess(InternalEncrypt(S, Key))
end;

end.

Sumber : http://www.swissdelphicenter.ch/torry/showcode.php?id=1243

Senin, 05 September 2011

Barangsiapa yang mengenal dirinya, maka sungguh dia akan mengenal Rabb-Nya

Kebetulan dapat kutipan perkataan Yesus dalam Injil Thomas yang dikutip dari buku kajian tentang perpustakaan Nag Hamady, sebagai berikut :

"ketika kalian semua mengenali diri kalian saat itu kalian akan menjadi mengerti (Arifin) …"

Perkataan ini mirip dengan “Barangsiapa yang mengenal dirinya, maka sungguh dia akan mengenal Rabb (Tuhan)-Nya”. yang dianggap Imam Ghazali dalam kitab Kimiya-i Sa'adah sebagai hadits Qudsi. Sejumlah ulama telah meneliti perkataan ini, yang ternyata bukan firman Tuhan dalam hadits qudsi atau perkataan Rasulullah SAW.

Dalam Gus Har disebutkan bahwa Syaikh Al-Albaniy -rahimahullah- dalam Adh-Dha’ifah (1/165) berkata, “Hadits ini tidak ada asalnya” [Adh-Dha’ifah (1/165)]. An-Nawawiy berkata, “Hadits ini tidak tsabit (tidak shahih)” (Al-Maqashid (198) oleh As-Sakhowiy)

As-Suyuthiy berkata, “Hadits ini tidak shahih” (Lihat Al-Qoul Asybah (2/351 Al-Hawi)

Dalam kitab Tamyizutthoyyib Minal Khobits Fima Yadurru Ala Alsinatinnasi Minal Hadits, karya Imam Abdurrahman Assyibani AsSyaf'i, Assamani berkata ucapan tersebut tidak dikenal sebagai hadits marfu yang sampai kepada Nabi, ia hanyalah ungkapan dari Yahya bin Muadz Ar-Razy. Imam Nawawi berkata hadits ini tidak shahih, innahu laysa bitsabit (maksudnya tidka sampai kepada Nabi). Dalam kitab lain yaitu : Asnal Matholib Fi Ahadits Mukhtalifail Marotib karya Syeikh Abdurrahman Albayruthy disebutkan Imam Nawawi berkata ungkapan itu bukan hadits tetapi ucapan Abu Said Al Khorroj atau Yahya bin Muadz Ar-Razy.

Perkataan Yahya bin Muadz Ar-Razy yang dianggap hadits ini sama dengan perkataan Yesus dalam Injil Thomas. Apa perkataan ini sebenarnya kutipan dari sana yang disalahfahami al Ghazali sebagai hadits Qudsi ? Allahu'alam.

Kamis, 01 September 2011

Asal Dosa Manusia


Asal dosa itu adalah mengikuti tipu daya setan jin dan setan manusia.

Dan demikianlah Kami jadikan bagi tiap-tiap nabi itu musuh, yaitu syaitan-syaitan (dari jenis) manusia dan (dan jenis) jin, sebahagian mereka membisikkan kepada sebahagian yang lain perkataan-perkataan yang indah-indah untuk menipu (manusia). Jikalau Tuhanmu menghendaki, niscaya mereka tidak mengerjakannya, maka tinggalkanlah mereka dan apa yang mereka ada-adakan. (6:112)

Jika nafsu manusia tidak diberi rahmat oleh Allah, nafsu inilah yang mendorong manusia mengikuti tipu daya setan

Dan aku tidak membebaskan diriku (dari kesalahan), karena sesungguhnya nafsu itu selalu menyuruh kepada kejahatan, kecuali nafsu yang diberi rahmat oleh Tuhanku. Sesungguhnya Tuhanku Maha Pengampun lagi Maha Penyanyang. (12:53)

Dengan demikian, nafsu dapat menjadi musuh dalam selimut, yang digunakan setan untuk memperkuat pengaruhnya.

Agama yang berisi keterangan halal dan haram dari Tuhan menjadi penyelamat dari tipu daya setan. Orang yang menuruti hawa nafsunya yang meyeru dirinya kepada kejahatan yang dikehendaki setan, akan beroleh dosa.

Maka apakah orang yang berpegang pada keterangan yang datang dari Rabbnya sama dengan orang yang (shaitan) menjadikan dia memandang baik perbuatannya yang buruk itu dan mengikuti hawa nafsunya? (47:14)

Kesimpulannya :

Dan tidaklah seorang membuat dosa melainkan kemudharatannya kembali kepada dirinya sendiri; dan seorang yang berdosa tidak akan memikul dosa orang lain. (al An’am : 164) Kamu tidak akan ditanya (bertanggung jawab) tentang dosa yang kami perbuat dan kami tidak akan ditanya (pula) tentang apa yang kamu perbuat. (Saba’ : 25)

Senin, 08 Agustus 2011

Mengkonversi IP address ke Hostname

Menggunakan winsock



function IPAddrToName(IPAddr: string): string;

var SockAddrIn:TSockAddrIn;HostEnt:PHostEnt;WSAData:TWSAData;

begin

WSAStartup($101,WSAData);

SockAddrIn.sin_addr.s_addr:=inet_addr(PChar(IPAddr));

HostEnt:= GetHostByAddr(@SockAddrIn.sin_addr.S_addr,4,AF_INET);

if HostEnt<>nil then Rresult:=StrPas(Hostent^.h_name)

else Result:='';

end;


Senin, 01 Agustus 2011

Perkawinan di bawah umur perlu diberi sangsi?

Latar belakang sangsi terhadap perkawinan di bawah umur adalah untuk melindungi perempuan dari resiko yang timbul akibat aktivitas seksual dalam kondisi organ seksual perempuan yang belum matang. Dirjen Bimas Islam Depag, Prof Dr Nasaruddin Umar seusai Konsultasi Nasional Hukum Keluarga Islam di Indonesia di Jakarta mengemukakan beberapa resiko tersebut, antara lain angka perceraian yang meningkat, kematian ibu saat melahirkan, dan perceraian yang mendorong timbulnya pelacuran. Beliau juga mengatakan bahwa perkawinan di bawah umur merampas hak anak mendapatkan kesempatan belajar.

Soal resiko perceraian, resiko ini umum dan dialami juga oleh mereka yang menikah dalam batas usia yang ditetapkan oleh UU perkawinan no 1 tahun 1974. Seandainya agama dipatuhi, perceraian ini akan menjadi pilihan yang sulit dan bukan pilihan yang mudah. Jika kebanyakan pasangan di bawah umur mengambil keputusan bercerai dengan mudah, maka ini bukan lagi persoalan usia mereka saat menikah, tetapi soal kurangnya kesadaran atau pemahaman mereka soal pernikahan dan perceraian dalam dimensi keagamaan mereka. Aisyah terdidik secara sempurna dalam keluarganya , memahami sakralnya pernikahan, sehingga beliau tidak bercerai hingga wafat Nabi SAW.

Soal perceraian yang mendorong timbulnya pelacuran, ini juga hal lain yang sama sekali tidak berhubungan dengan pernikahan di bawah umur. Seandainya agama dipatuhi, pelacuran ini akan dihindari karena merupakan perbuatan yang keji. Jika kebanyakan wanita yang menikah di bawah umur setelah bercerai kemudian melacurkan diri, maka ini bukan lagi persoalan usia saat dia menikah, tetapi soal kurangnya kesadaran atau pemahaman mereka soal betapa kejinya dan besarnya dosa zina di mata Tuhan dan besar madharatnya bagi dirinya dan masyarakat sekitar.

Soal kematian ibu akibat melahirkan, memang sejumlah penelitian menunjukan penyebabnya adalah ketidaksiapan organ repsoduksi. Tetapi sekali lagi soal ini sama sekali tidak berhubungan dengan pernikahan di bawah umur karena aktivitas seksual bisa ditunda seperti yang dilakukan oleh Nabi Muhammad SAW yang menudahnya hingga Aisyah mencapai usia baligh (9 tahun).

Soal pernikahan dini menyebabkan terputusnya hak belajar anak, di Indonesia masalah ini dimunculkan oleh stakeholder pendidikan. Jika anda menikahi wanita sekolah menengah, maka wanita tersebut akan dikeluarkan oleh sekolah atau tidak diijinkan mengikuti UAN. Kepala Bidang Pendidikan Menengah Dinas Pendidikan Kabupaten Garut Eutik Karyana mengatakan, siswa yang masih sekolah baik SMP maupun SMA tidak boleh menikah sebelum menyelesaikan sekolahnya. “Aturan mainnya memang siswa SMP tidak boleh menikah. Ini juga berlaku bagi siswa SMA,”. Tidak ada peraturan Islam yang seperti itu, sehingga sekalipun Aisyah menikah di bawah umur, beliau tetap dapat melanjutkan pendidikannya sehingga menjadi salah satu ahli hadits dan fuqaha yang dirujuk oleh muslimin sepeninggal wafat Nabi SAW. Seperempat hukum Islam adalah berasal dari Aisyah.

Seandainya masyarakat menjalankan agama Islam dengan benar, proses pendidikan keagamaan dilakukan secara baik, maka tidak perlu sangsi pelarangan terhadap pernikahan di bawah umur. Perceraian dan pelacuran bisa dihindari dengan memperkuat agama masyarakat, di mana pernikahan adalah sakral dan pelacuran diganjar dengan sanksi keras. Resiko perceraian dan pelacuran di Indonesia sudah pasti tidak akan selesai, karena mereka yang hendak menikah diberi sangsi karena melakukannya di bawah umur, sementara mereka yang berzina di bawah umur dibiarkan saja kecuali ada laporan perkosaan.

Seandainya usia Aisyah saat dinikahi adalah benar 6 atau 7 tahun *), maka Nabi Muhammad SAW memberi petunjuk tentang bagaimana melakukan pernikahan dengan wanita di bawah umur, yakni dengan memberikan hak kepada si anak sesuai dengan usianya dan menunda hidup bersama hingga si anak mencapai usia baligh (9 tahun). Aisyah tidak dilarang melakukan hal alamiah anak-anak dan tidak ditutup aksesnya terhadap pendidikan. Bahkan beliau SAW ikut terlibat sebagai pengasuh dan pendidik.

*) Menurut penelitian yg dilakukan Ghulam Nabi Muslim Sahib, dengan berdasarkan referensi dari Kitab Ahmal fi Asma’ al-Rijjal karangan al-Khatib al-Tibrizi dimana dalam kitab tersebut disebutkan Setidaknya Aisyah berumur 19 tahun saat menikah dengan Nabi.

Di dalam Islam, hukum nikah adalah relatif. Anda menikah bisa dianggap haram dan berdosa, atau wajib sehingga akan celaka jika tidak dilaksanakan.
  1. Menikah itu wajib hukumnya bagi seorang yang sudah mampu secara finansial dan juga sangat beresiko jatuh ke dalam perzinaan.
  2. Mereka yang sudah mampu namun masih tidak merasa takut jatuh kepada zina disunnahkan untuk menikah, namun tidak sampai wajib.
  3. Pernikahan mereka haram jika melanggar syarat dan ketentuan pernikahan.
  4. Orang yang tidak punya penghasilan sama sekali dan tidak sempurna kemampuan untuk berhubungan seksual, hukumnya makruh bila menikah.
  5. Orang yang berada pada posisi tengah-tengah antara hal-hal yang mendorong keharusannya untuk menikah dengan hal-hal yang mencegahnya untuk menikah, maka bagi hukum menikah itu menjadi mubah atau boleh.
Sangsi terhadap pernikahan di bawah umur memang tepat diberlakukan untuk kondisi Indonesia yang memiliki resiko besar apabila pernikahan tersebut dilaksanakan. Hal ini difahami seperti hukum pernikahan menjadi haram. Namun sangsi ini dianggap tidak perlu atau dengan kata lain pernikahan di bawah umur diperbolehkan dalam kondisi resiko tersebut kecil sekali atau bahkan tidak ada.

Senin, 18 Juli 2011

Apakah di Syurga Istri cemburu terhadap istri lainnya?


Di syurga Allah mengkawinkan lelaki penghuni syurga dengan bidadari-bidadari yang cantik bermata jeli (ath-Thuur 17-20). 

Apakah istri dunia kita akan cemburu terhadap mereka? 

Kecemburuan itu kesusahan dan di syurga tidak ada kesusahan. Istri-istri di syurga itu pemberian Allah dan pilihan Allah adalah pilihan para penghuni syurga, karena Allah ridha terhadap mereka dan merekapun ridha kepadaNya (QS 98:8). 

Ibn khafif menyatakan , “Keridlaan adalah tenangnya hati dengan ketetapan Allah dan keserasiannya hati dengan apa yang menjadikan Allah ridha dan dengan apa yang dipilih-Nya untukmu.” 

Adakah istri yang ridha kepada Allah akan merasa sedih dengan adanya istri yang lain? 

Abu ‘Umar ad-Dimasyqi menyatakan, “Keridlaan adalah hilangnya kesedihan terhadap perintah (Allah) yang mana pun." 

Cemburu itu menolak dan penghuni syurga tidak memiliki fikiran menolak pemberian Allah.

Sabtu, 04 Juni 2011

Mengelola Kiriman Tugas Mahasiswa di Yahoo


Berikut ini adalah tips bagi pengajar yang ingin mengelola kiriman tugas pelajarnya dengan layanan email Yahoo yang baru. Tujuan langkah ini adalah menjadikan Yahoo sebagai agent yang dapat memilah sendiri kiriman surat dan memasukannya ke dalam folder berdasarkan kategori subject kiriman.

Langkah pertama, menetapkan standar subject email yang harus dipatuhi oleh mahasiswa. Misalnya untuk matakuliah struktur data kelas A jurusan informatika, pelajar harus mengirimkan email tugasnya dengan subject mengikuti format SDIFA. Contoh subject email : SDIFATugas17197013

Langkah kedua, membuat folder dalam email Yahoo. Folder dapat anda temukan pada sisi kiri bawah. Sebelah kanan tulisan folder ada ikon plus (+) yang dapat anda gunakan untuk membuat folder baru. Silahkan klik ikon tersebut dan tentukan nama folder sesuai kode matakuliahnya, misalnya sesuai dengan contoh SDIFA.

Langkah ketiga, membuat filter dalam Opsi email Yahoo. Menu opsi atau option dapat anda temukan pada bagian atas. Pada menu tersebut, pilih Opsi Mail. Kemudian pilih filter, lalu klik tombol Tambah Filter. Tuliskan nama filternya, kemudian isilah kotak judul dengan kode matakuliah, beri tanda cek untuk cocokan huruf, lalu pilih folder yang telah dibuat. Akhiri prosesnya dengan mengklik tombol Simpan Perubahan.