Hallo ,
ich habe jetzt immer mit "Dini" gearbeitet und jetzt habe ich von einem
Dateisystem gehört das noch schneller sein soll es soll "SII" heißten leider finde
ich nichts über die Suchfunktion gefunde. Und meine Frage ist jetzt gibt es hier überhaupt schon ein
Tutorial dazu ? Und hat jemand die Include ?
Pixel
SII ??
- Micktor
- Geschlossen
- Erledigt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
-
Danke ,
Nur ich weiss jetzt nicht wie ich etwas laden kann
kannst du mir das vielleicht erklären ? -
new Stringausgabe[128];
INI_Open("orgasmus.kp"]);
INI_ReadString(Stringausgabe,"stringdingwing",128)
new orgasmus1 = INI_ReadInt("Orgasmus1");
new orgasmus2 = INI_ReadFloat("Orgasmus3");
INI_Close(); -
muss man die Datei immer schließen wenn man alles geladen hat ?
-
Jaaa solltes du immer machen =)
weil kann sonst sein das sonst kein zugriff mehr auf die datei möglich ist =) -
INI_ReadString(variable,"key",MAX_SIZE); // MAX_SIZE muss die länge des Strings enthalten
Was muss MAX_SIZE sein das verstehe ich nicht ganzGib mal deine ICQ Nummer dann könntets du mir da weiter helfen
-
INI_ReadString(variable,"key",MAX_SIZE); // MAX_SIZE muss die länge des Strings enthalten
MAX_SIZE ist die Länge von den String ! ich habe den auf normal 128 stehen okey okey die Ressoucen sparer bla bla bla !
du musst MAX_SIZE einstellen als eine Zahl wie lang des Wort ist was du aus der Datei ziehen willst !z.b
DATEI : Test=Hallo << Hallo hat 5 Buchstaben also
INI_ReadString(variable,"Test",5);
sollte ihrgendwie helfen !
-
genau danke und
variable ist der Speicher ort oder ??
also so
new Save[64];
format(Save,sizeof(Save),"Spieler/%s.ini",GetName(playerid));
if(strcmp(inputtext,INI_ReadString(Save,"Passwort",16) == 0)//Passwort darf bis zu 16 stellen haben
würde das so gehen ? -
No da du save überschreibst !
INI_Open("spieler/DATA[ID].du"]);
new [color=#ff0000]passwort[/color][128];
INI_ReadString([color=#ff0000]passwort[/color],"PASSWORT",128)if(strcmp([color=#ff0000]passwort[/color],inputtext,true)==0)
-
Ich hab hier paar funktionen erstellt die eventuell sich bei dir als nützlich erweisen könnten.
Weniger Variablen beim Datenspeicher System.
// Edit:
Wen du was in eine Datei schreiben willst vergiss nie am ende INI_Save(); -
Wie erstellt man eine neue Datei ?
also in einem Register Dialog//edit habe jetzt mal meine Register und Login Dialogs fehler frei hinbekommen aber irgendwie wird das
Password nicht gespeichert new Save[128];
format(Save,sizeof(Save),"Spieler/%s.ini",GetName(playerid));
if(dialogid == DIALOG_REG)
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,DIALOG_REG,DIALOG_STYLE_INPUT,"Registrieren","Willkommen auf dem Server.\nBitte lege ein Account an.\nGebe dazu ein dein gewünschtes Passwort ein.","Weiter","");
return SendClientMessage(playerid,COLOR_RED,"Das Passwort ist zu kurz");
}
INI_WriteString(Save,inputtext);
SpielerDaten[playerid][Eingeloggt] = 1;
INI_Save();
INI_Close();
}
if(dialogid == DIALOG_LOGIN)
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,DIALOG_REG,DIALOG_STYLE_INPUT,"Registrieren","Willkommen auf dem Server.\nBitte lege ein Account an.\nGebe dazu ein dein gewünschtes Passwort ein.","Weiter","");
return SendClientMessage(playerid,COLOR_RED,"Das Passwort ist zu kurz");
}
if(INI_Open(Save))
{
if(INI_ReadString(inputtext, GetName(playerid), MAX_PLAYER_NAME))
{
SpielerDaten[playerid][Eingeloggt] = 1;
SpielerDaten[playerid][Adminlevel] = INI_ReadInt("Adminlevel");
SendClientMessage(playerid,COLOR_RED,"Login successful.");
}
else
{
SendClientMessage(playerid,COLOR_RED,"Incorrect Password.");
}
}
INI_Close();
return 1;
} -
So funktioniert es.
INI_Open(/*variable oder "name.txt/ini/Datei"*/)
INI_WriteString("Key",variable);
INI_Save(); -
und wie macht man eine neue Datei ??
INI_WriteString("Key",variable); Key ist der Name zb Passwort und variable wäre dann inputtext wenn ich es it Dialog macheDas hat sich erledigt jetzt habe ich ein neues Problem
hier mein Code vom Login Dialog
if(dialogid == DIALOG_LOGIN)
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,DIALOG_REG,DIALOG_STYLE_INPUT,"Registrieren","Willkommen auf dem Server.\nBitte lege ein Account an.\nGebe dazu ein dein gewünschtes Passwort ein.","Weiter","");
return SendClientMessage(playerid,COLOR_RED,"Das Passwort ist zu kurz");
}
if(INI_Open(Save))
{
INI_ReadInt("Adminlevel");
INI_Close();
}
return 1;
}
wie frage ich da jetzt ab ob inputtext = Passwort ist ? -
if(strcmp(inputtext,"Passwort",true) == 0) { /* was wen richtig? */ }
else /* Was wen nicht?*/ -
So sieht mein Login Dialog aus aber er sagt immer falsches Passwort
if(dialogid == DIALOG_LOGIN)
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Registrieren","Willkommen auf dem Server.\nName in der Datenbank gefunden.\nGebe dein Passwort ein um dich einzuloggen.","Weiter","");
return SendClientMessage(playerid,COLOR_RED,"Das Passwort ist zu kurz");
}
if(INI_Open(Save))
{
if(strcmp(inputtext,"Passwort",true) == 0)
{
SpielerDaten[playerid][Adminlevel] = INI_ReadInt("Adminlevel");
INI_Close();
SendClientMessage(playerid,COLOR_RED,"Erfolgreich DIALOG_LOGIN");
}
else
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Registrieren","Willkommen auf dem Server.\nName in der Datenbank gefunden.\nGebe dein Passwort ein um dich einzuloggen.","Weiter","");
return SendClientMessage(playerid,COLOR_RED,"Das Passwort war falsch");
}
}
return 1;
}
Könnt ihr mir helfen ? -
Gibst du den beim Loginfeld "Passwort" ein?
Wen nein is klar das die meldung dein passwort stimmt nicht erscheint den sieh mal auf diese Zeile:if(strcmp(inputtext,"Passwort",true) == 0)
-
Mein Passwort ist "Test"
Ich gebe in das Eingabefeld Test ein
Meldung Passwort ist falsch kommt.
Vielleicht liegt es auch an meinem Register Dialog if(dialogid == DIALOG_REG)
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,DIALOG_REG,DIALOG_STYLE_INPUT,"Registrieren","Willkommen auf dem Server.\nBitte lege ein Account an.\nGebe dazu ein dein gewünschtes Passwort ein.","Weiter","");
return SendClientMessage(playerid,COLOR_RED,"Das Passwort ist zu kurz");
}
if(INI_Open(Save))
{
INI_WriteString("Passwort",inputtext);
INI_WriteInt("Adminlevel",0);
INI_Save();
INI_Close();
SendClientMessage(playerid,COLOR_RED,"Erfolgreich DIALOG_REG");
}
} -
MENSCH -,-
Verstehe es doch endlich mal
if(strcmp(inputtext,"Passwort",true) == 0)der checkt op der inputtext == Passwort ist also muss inputtext = Passwort sein für ein Login nicht Test
if(strcmp(inputtext,"Passwort",true) == 0) <<<< Das Rote Makierte ist ein STRING -,- das ist BÖSE !
-
häää ??
Nein Spaß jetzt ist es mir klar geworden
also muss if(strcmp(inputtext,INI_ReadString(/*was soll dan hier hin ??*/,"Passwort",16)));
,true) == 0)
richtig sein oder ? -