MySQL (Installation, Zugriff, Einstellungen, Login & Register Beispiel)
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
-
-
Was ist das für ein Script ?
-
Blankes ist nur das Login&Register drin
-
Post mal die include Liste von deinem Script und die server.cfg
-
Zitat
echo Executing Server Config...
lanmode 0
rcon_password 123
maxplayers 32
port 7777
hostname SA-MP 0.3 Server
gamemode0 Blaa 1
filterscripts gl_realtime
announce 0
plugin mysql
query 1
weburl http://www.sa-mp.com
onfoot_rate 40
incar_rate 40
weapon_rate 40
stream_distance 300.0
stream_rate 1000
maxnpc 0
logtimeformat [%H:%M:%S] -
hmm .. die include Liste ? (Also alle Einträge mit: #include <*****>)
Und du hast im Plugin Ordner auch die mysql.dll ?
-
Zitat
#include <a_samp>
#include <a_mysql>Jo habe ich, hat wer vllt nicht ein fertiges login®ister system script mit mysql?
Habe auch das fertige von hier schon genommen das buggt ja so
-
Und da wo du die samp-server.exe hast ist auch die libmySQL.dll oder ?
-
Alles klar hab es hin bekommen habe in der server.cfg "plugins mysql" in der falschen reihe geschrieben
-
@ Sorato vielen dank
Problem... ich habe die Datenbank Testserver genannt, die habe ich auch beim den "logindaten" im Pawnscript eingefügt...
sonst würde der Server ja auch nicht starten oder ?Also wenn ich auf den Server connecte dann funktioniert auch alles ... das Register Fenster ist auch da, wenn ich jetzt aber auf Register klicke schließt sich das Fenster und ich kann einfach laufen...
wenn ich dann also disconnecte und wieder connecte muss ich mich nochmal erneut registrieren.Ich habe das Pawn Script aus der Pastebin sogar nochmal zur Kontrolle heraus kopiert und bei mir eingefügt und das MySQL Script ist auch okay.
Ich benutze die aktuelle Xampp Version, liegt es evtl. daran ?Mfg Asmol
Ps. wenn ich den MySQL Server über Xampp starte, meldet er mir folgendes vorher..
//edit 1 Beitrag geleert weil Problem gelöst
//edit 2 Beitrag geschrieben wegen Problem
//edit 3 Busymeldung bei Xampp -
Hi, ich hab versucht mit Hilfe von mysql_insert_id die Accountzeile rauszufinden, die der Spieler gerade erstellt hat. Aber ich denke, dass sich mysql_insert_id auf das gesamte MYSQL-System bezieht und das es somit Probleme gibt wenn mehrere Spieler, auf dem Server, Daten in und aus der Mysql-Datenbank laden. Gibt es eine Möglichkeit diese Abfrage auf einen Spieler oder eine Funktion im Script zu beschränken, z.b. nur für diese eine Person zu schauen unter welcher ID er gerade arbeitet?
-
wenn ich was mit dein GetString auslesen lasse geht das nicht kommt ein errror
stock mysql_GetString(Table[], Field[], Where[], Is[])
{
new query[128], Get[128];
mysql_real_escape_string(Table, Table);
mysql_real_escape_string(Field, Field);
mysql_real_escape_string(Where, Where);
mysql_real_escape_string(Is, Is);
format(query, 128, "SELECT %s FROM %s WHERE %s = '%s'", Field, Table, Where, Is);
mysql_query(query);
mysql_store_result();
mysql_fetch_row(Get);
return Get;
}
error 006: must be assigned to an array -
Zeig mal wie dus benutzt, warscheinlich ist einer der parameter kein string.
-
so benutze ich es Carlist[playerid][Schild] = mysql_GetString("autohaus", "AH_Nummernschild", "AH_Name", pDaten[playerid][pNames]); und es sol halt buchstaben auslesen
Wenn eienr die Lösung weis bescheid sagen
-
Ich habe auch das Problem, dass der bei mir nicht den Wert in die MySQL Datenbank setzt...
habe alles so gemacht wie es im tut steht.... -
Gut erklärt , Daumenhoch
PS: Da fehlt ein ";"
Zitat
und fügen dort die Funktion
PAWN Quelltext
1
SavePlayer(playerid)ein. Damit wird der Spieler beim Ausloggen gepseichert.
Sonst alles okeydynamic
-
Habe ich ja alles...
aber er speichert es einfach nicht.. -
Sehr schönes Tutorial.
Hier noch ein Tipp von mir:
Für suchfelder (was bei dir der Name ist) empfehle ich einen Trigger zu setzen, zbsp einen Primary Key.
Für Root Server ist es empfehlenswert Mysql Caching anzuschalten.Durch diese beiden änderungen, erzielt man einen Mysql Performancegewinn von über 60% ab der 2ten abfrage.
-
Kann es sein das man keinen Werd unter -1 auslesen lassen kann damit ?
also wenn man Bargeld im Minus hat dann speichert er es. aber kann es nicht auslesen sprich es wird auf -1 Gesetzt.z.B. ich Logge mich ein. Werde eingespert und habe dadurch -5000$ auf der hand. loge mich aus und loge mich neu ein und habe nur noch -1$ auf der hand.
Hat niemand eine Lösung ? -
wenn ich was mit dein GetString auslesen lasse geht das nicht kommt ein errror
stock mysql_GetString(Table[], Field[], Where[], Is[])
{
new query[128], Get[128];
mysql_real_escape_string(Table, Table);
mysql_real_escape_string(Field, Field);
mysql_real_escape_string(Where, Where);
mysql_real_escape_string(Is, Is);
format(query, 128, "SELECT %s FROM %s WHERE %s = '%s'", Field, Table, Where, Is);
mysql_query(query);
mysql_store_result();
mysql_fetch_row(Get);
return Get;
}
error 006: must be assigned to an arrayIch habe ein ähnliches Prob
SpielerInfo[pID][Ticketaussteller] = mysql_GetString("accounts", "Ticketaussteller", "Name", SpielerInfo[pID][Name]);
Das Error:
C:\Users\Nikolai\Desktop\ServerSamp\gamemodes\MySQL(Test).pwn(220) : error 047: array sizes do not match, or destination array is too smallpls help.
MfG Ber912 -