Frage von Juniorbrain, 4

Ich möchte ein Registriere und ein Einlogge Programm für mein Chat Programm erstellen. Kann aber keine Dateien öffnen bzw. Schließen. Bitte u Hilfe!?

Zu Erst einmal eine Information. Ich arbeite gerade mit Game Maker da ich die Image Editoren und Level Editoren ganz schick und recht einfach finde.

Ich brauche einen Anmelde und Registriere Screen für meine Chat App, weil jeder sein eigenes Profil haben soll und so weiter... Auf jeden Fall bin ich jetzt schon so weit das man den Benutzernamen und das Passwort eingeben kann. Aber wie mache ich das jetzt mit dem Hochladen auf den Server? Zuerst habe ich an Text Dateien gedacht aber ich muss ja für jeden Benutzer eine Erstellen. Also:

{

if file_exists("User"+global.name)

{

if not file_text_open_write("User"+global.name)

    {
         file_text_open_write("User"+global.name)
         show_message("Fail")
    }
else
    {
         show_message("No Fail")
         file_text_open_write("User"+global.name)
         file_text_write_string("User"+global.name,global.passwort)
     }
}

Aber dann sagt er das die datei nicht offen zum Schreiben ist!

Bitte um Hilfe.

Antwort
von regex9, 4

Bezüglich des Fehlers

Lies dir einmal die Begrenzungen durch und gleiche mit deinem Programmzustand ab: https://docs.yoyogames.com/source/dadiospice/002\_reference/file%20handling/file...

Im Hinblick auf deinen vorgestellten Programmcode würde ich das if-else umdrehen. Außerdem solltest du für die file_text_write_string-Funktion auch die Id als Argument mitgeben, die du zuvor von file_text_open_write auch zurückbekommst.

if file_exists("User" + global.name) {
  var file = file_text_open_write("User" + global.name);

if -1 != file { show_message("Success") file_text_write_string(file, global.passwort); } else { show_message("Fail") }
file_text_close(file);
}

(So wird es ebenso in der Dokumentation gezeigt: https://docs.yoyogames.com/source/dadiospice/002\_reference/file%20handling/file...).


Bezüglich des Konzepts

Für jeden Nutzer eine extra Datei anzulegen, wäre keine gute Idee. Schreibe lieber alle Daten in eine einzelne Datei (getrennt durch Zeilenumbruch o.ä.). Grundsätzlichen würde sich eine Datenbank am besten eignen. Inwiefern so ein Verfahren vom Game Maker Studio (oder irgendwelchen Erweiterungen) unterstützt wird, weiß ich nicht. Sollte diese Möglichkeit ausscheiden, wäre die nächstliegende Option eine XML- oder eine CSV-Datei.

Die Daten solltest du dabei nicht unverschlüsselt auf den Server speichern, das halte ich für zu unsicher.

Keine passende Antwort gefunden?

Fragen Sie die Community