hi juga
Bayu wrote:
> Hi semua, mau tanya nih :
> 1. aku kan coba mbuat program untuk login pake turbo pascal 7 for DOS
> (sourcenya ada dibawah)... jadi kalo login ke komputer harus ngetik
> user name & password... tapi ternyata programnya gagal (apa salah
> total ya sourcenya???)
> waktu aku ngetik user name, meskipun udah betul, muncul tulisan :
> user unknown... kaya' gini nih hasilnya :
> User name : admin
> *** User name unknown ***
> Password : 1234
> ada yang bisa bantu betulin nggak? atau kalo bisa mbuatin program
> baru (pake' program lain gak pa-pa kok)? he... he... he... :)
> 2. apa bisa sewaktu password diketik, passwordnya gak kelihatan atau
> diganti dgn asterisk? kalo bisa, gimana caranya?
> 3. program apa selain tb7 yg gampang dipake'?
>
> SOURCE CODE:
>
> {$A-,B-,D-,E-,F-,G-,I-,L-,N-,O-,P-,Q-,R-,S-,T-,V-,X-,Y-}
> {$M 4096,0,8192}
> Uses Crt, Dos;
> Const User='Admin'; {1st user name}
> Family='Family'; {2nd user name}
> Password='1234'; {Password untuk admin}
> Myname='12345'; {Password untuk family}
> Procedure Name;
> Begin Clrscr;
> WriteLn(' ');
> WriteLn('Enter user name & password to log into this computer');
> End;
> Var UserInput:String;
> FamilyInput:String;
> PasswordInput:String;
> MynameInput:String;
> Const Success:Boolean=False;
> Begin Name;
> CheckBreak:=False;
> Repeat TextColor(15);
> Write(#13+#10+' User name : ');
> ReadLn(UserInput, FamilyInput);
> Success:=(UserInput=User) or (FamilyInput=Family);
> If Not Success Then
> TextColor(4);
disini kesalahannya
kalo kamu mau program nampilin pesen kesalahan "USERNAME UNKNOWN"
disaat username yg dimasukkan invalid, maka statement2 setelah IF harus di
blok BEGIN-END;
kira2 gini :
If Not Success Then
Begin
TextColor(4);
WriteLn(' ** USER NAME UNKNOWN **');
End;
kalo ga pake blok begin-end; statement yg dijalanin cuman yg tepat dibawah
' If Not Success Then ' which is 'TextColor(4);'
dan yg USER UNKNOWN tetap dijalankan
>
> WriteLn(' ** USER NAME UNKNOWN **');
> Until Success;
> If Success Then
> Repeat TextColor(15);
> Write(#13+#10+' Password : ');
> ReadLn(PasswordInput, MynameInput);
> Success:=(PasswordInput=Password) or (PasswordInput=Myname);
> If Not Success Then
> TextColor(4);
> WriteLn(' ** ACCESS DENIED **');
begitu juga success yg ini
If Not Success Then
Begin
TextColor(4);
WriteLn(' ** ACCESS DENIED **');
End;
>
> Until Success
Success yg blok paling luar ini gak perlu BEGIN-END;
karena udeh ditutup ama blok REPEAT-UNTILL;
>
> End.
> {End of source code}
>
> Best regards,
>
> Bayu
jawaban no.2
saya bisa kasih salah satu cara
kalo kamu mau karakter asterisk yg muncul
kamu bisa pake procedure readkey (instead of readln)
tiap ketikan keyboard kamu simpen, dirangkai jadi string
udeh gitu, tiap ketikan, kamu munculin di layar karakter '*'
terus, kamu validasi, kalo karakter yg diteken
bukan abjad/huruf, kamu tolak
kalo enter, deretan karakter tadi di validasi
cocok gak ama pass
kalo backspace, karakternya dihapus satu
gitulah kira2
untuk lebih jelasnya, email japri aja
jawaban no.3
gampang itu relatif sifatnya
tergantung kebutuhan,
kalo mau yg paling common under windows, bisa pake VB,DELPHI
kalo mau yg under DOS, yah PASCAL cukup mudah, ato C
terserah selera
satu hal lagi, pada umumnya validasi password tuh
mekanismenya dapet username + pass-nya baru divalidasi
bukan satu persatu divalidasi
anyway, just a thought
regards
gaga
ps : IMHO kayaknya konteks pertanyaan milis ini makin lama makin lebar yach
no hard feeling, bener bukan maksud nyela
hanya saja, saya ingin usulkan (IMHO again =)
mungkin sebaiknya di persempit biar bisa lebih terfokus
terimakasih
again - no hard feeling ^_^
http://www.indolinux.com - Nikmati Layanan Personal INDOLINUX ::
http://techscape.net/ - Webhosting: Dual T3 on Dual Pentium III 450Mhz
Only US$1.95/month -> CGI SSL 5MB Unlimited Traffic & Mail FP2000
-------------------------------------------------------------------
untuk berhenti kirim email ke [EMAIL PROTECTED]
untuk melihat peraturan kirim email ke [EMAIL PROTECTED]
arsip berada di http://www.mail-archive.com/[email protected]