Diskuze: batch skript

Člen

Zobrazeno 11 zpráv z 11.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
rekl bych ze u tech setu by melo byt = < soubor.dat
Klikni na 4té tlačidlo zľava
(http://www.imagehosting.cz/?…)
To je zajímavé mi taky nešlo něco podobného... :
@echo off
title REGISTRACE
echo Registrace:
set /p USER=Zadejte sve uzivatelske jmeno:
echo %USER% > USER.txt
set /p PWD=Zadejte sve heslo:
echo %PWD% > PWD.txt
start PRIHLASENI.bat & exit
a to PRIHLASENI.bat
@echo off
color 0A
title PRIHLASENI
:LOGIN
echo Prihlaseni:
set /p USER= < USER.txt
set /p PWD= < PWD.txt
set /p USER2=Zadejte sve uzivatelske jmeno:
if %USER2%==%USER% goto SPRAVNE JMENO
cls
echo Spatne jmeno
pause
cls
goto LOGIN
:SPRAVNE JMENO
cls
set /p PWD2=Zadejte sve heslo:
if %PWD2%==%PWD% goto SPRAVNE HESLO
echo Spatne heslo
:SPRAVNE HESLO
cls
echo Uzivatel %USER2% byl uspesne prihlasen !
pause
cls
pause
exit
Když zadám špatné heslo, tak to napíše zprávu jakoby bylo správné,
protože v návěští PRAVNE JMENO, když to neprojde tím ifem, tak to sice vypíše "Spatne
heslo", ale jde to dál až do návěští
PRAVNE HESLO, kde se to nezarazí
a hned smaže konzolu a vypíše "Uzivatel %USER2% byl uspesne prihlasen !",
takže je to jako kdybych zadal správné heslo. Když jsem si to upravil, tak
mně to jelo.
Mohlo by to být třeba takto:
@echo off
color 0A
title PRIHLASENI
:LOGIN
echo Prihlaseni:
set /p USER= < USER.txt
set /p PWD= < PWD.txt
set /p USER2=Zadejte sve uzivatelske jmeno:
if %USER2%==%USER% goto SPRAVNE JMENO
cls
echo Spatne jmeno
pause
cls
goto LOGIN
:SPRAVNE JMENO
cls
set /p PWD2=Zadejte sve heslo:
if %PWD2%==%PWD% goto SPRAVNE HESLO
echo Spatne heslo
pause
exit
:SPRAVNE HESLO
cls
echo Uzivatel %USER2% byl uspesne prihlasen !
pause
cls
pause
exit
if EXIST
místo:
if EXISTS
3. v tom :login má být:
set /p u3= < user.dat
set /p p3= < password.dat
set /p n3= < nickname.dat
místo:
set u3 < user.dat
set p3 < password.dat
set n3 < nick.dat
4. v :ahoj má být:
echo vitej...
místo:
vitej...
opravený kód:
@echo off
if EXIST user.dat goto login
:reg
set /p u=jmeno:
set /p p=heslo:
set /p n=prezdivka:
echo %u% >> user.dat
echo %p% >> password.dat
echo %n% >> nickname.dat
exit
:login
set /p u3= < user.dat
set /p p3= < password.dat
set /p n3= < nickname.dat
set /p u2=jmeno:
set /p p2=heslo:
if %u2%==%u3% goto pass
exit
:pass
if %p2%==%p3% goto ahoj
exit
:ahoj
echo vitej %n3%
pause
Zobrazeno 11 zpráv z 11.