Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Einfacher Login (https://www.delphipraxis.net/99453-einfacher-login.html)

N30N 12. Sep 2007 13:34


Einfacher Login
 
Hi!

Ich hab eben ein Programm geschrieben mit einen einfachen Login.

Hier erstellt man einen Account:

Delphi-Quellcode:
procedure TForm1.AbspeichernClick(Sender: TObject);
begin
  memo1.lines.add (edit6.text);
  memo1.lines.add (edit7.text);
  memo1.lines.add (edit8.text);
  begin
    if FileExists(edit6.text) then
      begin
        DeleteFile(edit6.text);
        showmessage ('Altes Profil wurde gelöscht.')
      end;
    Memo1.Lines.SaveToFile(ExtractFilePath(ParamStr(0)) + edit6.text);
  end;
end;
Und hier logge ich mich ein:

Delphi-Quellcode:
procedure TForm1.LoginClick(Sender: TObject);
begin
label9.caption := ('');
memo1.clear;
  if FileExists(ExtractFilePath(ParamStr(0)) + edit5.text) then
    begin
      Memo1.Lines.LoadFromFile(ExtractFilePath(ParamStr(0)) + edit5.text);
      Name := Memo1.Lines.Strings[0];
      Handycap := Memo1.Lines.Strings[1];
      Platzvorgabe := Memo1.Lines.Strings[2];
      label9.caption := ('Profil wurde geladen.')
    end
  else
  begin
    MessageBox(0,'Profil wurde nicht gefunden!','Fehler',MB_OK or MB_ICONERROR);
    label9.caption := ('Profil nicht vorhanden.')
  end;
end;


Problem ist jetzt folgendes:

Wenn ich das Profil abspeichere, wird eine Datei in den Ordner geschrieben, mit dem richtigen Dateinamen und dem richtigen Inhalt. Ich kann hier auch "Hallo Welt" oder "HalloWelt" eingeben, es funktioniert sowohl mit als auch ohne Leerzeichen.Also ist bis hierhin alles super.

Wenn ich versuche zu laden, kann ich allerdings nur Profile laden, welche ohne Leerzeichen sind. Sobald ich Profile mit nem Leerzeichen lade, kommt folgendes:

http://slave1.imagebeaver.com/files/...lphifehler.jpg

"uda puda" ist in dem Fall nur ein sinnloser Username der mir grade in den Kopf gekommen ist. :roteyes:

Ansonsten seh ich im Codefenster, so nenn ich es mal, keine weiteren Fehlerbeschreibungen. Allerdings springt ein grüner Pfeil auf folgende Zeile in der "Laden" Syntax:

Delphi-Quellcode:
Handycap := Memo1.Lines.Strings[1];



Name, Handycap und Platzvorgabe sind übrigens globale Variablen des Typs "string"
Delphi-Quellcode:
var
  Form1: TForm1;
  Name,Handycap,Platzvorgabe : string;
Sieht jemand meinen Fehler oder hat ne Lösung?

Danke! :)

DeddyH 12. Sep 2007 13:37

Re: Einfacher Login
 
Du speicherst 2 Zeilen ab und versuchst, auf 3 Zeilen zuzugreifen.


//Edit: Kommando zurück, hab mich verguckt. Lass Dir doch mal die Anzahl der geladenen Zeilen zurückgeben.
Delphi-Quellcode:
if FileExists(ExtractFilePath(ParamStr(0)) + edit5.text) then
    begin
      Memo1.Lines.LoadFromFile(ExtractFilePath(ParamStr(0)) + edit5.text);    
      ShowMessage(inttostr(Memo1.Lines.Count));exit; //diese Zeile kannst Du später wieder löschen
      Name := Memo1.Lines.Strings[0];
      Handycap := Memo1.Lines.Strings[1];
      Platzvorgabe := Memo1.Lines.Strings[2];
      label9.caption := ('Profil wurde geladen.')
   end
...
//Edit2: Nachdem ich mir die Fehlermeldung nun doch genau angeschaut habe: benenne mal die Variable Name in sName um.

patti 12. Sep 2007 14:00

Re: Einfacher Login
 
Liegt wohl eher dadran, dass "name" ein reservierter Bezeichner ist. Lieber "User_Name" oder ähnliches nehmen ;-)

P@Tti

Edit1: Mist, Edit2 von DeddyH war schneller :roll: :-D

N30N 12. Sep 2007 14:33

Re: Einfacher Login
 
Super! :]


Das wars, hat geklappt!

SirThornberry 12. Sep 2007 14:42

Re: Einfacher Login
 
könntest du bitte das Bild im ersten Beitrag anhängen so das es auch noch verfügbar ist wenn du es von dem Server löschst.
So ist der ganze Beitrag nur noch halb so viel wert wenn das Bild von deinem Server verschwindet und somit nicht mehr hier vorhanden ist.


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:28 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz