Üzenetek megjelenítése

Ez a szekció lehetővé teszi a felhasználó által írt összes hozzászólás megtekintését. Vedd figyelembe, hogy csak azokba a fórumokba írt hozzászólásokat látod, amelyekhez hozzáférésed van.


Üzenetek - hegdavid95

Oldalak: 1 ... 4 5 [6] 7 8 ... 26
76
Segítségkérés / MYSQL JOIN
« Dátum: 2012. július 19. - 15:53:24 »
a lekérés az amit te adtál :D

77
Segítségkérés / MYSQL JOIN
« Dátum: 2012. július 19. - 12:03:28 »
Még így sem igazán tetszik neki
[11:38:14] errorid: 1054, error: Unknown column \'Players2.Name\' in \'on clause\'
[11:46:10] errorid: 1064, error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near \'LIKE \'194.38.112.237\' WHERE `RegID` = 1\' at line 1

Dupla hozzászólás automatikusan összefûzve. ( 2012. július 19. - 12:04:31 )

Egyébként köszönöm szépena részletes leirást értem :D

78
Segítségkérés / MYSQL JOIN
« Dátum: 2012. július 18. - 20:39:27 »
Értem tökéletesen leírtad köszönöm szépen :)
Esetleg ha nem nagy kérés elmagyaráznád a három féle JOIN között a különbségeket meg hog ymelyiket milyen helyzetekben alkalmaznak? Ez már csak puszta kiváncsiság :D

Dupla hozzászólás automatikusan összefûzve. ( 2012. július 18. - 21:44:55 )

Még annyit kérhetnék, hogy leellenörizd, hogy ebben mi lehet a hiba?
 

format(query, sizeof(query), \"SELECT * FROM \'Players\' INNER JOIN \'Players2\' ON (\'Players\'.\'Name\' = \'Players2\'.\'Name\') WHERE \'Players\'.\'Name\' LIKE \'%s\' AND \'Players\'.\'IP\' LIKE \'%s\'\", Name(playerid), IP);

 
Errorid:1064
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near \'.\'RegID\' FROM \'Players\' INNER JOIN \'KihivasokRekordok\' ON (\'Players\'.\'Name\' = \'P\' at line 1

79
Segítségkérés / MYSQL JOIN
« Dátum: 2012. július 18. - 14:29:27 »
Viszont azzal az a probléma, hogy nem egyeznek meg az oszlopok számai

Dupla hozzászólás automatikusan összefûzve. ( 2012. július 18. - 14:30:02 )

de végülis nem olyan fontos hogy külön sorba legyenek, lehet a ciklust inditani akármiylen számról

80
Segítségkérés / MYSQL JOIN
« Dátum: 2012. július 18. - 14:23:51 »
Üdv!
Azt szeretném megoldani, hogy van két tábla. Mindkét táblába más adatokat tárolunk de a két táblában azonos, hogy minden sornak van egy párja a másik táblában. Konkrétan mind a két táblában a sorok játékosokat jelölnek. Azért kell két külön tábla, mert az egyik táblának az oszlopai dinamikusak ezért egyszerûbb, ha külön táblában vannak.
A gond csak az, hogy szeretném egy query ben lekérdezni az adatokat Belépéskor, mert úgy jóval egyszerûbb lenne az új pluginban a THREAD-ok miatt.
Szóval.
Adott két tábla:
Players: adat1|adat2|adat3
Players2: adatA|AdatB|AdatC|AdatD|AdatE
Úgy szeretném ennek a két táblának az adatait lekérni, hogy a cache_get_row nál 0. sorba a Players táblába levö adatokat adja 1. sorba pedig a Players2 adatait.
Ez azért szükséges, mert a Players2 adatait ciklussal kell PV arokba tölteni, mivel nincs meghatározva, hogy konkrétan hány oszlop is van az adott sorban.
Én arra gyanakszom, hogy a JOIN függvényre lesz szükségem, de ennek használatában még eléggé tapasztalatlan vagyok.
Remélem érthetõen fogalmaztam :D

81
Leírások/Útmutatók / MYSQL több lekérdezés egy query-ben
« Dátum: 2012. július 18. - 11:56:24 »
hmm köszönöm a hasznos tanácsot Anthony :D

82
Leírások/Útmutatók / MYSQL több lekérdezés egy query-ben
« Dátum: 2012. július 18. - 10:13:31 »
Üdv!
Kutattam kicsit a mysql rejtelmei között és találtam egy igen hasznos lehetõséget.
Ha valamien oknál fogva nekünk két táblából kellene kinyernünk adatokat és nem egybõl, viszont nem akarjuk hogy két külön lekérdezés legyen, mert ugye akkor külön callback kell. Meg lehet oldani úgy is, hogy egy queryben legyen. igazából csak annyi, hogy a két külön lekérdezés query-jét egymás mögé tesszük, és közé rakjuk az UNION szót.
A visszatérésnél pedig az elsõ sor az elsõ lekérdezés a második sor a második lekrédezés
pl:
 
//a lekérdezés
mysql_function_query(1, query, true, \"THREAD_pelda\", \"SELECT `Adat1` FROM `Tabla1` WHERE `valami` = \'1\' UNION SELECT `Adat2` FROM `Tabla2` WHERE `valami` = \'2\'\");
//a visszatérés
forward THREAD_pelda();
public THREAD_pelda()
{
new string[128];
cache_get_row(0,0,string);
printf(\"Adat1: %s\",string);
cache_get_row(1,0,string);
printf(\"Adat2: %s\",string);
}

 
Ennek a dolognaka  hátulütõje annyi, hogy a két táblának azonos adat struktúrával kell rendelkeznie.
Helyesbítek: Azonos cella számúnak kell lennie a két sornak (köszönet Anthonynak)

83
SA-MP: Szerverfejlesztés / Anti Bot Script
« Dátum: 2012. július 06. - 20:50:56 »
Tessék itt van az én két includem ezzel már mennie kell
dudb: http://pastebin.com/ueM34GPC
dutils: http://pastebin.com/8ZxMPeyD

84
SA-MP: Szerverfejlesztés / Anti Bot Script
« Dátum: 2012. július 06. - 20:16:44 »
dudb include szükséges. Nem irtam oda sry.

85
SA-MP: Szerverfejlesztés / Kickall, Banall, Getall parancs
« Dátum: 2012. július 06. - 15:23:47 »
kickallnál a return 0; leállitja az egész ciklust oda inkább continue;-t rakj

86
SA-MP: Szerverfejlesztés / Anti Bot Script
« Dátum: 2012. július 06. - 14:10:43 »
Köszi :D javitottam amiket mondtál

87
SA-MP: Szerverfejlesztés / Anti Bot Script
« Dátum: 2012. július 06. - 13:24:18 »
Üdv mindenkinek.
Sajnos én is áldozatául estem az ujonnan feltünt hacknek, amivel sok sok botot küldenek fel a szerverünkre. Ennek hatására rákerestem sampforumona dologra találtam is egy scriptet amit a fiuk áthoztak hiv fórumról.
http://sampforum.hu/index.php?topic=24256.0
Be raktam, de ezzel a  scripttel az a gond, hogy sajnos lehet olyat is csinálni a hackkel, hogy felcsatlakozik és egybõl le is csatlakozik, így elég nehezen veszi észre az a script, ha ilyen támadás van. Ennek kiküszöbölésének érdekében megírtam ezt a scriptet.
Mûködéséhez szükséges a Gvar plugin (http://sampforum.hu/index.php?topic=9769.0). és dudb include (http://forum.sa-mp.com/showthread.php?t=31)
A script mûködése elég egyszerû. Csatlakozáskor lekérdezzük a játékos IP címét, átalakítjuk udbhas függvénnyel az IP címet egyetlen számadattá. (nem erre szokták használni de itt most tökéletes) Egyel növeljük azt a GV ar változót, amelynek az azonosítója a számmá alakított IP cím. megnézzük, hogy a növelt érték meghaladja e a maximum csatlakoztatható emberek számát azonos IP rõl adott idõn belül. ha meghaladja banolja. Ezután indítunk egy timert ami az adott idõre van beállítja és egyel csökkentjük az adott idõ elteltével a változót. (valamiért nálam filterscriptként nem csinált semmit a script, de ha beleírtam a gamemodeba a scriptet tökéletesen mûködött)
Letöltés (pastebin): http://pastebin.com/YMj6Mxhk
a script konkrétan:
 
#define FILTERSCRIPT
#include <a_samp>
#include <gvar>
#include <dudb>
#define MAX_CONNECTIONS_FROM_IP     2 //azért 2 mert ha esetleg véletlen testvérek csatlakoznak és pont ugyanakkor akkor õket ne banolja
#define TIME_BETWEEN_CONNECTIONS   500
#pragma unused ret_memcpy
 
//IP cím számként tárolva
public OnFilterScriptInit()
{
print(\"BOT VÉDELEM AKTIVÁLVA\");
return 1;
}
public OnFilterScriptExit()
{
print(\"BOT VÉDELEM DEAKTIVÁLVA\");
return 1;
}
public OnPlayerConnect(playerid)
{
    new hashIP,IP[32];
GetPlayerIp(playerid,IP,sizeof(IP));
hashIP = udbhash(IP);
SetGVarInt(\"IPconnections\",GetGVarInt(\"IPconnections\",hashIP)+1,hashIP);
if(GetGVarInt(\"IPconnections\",hashIP) > MAX_CONNECTIONS_FROM_IP)
{
printf(\"BOT: connections from %s. IP has been banned.\",IP);
    BanEx(playerid, \"BOT attack! version Devil\");
    SetTimerEx(\"ConnectionBack\",TIME_BETWEEN_CONNECTIONS,0,\"d\",hashIP);
    return 1;
}
else
{
SetTimerEx(\"ConnectionBack\",TIME_BETWEEN_CONNECTIONS,0,\"d\",hashIP);
}
return 0;
}
 
forward ConnectionBack(hashid);
public ConnectionBack(hashid)
{
SetGVarInt(\"IPconnections\",GetGVarInt(\"IPconnections\",hashid)-1,hashid);
if(!GetGVarInt(\"IPconnections\",hashid)) DeleteGVar(\"IPconnections\",hashid);
}

 
Ez a script és a fentebb említett script kombinálva szinte tökéletes védelmet nyújt a nemkívánatos BOT támadások ellen :)

88
Tanuljunk PAWN nyelvet / [Leírás] Külsõ NPC elleni védelem! HIBÁTLAN!
« Dátum: 2012. július 04. - 20:51:50 »
Én még kiegészíteném ezt azzal, hogy azt a további két botot kickelje:
 
#include <a_samp>
#define MAX_CONNECTIONS_FROM_IP     3
stock GetNumberOfPlayersOnThisIP(test_ip[])
{
new against_ip[32+1];
new x = -1; // Javítva 0 playerid érték is vizsgálatra kerüljön.
new ip_count = 0;
for(; x++ < MAX_PLAYERS ;) {
if(IsPlayerConnected(x)) {
    GetPlayerIp(x,against_ip,32);
    if(!strcmp(against_ip,test_ip)) ip_count++;
}
}
return ip_count;
}
public OnPlayerConnect(playerid)
{
new connecting_ip[32+1];
GetPlayerIp(playerid,connecting_ip,32);
new num_players_on_ip = GetNumberOfPlayersOnThisIP(connecting_ip);
if(num_players_on_ip > MAX_CONNECTIONS_FROM_IP)
{
printf(\"MAXIPs: Connecting player(%d) exceeded %d IP connections from %s.\", playerid, MAX_CONNECTIONS_FROM_IP, connecting_ip);
    BanEx(playerid, \"BOT attack!\");
    new against_ip[32+1],test_ip[32+1];
    GetPlayerIp(playerid,test_ip,32);
new x = -1; // Javítva 0 playerid érték is vizsgálatra kerüljön.
for(; x++ < MAX_PLAYERS ;)
{
   if(IsPlayerConnected(x))
   {
       GetPlayerIp(x,against_ip,32);
       if(!strcmp(against_ip,test_ip)) Kick(x);
   }
}
 
     return 1;
}
return 0;
}

89
Segítségkérés / E-Q gombok
« Dátum: 2012. július 04. - 08:58:07 »
Itt elvileg az összes fel van sorolva. Szerintem gyalog azt nemlehet emgcsinálni
http://wiki.sa-mp.com/wiki/GetPlayerKeys

90
Segítségkérés / Regisztrációs probléma!
« Dátum: 2012. július 04. - 08:45:44 »
valószinûleg a fájl/sor a msqlben nem jön létre ami az adatokat tárolja

Oldalak: 1 ... 4 5 [6] 7 8 ... 26
SimplePortal 2.3.7 © 2008-2024, SimplePortal