Ü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 - tonyo

Oldalak: 1 ... 40 41 [42] 43 44 ... 79
616
Segítségkérés / Max Listitem
« Dátum: 2012. július 19. - 16:24:08 »
A string változó méretével van gond, ekkora méretet nem képes kezelni a pawno. Elvileg a SA:MP-ban 1024 a maximum string méret, gyakorlatban ez nem igaz. A max amit eddig én használtam az 4*1024 volt, attól még nem akadt ki. Próbálgatni kell.  :)

617
Segítségkérés / Max Listitem
« Dátum: 2012. július 19. - 16:06:42 »
Nincs korlát, annyi sorból állhat, ameddig ki nem futsz a karakter limitbõl.
A te hibaüzenetedben a stack index, és a heap index azok memóriacímekre vonatkoznak, ami neked fontos az elsõ sor:
 
Stack/heap collision (insufficient stack size)

 
Vagyis Stack/Heap ütközés (nem megfelelõ stack méret). Szerintem túl nagy változót használsz. Bemásolnád a konkrét kódot?

618
Segítségkérés / MYSQL JOIN
« Dátum: 2012. július 19. - 16:02:15 »
Az elsõ error:
 
[11:38:14] errorid: 1054, error: Unknown column \'Players2.Name\' in \'on clause\'

 
Ez azt jelenti, hogy a Players2 táblába nincs Name mezõ.
A második error:
 
[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

 
Na ilyet nem adtam :D Ebben viszont az a hiba, hogy a LIKE a WHERE elõtt van.

619
Archívum / West Roleplay szerver
« Dátum: 2012. július 19. - 15:17:50 »
Mivel még meg sem nyitott a szerver, így azt sem tudhatjátok hogy mi az ami bekerült újításként, és mi nem.  :)

620
Segítségkérés / 1 ERROR
« Dátum: 2012. július 19. - 13:28:13 »
Melyik az 508-adik sor?

621
Segítségkérés / Dialog hiba
« Dátum: 2012. július 19. - 12:27:24 »
Kód hiányában nehéz erre válaszolni :) Bemásolod a 3 dialog kódját az OnDialogResponse alól?

622
Segítségkérés / Szex animáció library.
« Dátum: 2012. július 19. - 12:18:41 »
Dev-cpp-ben nem mûködik minden Visual C++-os elem.

623
Segítségkérés / MYSQL JOIN
« Dátum: 2012. július 19. - 12:16:52 »
Ha nem másolod be a teljes lekérést, csak a hibaüzenetet, abból nem tudom megmondani mi a hiba :)

624
Segítségkérés / Szex animáció library.
« Dátum: 2012. július 19. - 11:47:15 »
SEX libraryt cenzúra miatt tiltották le már 0.2 nem tom melyik verziója óta. A BLOWJOBZ-t visszatették, mert sokan \"sírtak\" miatta. Meg lényegében a BLOWJOBZ az része az alap játéknak, míg a SEX library sosem került valóban publikálásra, csak ugye egy kis kiegészítõvel tudták a játékosok aktiválni az SA ezen részét. Nem fogod tudni sehogy sem aktiválni.

625
Segítségkérés / Itt kérdezz object ID-t!
« Dátum: 2012. július 18. - 22:36:40 »
Az az egész 4 objectbõl áll. Mivel nem tom hogy csak a kör kell, vagy úgy az \"egész\", ezt ideírom mindet:
Maga a kör: 13607
Alatta a kör alakú \"kerítés\": 13623
Maga az alap pálya: 13608
A \"kerítésen belül a tartó oszlopok: 13609

626
Segítségkérés / MYSQL JOIN
« Dátum: 2012. július 18. - 22:00:06 »
Az elõzõ példát folytatva fogom megmutatni, mert úgy egybõl érthetõ lesz a dolog. Ehhez azonban adatok is kelleni fognak, hogy látszódjon mirõl beszélek. Tegyük fel hogy a \'kocsi\' táblában van 3 sorunk:
 
id
modellid
szin
xcoord
ycoord
zcoord
1
522
1
1000
1000
1000
2
520
2
1005
1005
1005
3
411
3
1010
1010
1010
[/quote]
A modellista táblában pedig 4:
 
id
modellid
nev
ar
1
411
Infernus
200000
2
400
Landstalker
70000
3
520
Sultan
150000
4
556
Monster \"A\"
1000000
[/quote]
Ezen a 2 táblán fogom most bemutatni a 3 fajta JOINt.


A) INNER JOIN:
Ezzel a táblakapcsolási típussal csak olyan sort kapunk eredményül, ahol mind a 2 táblában van adat. Ha valamelyik tábla egyik cellájában nincs adat, akkor azt a sort nem fogjuk megkapni. Nézzük meg mit kapunk, ha INNER JOIN-al kapcsoljuk a két táblát, és lekérünk minden adatot:
 
SELECT * FROM  `modellista` JOIN  `kocsi` ON (  `kocsi`.`modellid` =  `modellista`.`modellid` )

 
Szándékosan nem INNER JOIN-t írtam, hanem csak JOIN-t. Ha nem írjuk elé hogy INNER, akkor a legtöbb SQL rendszer tudni fogja hogy mi az INNER JOIN-ra gondoltunk, de azért sokkal szebb, és szabályosabb ha odaírjuk. Szóval tessék odaírni, ezt most csak érdekességképp mutattam.
A következõ eredményt kapjuk:
 
id
modellid
nev
ar
id
modellid
szin
xcoord
ycoord
zcoord
1
411
Infernus
200000
3
411
3
1010
1010
1010
3
520
Sultan
150000
2
520
2
1005
1005
1005
[/quote]
Nem meglepõ, hisz csak ennél a 2 modellidnél(411, 520) volt adat mind a kettõ táblában.


B) LEFT JOIN:
Ezzel a kapcsolási típussal a lekérdezésünk a bal oldali táblából minden adatot megjelenít, akkor is, ha nincs párja a jobb oldali táblában. Amennyiben nincs párja, a második tábla értékei mind NULL karakterek lesznek.
Tehát lekérdezünk:
 
SELECT * FROM  `modellista` LEFT JOIN  `kocsi` ON (  `kocsi`.`modellid` =  `modellista`.`modellid` )

 
Mind láthatjuk a kód ugyanúgy épül fel, az egyetlen különbség a LEFT szócska a JOIN elõtt. Nézzük az eredményt:
 
id
modellid
nev
ar
id
modellid
szin
xcoord
ycoord
zcoord
1
411
Infernus
200000
3
411
3
1010
1010
1010
2
400
Landstalker
70000
NULL
NULL
NULL
NULL
NULL
NULL
3
520
Sultan
150000
2
520
2
1005
1005
1005
4
556
Monster \"A\"
1000000
NULL
NULL
NULL
NULL
NULL
NULL
[/quote]
Láthatjuk, hogy a \'kocsi\' tábla minden sora ki lett listázva, és mellé a \'modellista\' sorai. Ahol nem volt kapcsolódó sor, ott minden érték NULL lett, ezzel jelezte felénk a rendszer, hogy ott nem volt találat.


C) RIGHT JOIN:
Pontosan ugyanazt csinálja mint a LEFT JOIN, csak épp a jobb oldali táblával. Tehát a jobb oldali tábla minden sorát meg fogjuk kapni, ha a jobb oldali táblában nincs az adott sorhoz kapcsolódó sor, akkor ugyanúgy NULL karaktereket kapunk.
Lekérdezésünk:
 
SELECT * FROM  `modellista` RIGHT JOIN  `kocsi` ON (  `kocsi`.`modellid` =  `modellista`.`modellid` )

 
Lényegében teljesen ugyanaz, mint eddig volt, csak most RIGHT szócska van a JOIN elõtt.
Nézzük az eredményt:
 
id
modellid
nev
ar
id
modellid
szin
xcoord
ycoord
zcoord
NULL
NULL
NULL
NULL
1
522
1
1000
1000
1000
3
520
Sultan
150000
2
520
2
1005
1005
1005
1
411
Infernus
200000
3
411
3
1010
1010
1010
[/quote]
Láthatjuk amit elõrevetítettem, a jobb oldali táblából minden adatot megkaptunk, ahol pedig nem volt a bal oldali táblában adat, ott csakugyan mint a LEFT JOIN példában, \'NULL\'-t kaptunk eredményül. Itt láthatjuk, hogy a sorok sorrendje alapértelmezetten a jobb oldali tábla alapértelmezett (rendezés nélküli) sorrendje lesz.


Nos ennyi lenne. Remélem nem írtam el semmit. Nem vagyok túl jó magyarázásban, ezért mutattam a példákat. A jobb és bal oldalt úgy kell érteni, hogy a JOIN-hoz képest jobb oldalon lévõ tábla, és bal oldalon lévõ tábla. Ha esetleg lenne még kérdésed, akkor szívesen válaszolok :)

Dupla hozzászólás automatikusan összefûzve. ( 2012. július 18. - 22:04:05 )

Idézetet írta: hegdavid95 date=1342636767\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"24620\" data-ipsquote-contentclass=\"forums_Topic
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
 
Aposztróf helyett (\') azt a hülye másik karaktert használd, csak olyan nincs a billentyûzetemen, ezért írtam \'\'-et.
Így jó lesz:
 
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);

627
Segítségkérés / Kocsi kiszállás tiltás
« Dátum: 2012. július 18. - 20:52:33 »
Idézetet írta: kadaradam date=1342636842\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"24644\" data-ipsquote-contentclass=\"forums_Topic


 

Amikor beül egy autóba, \"megcímkézed\".

Amikor kiszáll, vissz*rakod a megcímkézett kocsiba.


Remélem érted. ;)

 
Valahogy így gondolod nem?
 
new current;
public OnPlayerEnterVehicle(playerid, vehicleid, ispassanger)
{
  current = vehicleid;
  return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
  PutPlayerInVehicle(playerid, current, 0);
  return 1;
}

 

[/quote]
Nem fogja vissz*rakni,épp ma próbáltam úgy! :D
[/quote]
Fél-1mp-es timer, és vissza fogja tenni (legalább is 0.3d alatt még visszarakta) :) Sajna szép megoldásról még én sem hallottam :(

628
Segítségkérés / MYSQL JOIN
« Dátum: 2012. július 18. - 15:15:05 »
Ha JOIN-oli akarsz kettõ táblát, elõször is szükséged lesz a 2 táblában azonos értéket tartalmazó mezõk neveire.
Íme egy JOIN-os lekérdezésre példa:
Tegyük fel van 2 táblánk. Elsõben a jármûveink adataid tároljuk:(model ID, szín, koordináták)
Tábla neve: kocsi
Tábla mezõi: id(Auto Increment), modellid, szin, xcoord, ycoord, zcoord
Másodikban pedig a jármû modellek adatait tároljuk, amiket használunk a szerveren(Név, Ár)
Tábla neve: modellista
Tábla mezõi: id(Auto Increment), modellid, nev, ar
A JOIN-nak 3 fajtája van, INNER(kereszttáblás), LEFT és RIGHT. Neked most itt igazából mindegy melyiket használod, szóval maradjunk az INNER-nél, ha gondolod elmagyarázhatom mi a különbség a fajta között.
A JOIN-t a FROM után kell használnunk. A FROM-nál megadjuk az elsõ táblánk nevét, majd JOIN szócska után a 2. tábla nevét, amit hozzá akarunk kapcsolni. Ha Nincs a JOIN után ON \"rész\", akkor minden táblát összepárosít magának. Mi viszont nem ezt szeretnénk, ezért az ON szócska után egy zárójelben megadjuk hogy a 2 tábla mely 2 mezõjét akarjuk összekapcsolni. Az összekapcsolást az =-el tehetjük meg.
Térjünk vissza a példánkhoz. Én le akarom kérni a2-es \'id\'-jû jármû néhány adatát. Konkrétan a \'kocsi\' tábla \'szin\' mezõjét, valamint meg akarom tudni, hogy ennek a jármûnek a modelljének mi a neve, valamint hogy mennyi az ára. Tehát le kell kérnünk a \'modellista\' tábla \'ar\' és \'nev\' mezõjét. Az összekapcsolás a 2 tábla között a \'kocsi\' tábla \'modellid\' mezõje, és a \'modellista\' tábla \'modellid\' mezõje között fog zajlani. Így néz ki tehát a lekérdezésünk:
 
SELECT \'kocsi\'.\'szin\', \'modellista\'.\'ar\', \'modellista\'.\'nev\' FROM \'kocsi\' INNER JOIN \'modellista\' ON (\'kocsi\'.\'modellid\' = \'modellista\'.\'modellid\') WHERE \'kocsi\'.\'id\' = 2

 
Ezzel eredményül megkapjuk a kocsi színét, valamint a nevét(pl. Sultan), és hogy mennyibe kerül.
Próbáltam nagyon egyszerû példát mondani, és nem szakszavakat használni, ha valahol elakadsz szólj, és segítek :)

629
Segítségkérés / MYSQL JOIN
« Dátum: 2012. július 18. - 14:25:48 »
Ha külön sorba akarod, akk UNION. A JOIN egy sorban adja vissza az értékeket.

630
Archívum / West Roleplay szerver
« Dátum: 2012. július 18. - 12:35:56 »
Igen, anno be voltak scriptelve. Most viszont már más lesz a helyzet..

Oldalak: 1 ... 40 41 [42] 43 44 ... 79
SimplePortal 2.3.7 © 2008-2024, SimplePortal