This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
blog:captcha_amb_cobol [2020/11/19 22:32] – falken | blog:captcha_amb_cobol [2020/11/20 11:37] (current) – falken | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== CAPTCHA amb COBOL ====== | ====== CAPTCHA amb COBOL ====== | ||
- | Degut a la [[https://www.youtube.com/watch? | + | Degut a la [[https://media.giphy.com/media/ |
{{: | {{: | ||
Line 40: | Line 40: | ||
En la WORKING-STORAGE SECTION afegirem les variables que utilitzem per al Captcha: | En la WORKING-STORAGE SECTION afegirem les variables que utilitzem per al Captcha: | ||
- | |||
- | | ||
| | ||
| | ||
Line 53: | Line 51: | ||
| | ||
- | Aquesta sentència pren un nombre al·leatori de la variable d' | + | ☝ Aquesta sentència pren un nombre al·leatori de la variable d' |
IF random-number = SPACE OR random-number = LOW-VALUE THEN | IF random-number = SPACE OR random-number = LOW-VALUE THEN | ||
Line 61: | Line 59: | ||
| | ||
- | Aquest bloc | + | ☝ Aquest bloc controla que s'hagi rebut un nombre des de la variable d' |
+ | |||
+ | |||
+ | CALL " | ||
+ | FUNCTION CONCATENATE(BANNERCMD " " random-number " > / | ||
+ | | ||
+ | |||
+ | MOVE FUNCTION CONCATENATE("/ | ||
+ | |||
+ | OPEN INPUT captchafile | ||
+ | READ captchafile | ||
+ | AT END SET EOFcaptchafile TO TRUE | ||
+ | | ||
+ | | ||
+ | | ||
+ | ADD 1 TO CAPTCHA-Y | ||
+ | READ captchafile | ||
+ | AT END SET EOFcaptchafile TO TRUE | ||
+ | | ||
+ | | ||
+ | CLOSE captchafile | ||
+ | CALL " | ||
+ | |||
+ | I el bloc anterior el que fa és mitjançant un CALL executar el programa figlet i enviar la sortida a un fitxer de text temporal. Seguidament es llegeix (READ) el fitxer i s' | ||
+ | Finalment s' | ||
+ | |||
+ | | ||
+ | | ||
+ | |||
+ | ☝ Aquí demanem a l' | ||
+ | |||
+ | IF CAPTCHA IS NOT EQUAL TO random-number THEN | ||
+ | DISPLAY "NOT CORRECT. DISCONNECTING." | ||
+ | CALL " | ||
+ | STOP RUN | ||
+ | | ||
+ | DISPLAY " | ||
+ | CALL " | ||
+ | | ||
+ | |||
+ | ☝ I en el bloc de dalt controlem si l' | ||
+ | |||
+ | Aquest procediment és molt millorable. Per exemple, hauriem de poder realitzar programàticament, | ||
+ | |||
+ | - Obtenir el número al·leatori sense recórrer a la variable d' | ||
+ | - Representar-lo amb ascii-art sense fer servir el programa // | ||
+ | |||
+ | Qui s' | ||
+ | |||
+ | Notes: | ||
+ | |||
+ | Fem servir una variable d' | ||
+ | |||