Delphi7 System Logowania Do Klienta Programu

0

Witam,
Mam Pewien Problem, Planuję do mojego programu dodać, logowanie,
Czyli tak:
1.Osoba A zakłada na stronie Konto Login+hasło i kilka danych dane z formularzy są zapisane do notatnika na serwerze, (np.daneogolne.txt) Login zapisany jest do pliku (login.txt) i hasla są zapisane do pliku hasla.txt I teraz tak program ma pobrać dane, i tak w Label 1 program ma sprawdzić czy w pliku login.txt jest taki login jeśli tak przechodzi dalej, teraz Label2 jeśli haslo zgadza się z którymś z hasla.txt to przechodzi dalej i program się wykonuje...
Nie mam na to pomysłu, proszę podać kawałek kodu, jakie komponenty użyć. Z góry dziękuje =)

0

Jeżeli piszesz, że logowanie ma być do strony to przy użyciu pakietów
Indy lub Synapse (i nie namawiam do żadnego, bo mnie tutaj haterzy
zatłuką) pobierz ze strony po protokole HTTP plik z danymi userów, a
w sumie polecam by był to jeden plik, a hasła w nim były szyfrowane
na przykład MD5. Taki plik najlepiej pobierać do TMemoryStream, po
czym sparsować go, uzyskując listę użytkowników i ich hasła w MD5,
bo nie napisałeś najważniejszego co zakłada te konta - lecz pewnie to
jakiś skrypt php użyleś do tego, także szyfrowanie MD5 jest możliwe.
Komponenty jakie byś musiał użyć to jak wspomniałem Indy i IdHttp
albo Synapse, i THttpSend. Do tego moduł do MD5 do znalezienia w
google, a do sparsowania tekstu z pliku tekstowego z danymi userów
to polecam ten moduł http://www.mediafire.com/?czhw3mmzjyn - a
gotową listę możesz dodać w postaci klasy typu TObject do dowolnej
kontrolki przechowującej dane TStrings, gdyż pozwalają one również
na przechowywanie obiektów. Przykładowe kody są w google a same
pakiety mają dokumentację i przykłady. Nie opisuję tutaj nic więcej,
bo musiał bym Tobie wskazać konkretny pakiet, jakiego ja używam,
a wielu ludzi na tym forum mnie za to nienawidzi. Także skończę :)
Na koniec dodam tylko, że podane przez usera hasło szyfrujesz MD5
po czym porównujesz je z tego z listy zawartej w pliku, jesli oba są
takie same to pozwalasz użytkownikowi wejść do aplikacji, jeżeli nie
to wyświetlasz komunikat o błędzie. Nic skonplikowanego jak widać.

0

Szyfrowania nie potrzebuję,
To nie jest żaden płatny ani tajny program :)
Starczy by Program z Delphi pobrał dwa pliki login.txt i haslo.txt
I spradził login.txt z Label1 i haslo.txt z label2. Tylko problem w tym że z delphi bawię się od niedługo i nie zbyt wiem jak się do tego zabrać :) na razie koduję prostą stronę by było z czego pobrać dane, możesz dać przykładowy kod pobrania i sprawdzenia, przeanalizuje go i myślę ze coś z tego wypocę

0

a czemu nie zrobisz tego na SQL?

0

Po prostu ręce opadają. Przecież pisałem ogarnij się i użyj google. Ech, masz i tak się nic nie nauczysz.
Tylko do haterow: podaję rozwiązanie w znienawidzonym przez was Synapse - a nie w Indy, które tak
kochacie, bo tak mi wygodniej. Do pytającego: przecież jakbyś sobie zobaczył moje posty tytaj albo w
parę chwil skorzystał z wyszukiwarki wiedział byś wszystko. Nie wiem czy 17 w nicku to Twój wiek, ale
jeżeli tak "ambitną" i "pracowitą" mamy młodzież to dziękuję, zawsze będziemy sto lat za murzynami.
Więcej informacji znajdziesz w dokumentacji Synapse oraz przykładach. A dalej kombinuj już samemu.
I oczywiście jeśli Twój plik nie zawieta danych tekstowych, to nie ma sensu dać go do takiej zmiennej.

//...
uses
  httpsend;

procedure TForm1.Button1Click(Sender: TObject);
const
  Opera_UserAgent = 'Opera/9.80 (Windows NT 5.1; U; pl) Presto/2.6.30 Version/10.63';
var
  FPage : string;
  SynHttp : THttpSend;
begin
  SynHttp := THttpSend.Create;
  SynHttp.UserAgent := Opera_UserAgent;
  SynHttp.HTTPMethod('GET', 'http://jestes-bardziej-leniwy-od-kulawa-tygrysa.pl/googluj_i_kombinuj_sam_a_pozniej_pytaj/ty_leniu.ech');
  SetLength(FPage, SynHttp.Document.Size);
  SynHttp.Document.Read(Pointer(FPage)^, Length(FPage));
  SynHttp.Free;
  ShowMessage(FPage);
end;

EDIT: puchi mnie ubiegł. Wiadomo, że w takim przypadku lepiej jest operować na SQL'u, bo
są w google nawet przykłady w php jak dodawać użytkowników do bazy i później logować się.
No ale jak się pytający uparł na pobieranie pliku po HTTP o podaję taki przykład - na szybko.

1 użytkowników online, w tym zalogowanych: 0, gości: 1