Gefällt mir. Die Server.cfg sollte man vielleicht noch im CP verändern können.
Beiträge von Cheevy.Shakur
-
-
Habe das Plugin verwendet, welches sich in deinem Download befindet.
Code
Alles anzeigen[21:26:16] Loading plugin: mysql.so [21:26:16] Failed (libssl.so.0.9.8: cannot open shared object file: No such file or directory) [21:26:16] Loading plugin: crashdetect.so [21:26:16] crashdetect v4.8.4 is OK. [21:26:16] Loaded. [21:26:16] Loaded 1 plugins. [21:26:16] [21:26:16] Filterscripts [21:26:16] --------------- [21:26:16] Loaded 0 filterscripts. [21:26:16] [debug] Run time error 19: "File or function is not found" [21:26:16] [debug] mysql_debug [21:26:16] [debug] mysql_connect [21:26:16] [debug] mysql_ping [21:26:16] [debug] mysql_real_escape_string [21:26:16] [debug] mysql_query [21:26:16] [debug] mysql_store_result [21:26:16] [debug] mysql_num_rows [21:26:16] [debug] mysql_free_result [21:26:16] [debug] mysql_fetch_row_format [21:26:16] [debug] mysql_fetch_int [21:26:16] Script[gamemodes/XYZ.amx]: Run time error 19: "File or function is not found" [21:26:16] Number of vehicle models: 0
Woran liegt das? Falsches Plugin? Der MySQL Error sollte erstmal außer Raum stehen.
-
Hat jemand noch die .inc und das Plugin für Linux? Die anderen Links sind down oder die Windows Versionen.
-
Jetzt ist es irrelevant welches Passwort ich eingebe, ich kann mich immer einloggen.
-
Das funktioniert nun alles soweit. Mein Passwort ist jedoch richtig, wird aber als falsch angezeigt?
case DIALOG_LOGIN:
{
if(!response) return Kick(playerid);
format(key, 50, "%s", inputtext);
mysql_escape_string(Spielername(playerid), Spielername(playerid)), mysql_escape_string(key, key);
format(query, sizeof(query), "SELECT * FROM Accounts WHERE Username='%s' AND Password='%s'", Spielername(playerid), key);
mysql_tquery(Handle, query, "OnPasswordResponse", "i", playerid);
}forward OnPasswordResponse(playerid);
public OnPasswordResponse(playerid)
{
new query[256],tag, monat, jahr, datum[16],string[128];
new num_fields, num_rows;
cache_get_data(num_rows, num_fields);
if(num_rows == 0)
{
//Passwort falsch
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD, ""#SERVERNAME": Login", "Du hast ein falsches Passwort eingegeben\n\nDein Account wurde in der Datenbank gefunden.\nBitte gebe nun das Passwort ein, welches du bei der Registrierung gewählt hast.\n\nWir wünschen dir viel Spaß auf "#SERVERNAME"","Login","Abbrechen");
}
else
{ //Was nach einloggen passiert
SpielerInfo[playerid][pEingeloggt] = 1;
LoadAccount(playerid);
SpawnPlayer(playerid);
SetPlayerColor(playerid,COLOR_WHITE);
//Letztes Login wird in die Tabelle gespeichert
getdate(tag, monat, jahr);
format(datum, sizeof(datum), "%02d.%02d.%d", tag, monat, jahr);
format(query, sizeof(query), "UPDATE Accounts SET LastLogin='%s' WHERE Username='%s'",datum, Spielername(playerid));
mysql_tquery(Handle, query);
format(string,sizeof(string),"Du hast dich als %s eingeloggt.",Adminrang(playerid));
SendClientMessage(playerid,-1,string);
}
return 1;
} -
Der Score ist ja bei 1, wollte das Level eh über den Score abfragen.
-
Du setzt Eingeloggt auf 0, vor SpielerSpeichern, sprich du returnst dann:
public OnPlayerDisconnect(playerid, reason)
{
if(SpielerInfo[playerid][pEingeloggt] == 1)
{
SpielerSpeichern(playerid);
SpielerInfo[playerid][pEingeloggt] = 0;
}
return 1;
}
Hatte ich vorhin schon geändert, gibt leider immer noch das Problem. -
Hab den vorherigen Post überlesen, sorry.
stock SpielerSpeichern(playerid)
{
new query[256];
if(SpielerInfo[playerid][pEingeloggt] == 0)return 1;
mysql_escape_string(Spielername(playerid), Spielername(playerid));
format(query, sizeof(query), "UPDATE Accounts SET Eingeloggt='%i',Level='%i',Adminlevel='%i' WHERE Username='%s'",SpielerInfo[playerid][pEingeloggt],GetPlayerScore(playerid),SpielerInfo[playerid][pAdminlevel], Spielername(playerid));
mysql_tquery(Handle, query);
return 1;
} -
Werte sind auf 1 und ich setze den Wert nur beim verlassen des Servers auf 0.
public OnPlayerDisconnect(playerid, reason)
{
//Account Speicherung nach verlassen des Servers
if(SpielerInfo[playerid][pEingeloggt] == 1)
{
SpielerInfo[playerid][pEingeloggt] = 0;
SpielerSpeichern(playerid);
}
return 1;
} -
Funktioniert alles soweit. Es gibt jedoch eine Sache, die mich schon lange beschäftigt.
Wie man in meinem Register System kann, setze ich den Wert "Eingeloggt" und "Level" per SpielerInfo auf 1.
Dies funktioniert aber jedoch nicht. Der Query z.B funktioniert einwandfrei. Wieso kann ich nach der Registrierung kein SpielerInfo zum Werte setzten verwenden?
case DIALOG_REGISTER:
{
new tag, monat, jahr, datum[16];
if(!response) return Kick(playerid);
if(strlen(inputtext) < 6) return ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT, ""#SERVERNAME": Registrierung", "Es wurde kein Account unter diesen Namen in der Datenbank gefunden.\nBitte gebe nun dein gewünschtes Passwort ein.\nNach der Registrierung folgt eine Einführung in unseren Server.\n\nWir wünschen dir viel Spaß auf "#SERVERNAME"", "Registrieren", "Abbrechen");
format(key, 50, "%s", inputtext);
mysql_escape_string(Spielername(playerid), Spielername(playerid)), mysql_escape_string(key, key);
getdate(tag, monat, jahr);
format(datum, sizeof(datum), "%02d.%02d.%d", tag, monat, jahr);
format(query, sizeof(query), "INSERT INTO Accounts (Username, Password,Registrierung,LastLogin) VALUES ('%s',MD5('%s'),'%s','%s') ", Spielername(playerid), key,datum,datum);
mysql_tquery(Handle, query);
SendClientMessage(playerid, -1, "Dein Account wurde erstellt.");
SetPlayerScore(playerid, 1);
SpielerInfo[playerid][pEingeloggt] = 1;
SpielerInfo[playerid][pLevel] = 1;
SetPlayerColor(playerid,COLOR_WHITE);
} -
Hallo,
bei mir wird kein Account in der Datenbank erstellt.
Die MySQL Log sagt mir folgendes...SQL[17:38:57] [DEBUG] mysql_tquery - connection: 1, query: "INSERT INTO (Username, Password,Registrierung) VALUES ('Shine',", callback: "(null)", format: "(null)" [17:38:57] [DEBUG] CMySQLQuery::Execute[] - starting query execution [17:38:57] [ERROR] CMySQLQuery::Execute[] - (error #1064) You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '(Username, Password,Registrierung) VALUES ('Shine',MD5('testpw'),'2014.12.15')' at line 1 [17:38:57] [DEBUG] CMySQLQuery::Execute[] - error will be triggered in OnQueryError
Würde mich über Hilfe freuen.
Gruß,
Jean -
Suche weiterhin, da Fabian nur Probleme mit seinen Server hat..
//edit: Push nach über 48 Stunden
-
Schleife durch alle Spieler -> ist Spieler in der gleichen Fraktion -> Nachricht senden
-
Hat jemand das Plugin für Linux?
-
Hallo Community,
derzeit bin ich auf der Suche nach einen Testserver für mein Projekt.
Ich möchte hierbei nicht auf Hamachi oder andere lokale Netzwerke zugreifen, sondern das ganze direkt ins Internet einbinden.Für den Server benötige ich maximal 10 Slots sowie eine funktionierende MySQL Verbindung.
Aufgrund das dies ein Testserver ist, wird er auch nur zu reinen Testzwecken genutzt.
Hierbei ist vielleicht zu erwähnen, dass das Script gerade in der Entwicklung ist und noch längst nicht fertig ist.Eine Gegenleistung kann ich leider nicht vollbringen, dennoch hoffe ich auf den ein oder anderen Interessenten.
Gruß,
Jean -
Eure Meinung. Suche dennoch weiter nach einem geeigneten TeamSpeak Server.
-
Vielleicht möchte ich aber meinen eigenen TeamSpeak Server haben. Wo liegt das Problem?
-
Hallo,
ich bin derzeit auf der Suche nach einen TeamSpeak³ Server für unsere SA:MP Familie.
Wir spielen täglich sehr aktiv SA:MP und benötigen dafür nur einen Server, der nicht nach 3-4 Wochen offline ist.
Aufgrund unser ständigen Aktivität (jeden Tag) wird der TeamSpeak nicht leer sein, sondern immer von uns besucht werden.
Ich kenne mich mit TeamSpeak Servern aus, daher übernehme ich das hier.Ich würde mich freuen, wenn sich jemand findet, der uns bei dieser Sache helfen möchte.
LG,
Jean//e: Push nach über 48 Stunden
-
Ich, Jean_Pacino nehme an lollipop 's Winterspecial 2014 teil und verifiziere mich somit zur Teilnahme an dem Gewinnspiel.
-
Word ist ja sehr klasse, wenn die meine Bankdaten wissen wollen.
Hat jemand eine Seite, wo man keine Bankdaten angeben muss?