[SAMMELTHREAD] Kleine Scripting Fragen
- Rafelder
- Unerledigt
-
-
Alles anzeigen
Hi Leute, kann mir mal kurz jemand noch einmal das mysql_function_query erklären? Verstehe es nicht so ganz nach dem Tutorial von der Seite hier. Jedenfalls ist mein Problem halt das wenn ich einfach nur fragen möchte ob der Account existiert oder nicht extra ein public erstellen möchte. Verstehe nämlich nicht wie ich das dann einbinden soll. Ich wollte nämlich dann abfragen:
if(CheckAccount(playerid) == 1)
Würde ja mit dem stock gut klappen. Aber mit dem stock und dem public? Weil so würde ich ja den stock aufrufen. Aber wie kann ich damit dann das public abfragen. Frage ich nur das public ab, dann wird der stock ja nicht ausgeführt. Hoffentlich hats jemand verstanden und kann mir helfen.
MFG und Danke im Voraus
Acrio
Man sollte wenigstens paar Kentnisse über SQL-Befehle haben.
new query[64],pName[MAX_PLAYER_NAME];
GetPlayerName(playerid,pName,MAX_PLAYER_NAME);
mysql_format(dbhandle,query,64,"SELECT `passwort` FROM `accounts` WHERE `spielername` = '%e' LIMIT 1;",pName);
mysql_tquery(dbhandle,query,"CheckAccount","i",playerid);
[tabmenu]
[tab='dbhandle ']
dbhandle = Ist die Verbindungskennung , welche du an eine variabel weitergibt mit
mysql_connect(HOST[], USER[], DATABASE[], PASSWORD[], PORT);
[tab='query']
Hier kommt dein SQL-Befehl den du an den MySQL Server senden möchtest rein
[tab=' CheckAccount']
Dies ist das Callback, welches aufgerufen wird sobald das gesendete query verarbeitet wurde
[tab='i']
Die jeweiligen Datentypen der Argumente
i,d = integer
s = string
f = float
x = hexdezimal
c = Für eine einzelnen Buchstaben (character)
[tab='playerid']
Somit wird die Funktion aufgerufen, da diese nur 1 Argument hat mit dem wert, welcher sich hinter playerid verbirgt.
[/tabmenu]
forward CheckAccount(playerid);
public CheckAccount(playerid) {
new res[2];
cache_get_data(res[0],res[1]);
switch(res[0]){
case false:{
print("Spieler nicht gefunden");
}
case true:{
print("Spieler gefunden");
}
}
return 1;
}mit cache_get_data wird zurückgegeben wie oft der Eintrag in der Datenbank vorkommt, sollte er nicht vorkommen so wird logischerweise 0(false) zurück geben.
Durch das LIMIT 1 im query wird nur nach einem Datensatz gesucht der die WHERE -Clausel erfüllt und somit kann in dem Fall auch maximal nur 1(true) zurück gegeben werden. -
Danke Prototype, die paar Kenntnisse habe ich eigentlich. Mit den alten mysql versionen kam ich super klar. Aber das Argument was einmal kam, das mit dem cache etc. alles etwas schneller wird wollte ich halt wechseln. Dann war ich halt am überlegen wie ich das machen soll mit dem callback. Naja, danke für deine Antwort...
-
Weiß einer wie die Standart Geld anzeige weg bekomme?
ohne TextDraw drüber machen?
gib es so eine möglichkeit ?! -
Weiß einer wie die Standart Geld anzeige weg bekomme? ohne TextDraw drüber machen?
gib es so eine möglichkeit ?!Weiß einer wie die Standart Geld anzeige weg bekomme? ohne TextDraw drüber machen?
gib es so eine möglichkeit ?!schau dir mal das an: SAMPFox - Über 90 neue Natives! Jetzt für Linux/XP!
-
Weiß einer wie die Standart Geld anzeige weg bekomme? ohne TextDraw drüber machen?
gib es so eine möglichkeit ?!schau dir mal das an: SAMPFox - Über 90 neue Natives! Jetzt für Linux/XP!
Danke
werde ich versuchen höhö -
Brauche mal Hilfe...
Durch das break, lässt der keine Waffen mehr fallen, ich benutze den break weil das sonst gespammt wird.for(new i_slot = 0, gun, ammo; i_slot != 12; i_slot++)
{
GetPlayerWeaponData(playerid, i_slot, gun, ammo);
if(gun != 0 && ammo != 0) CreateDroppedGun(gun, ammo, pPosX+random(2)-random(2), pPosY+random(2)-random(2), pPosZ);
format(string, sizeof(string), "* %s lässt seine Waffen fallen.",PlayerName(playerid));
ProxDetector(20, playerid, string, COLOR_PURPLE);
break;
}Kann wer helfen?
-
Ist es möglich den Chat für ne bestimmte zeit Unsichtbar zu machen ?
Es soll aber nicht gelöscht werden sondern einfach unsichtbar.Geht das ?
-
Wie mache ich es,dass man in in diesen 3d Text fährt und dann ein bestimmtes Auto bekommt? z.B.:
Man hat nen Sultan und fährt in 3D-Text '[Infernus]' und bekommt dann nen Infe? -
deshalb: SetPlayerSkin(playerid,101);
-
Hat jemand eine Idee,wie man machen könnte,dass wenn jemand als Beifahrer in ein Fahrzeug einsteigt zu einem bestimmten Interior geportet wird?
-
Hey ich suche das Plugin libmysqlclient.so.16 kann mir einer helfen, habe gegoogelt finde aber leider nix, was mir weiterhilft.
-
Hey ich suche das Plugin libmysqlclient.so.16 kann mir einer helfen, habe gegoogelt finde aber leider nix, was mir weiterhilft.
Welche MySQL Version verwendest du?
-
R7 von BlueG
-
Google einfach nach nem static plugin vom R7, dies beinhaltet die libary die du brauchst.
-
Gaaanz kurze Frag bez. MySQL.
Wenn man mysql_format() benutzt um einen Query zu formatieren, ist es da noch nötig vor der Formatierung, nen String zu escapen ? Weil es ja die %e Escape-Funktion in msql_format gibt, denke ich wäre das unnötig oder ?
Edit1. habs das hier übersehen. Wäre also geklärt.

Edit2. Edit1 editiert -
finde leider nix

hat einer diese datei Libmysql 16 von Planet Roleplay?.
-
Ok das wäre dann bei mir geklärt, wenn ich nun die San News Base betretet und dann rausgehe funktioniert alles.
Aber wenn ich beim Sfpd reingehe komme ich dann bei der San News Base wieder raus.
else if (IsPlayerInRangeOfPoint(playerid,4.0,2814.7673,973.4995,10.7500))// San News Enter
{
if(PlayerInfo[playerid][pLeader] == 9 || PlayerInfo[playerid][pMember] == 9 || IsACop(playerid))
{
SetPlayerPos(playerid,246.375991,109.245994,1003.218750);
SetPlayerInterior(playerid,10);
SetPlayerVirtualWorld(playerid, 6);
SetPlayerFacingAngle(playerid,2.5225);
}
}
else if (IsPlayerInRangeOfPoint(playerid,4.0,246.375991,109.245994,1003.218750))//San News Exit
{
if(PlayerInfo[playerid][pLeader] == 9 || PlayerInfo[playerid][pMember] == 9 || IsACop(playerid))
{
SetPlayerPos(playerid,2814.7673,973.4995,10.7500);
SetPlayerFacingAngle(playerid,222.1635);
SetPlayerInterior(playerid,0);
SetPlayerVirtualWorld(playerid, 0);
}
}
else if(IsPlayerInRangeOfPoint(playerid,4.0,-1605.6937,711.6380,13.8672))//SFPD/LSPD /enter
{
SetPlayerPos(playerid,246.3121,109.1336,1003.2188);
SetPlayerInterior(playerid,10);
SetPlayerFacingAngle(playerid,358.7832);
}
else if (IsPlayerInRangeOfPoint(playerid,4.0,246.6916,109.3309,1003.2188))//SFPD/LSPD /exit
{
SetPlayerPos(playerid,-1605.6937,711.6380,13.8672);
SetPlayerInterior(playerid,0); -
Gibt es ein Codeschnipsel in dem man ein bestimmtes Zeichen aus einem String löschen kann.
Beispiel:
new kommastr[50];
format(kommastr,sizeof(kommastr),"Hallo, ich, heiße, Simon");
und nun will man alle Kommas raus haben und macht zum Beispiel:
Chardel(kommastr,',');
und der neue string ist: "hallo ich heiße Simon" -
Alles anzeigen
Gibt es ein Codeschnipsel in dem man ein bestimmtes Zeichen aus einem String löschen kann.
Beispiel:
new kommastr[50];
format(kommastr,sizeof(kommastr),"Hallo, ich, heiße, Simon");
und nun will man alle Kommas raus haben und macht zum Beispiel:
Chardel(kommastr,',');
und der neue string ist: "hallo ich heiße Simon"
strdel(kommastr,strfind(kommastr,","),strfind(kommastr,",")+1);

