10 ' ********************************************* 20 ' * * 30 ' * APPEND.BAS - example program * 40 ' * * 50 ' * * 60 ' * by Robert Hendrix * 70 ' * 1080 Bouldercrest Dr. * 80 ' * Watkinsville, GA * 90 ' * * 100 '* * 110 '********************************************* 120 ' 130 KEY OFF 140 CLS : LOCATE 2,1 : PRINT " This program adds name's and passwords to the password file." 150 ' 160 ' ========= OPEN THE FILE THAT CONTAINS THE PASSWORDS ================== 170 ' 180 OPEN "filename.dat" FOR APPEND AS 1 190 ' 200 ' ========== INPUT USERNAME ============================================= 210 ' 220 LOCATE 5,5 : INPUT "Enter user's name - "; USERNAME$ 230 ' 240 '=========== TEST USERNAME FOR LOWERCASE LETTERS ========================= 250 ' 260 LENGTH = LEN(USERNAME$) 270 FOR ZZ = 1 TO LENGTH 280 TYPE$=MID$(USERNAME$,ZZ,1): IF ASC(TYPE$)>= 97 AND ASC(TYPE$)<= 122 THEN 690 ELSE NEXT 290 ' 300 '=========== INPUT PASSWORD ============================================== 310 ' 320 LOCATE 7,5 : INPUT "Enter user's password - " ; PASSWORD$ 330 ' 340 '=========== SHOW VALUES ENTERED ========================================= 350 ' 360 CLS : LOCATE 5,5 : PRINT USERNAME$,PASSWORD$ 370 ' 380 '=========== ASK IF VALUES ARE CORRECTLY ENTERED ========================== 390 ' 400 LOCATE 7,5 : PRINT "This is the name and password as entered." 410 LOCATE 9,5 : INPUT "Is this correct (Y or N) "; ANSWER$ 420 IF ANSWER$ = "Y" OR ANSWER$ = "y" THEN 480 430 IF ANSWER$ = "N" OR ANSWER$ = "n" THEN CLS : GOTO 220 ELSE GOSUB 630 440 GOTO 360 450 ' 460 '=========== WRITE USER NAME AND PASSWORD TO PASSWORD FILE ================= 470 ' 480 WRITE #1,USERNAME$,PASSWORD$ 490 ' 500 '=========== ASK IF THERE ARE MORE TO BE ADDED ====================== 510 ' 520 CLS : INPUT "Would you like to add another name to the password file (Y or N)" ; ANSWER$ 530 IF ANSWER$ = "Y" OR ANSWER$ = "y" THEN 220 540 IF ANSWER$ = "N" OR ANSWER$ = "n" THEN CLS : GOTO 590 ELSE GOSUB 630 550 GOTO 520 560 ' 570 '========= CLOSE PASSWORD FILE ========================================= 580 ' 590 CLOSE #1: CLS:GOTO 730 600 ' 610 '========= ERROR MESSAGE FOR INVALID YES NO RESPONSE ==================== 620 ' 630 CLS: LOCATE 5,5 : PRINT "Sorry, The only valid answers are Y or N " 640 LOCATE 9,5 : PRINT "Try again " 650 FOR Z=1 TO 2500 : NEXT : CLS : RETURN 660 ' 670 '========= ERROR MESSAGE FOR INVALID USERNAME ============================ 680 ' 690 CLS : PRINT "Please use capital letters for the username." : GOTO 220 700 ' 710 '========= ASK IF YOU WANT TO END IN BASIC OR AT SYSTEM LEVEL ============ 720 ' 730 CLS : LOCATE 5,2 : PRINT " Would you like to return to DOS ? (Y or N)" 740 ANS$ = INKEY$ : IF ANS$="" THEN 740 750 IF ANS$ = "Y" OR ANS$ = "y" THEN CLS:SYSTEM ELSE CLS:END