Sveiki,
stock GetCountriesStaff(id){
new vardas[MAX_PLAYER_NAME];
if(id == 1){
format(g_szBuffer, 300, "SELECT `pName` FROM `"MySQL_PLAYERS_TABLE"` WHERE pMeras = '1' LIMIT 1");
new Cache:xData = mysql_query(dbHandle,g_szBuffer);
new nameCheck[24];
if(cache_get_row_count() == 1)
{
format(vardas, sizeof vardas, "%s", cache_get_field_name( 0, "pName" ));
return vardas;
}
else
{
vardas = "-";
return vardas;
}
}
if(id == 2){
format(g_szBuffer, 300, "SELECT `pName` FROM `"MySQL_PLAYERS_TABLE"` WHERE pPatarejas = '1' LIMIT 2");
new Cache:xData = mysql_query(dbHandle,g_szBuffer);
new nameCheck[24];
if(cache_get_row_count() == 1)
{
format(vardas, sizeof vardas, "%s", cache_get_field_name( 0, "pName" ));
return vardas;
}
else
{
vardas = "-";
return vardas;
}
}
}
Jeigu duomenų bazėje yra 2 pPatarėjas žaidėjas, kaip juos naudojant Stock gražinti du vardus? Būtų galima daryti ir taip su ID==2, bet tada gražintu 2 žaidėjus tuo pačiu vardu, naudojant id==3 tapatį variantą.
Norėdamas rašyti pranešimą privalai prisijungti arba užsiregistruoti!
0
naikintojas prieš 8 metus
@Bebras Pagal id==1, viskas bus gerai, bet pagal antrą jau man reiktų returnint 2 vardus, nes pPatarejas == 1, gali būti priskirtas dviems žaidėjams. Tai kaip man reiktų returnint 2 vardus, jeigu pPatarejas == 1. būtų pas du žaidėjus?
0
Bebras prieš 8 metus
stock GrazinsDuString(pirmas[], maxpirmoilgis, antras[] maxantroilgis)
{
new Cache:result = mysql_query(handle, "SELECT * FROM table");
for(new i = 0; i < cache_get_row_count(); i++)
{
cache_get_field_content(i, 'stulpelis', pirmas, maxpirmoilgis);
cache_get_field_content(i, 'stulpelis2', antras, maxantroilgis);
}
cache_delete(result);
}
// Panaudojimas:
main()
{
new pirmas[20], antras[20];
GrazinsDuString(pirmas, sizeof pirmas, antras, sizeof antras);
printf("Pirmas:%s antras:%s", pirmas, antras); // Išprintins stulpelis ir stulpelis2 reikšmes.
}
Toks argumentų perdavimas į funkciją vadinasi "by reference", daugiau apie tai [čia](https://maze.lt/tema/pamoka-pawn-pagrindai#funkcijukvietimas)