Массивы, функция
#1

Добрый день!
В чём проблема, что я делаю не так?

PHP код:
enum playerInfo
{
    
/*******/
    
Variable[5],
    
/*******/
}; 
В функции загрузки аккаунта:
PHP код:
PlayerInfo[id][Variable[0]] = cache_get_field_content_int(id"variable5"chandle); 
Код:
error 028: invalid subscript (not an array or too many subscripts): "Variable"
warning 215: expression has no effect
error 001: expected token: ";", but found "]"
error 029: invalid expression, assumed zero
fatal error 107: too many error messages on one line
И еще. Хотел сделать функцию, с помощью которой можно узнать ник игрока по ID его аккаунта:
PHP код:
stock OfflineName(playerid)
{
    new 
query[256];
    
format(querysizeof(query), "SELECT `nick` FROM `players` WHERE `ID` = '%d'"playerid);
    new 
Cache:queryname[24];
    
queryname mysql_query(chandlequery);
    return 
queryname;

Но тут тоже что-то не так. В чём проблема?
Reply
#2

Вот так попробуй.
PHP код:
format(querysizeof(query), "SELECT nick FROM players WHERE  (ID = '%d')"playerid); 
Тут мы не должны указывать элемент массива Variable.
PHP код:
PlayerInfo[id][Variable[0]] = cache_get_field_content_int(id"variable5"chandle); 
Должно выглядеть так.
PHP код:
PlayerInfo[id][Variable] = cache_get_field_content_int(id"variable5"chandle); 
И сама функция
PHP код:
cache_get_field_content_int 
, имеет только два аргумента.
Reply
#3

PlayerInfo[id][Variable][0]
Reply
#4

PHP код:
stock OfflineName(playerid)
{
    new 
query[256];
    
format(querysizeof(query), "SELECT `nick` FROM `players` WHERE `ID` = '%d'"playerid);
    new 
Cache:queryname[24];
    
queryname mysql_query(chandlequery);
    return 
queryname;

Тут вот такой трабл: error 033: array must be indexed (variable "queryname")

А если вот так:
PHP код:
stock OfflineName(playerid)
{
    new 
query[256];
    
format(querysizeof(query), "SELECT `nick` FROM `players` WHERE `ID` = '%d'"playerid);
    new 
Cache:queryname[24] = mysql_query(chandlequery);
    return 
queryname;

то error 008: must be a constant expression; assumed zero

OCHE S4D
Reply
#5

что вы вообще от этого кода хотели?
Reply
#6

Quote:
Originally Posted by Jon_De
Посмотреть сообщение
что вы вообще от этого кода хотели?
Чтобы функция вернула ник игрока с заданным ID аккаунта.
Чтобы в коде использовать как-то так: "Владелец: %d", RandomInfo[id][Owner]
Reply
#7

PHP код:
stock OfflineName(playerid

    new 
query[256]; 
    
format(querysizeof(query), "SELECT `nick` FROM `players` WHERE `ID` = '%d'"playerid); 
    new 
Cache:queryname[24] = mysql_query(chandlequery); 
    return 
queryname

Что за бред? ID в базе и playerid это не одно и тоже, узнай сначала номер акка.
PHP код:
format(querysizeof(query), "SELECT `ID` FROM `players` WHERE `Name` = '%s'"getplayername); 
Reply
#8

Допустим, "RandomInfo[id][Owner]" - тут хранится ID аккаунта владельца. К примеру, 123.
Нам нужно узнать его ник: OfflineName(RandomInfo[id][Owner]) (OfflineName(123))
Далее в самой функции мы узнаём ник, где ID = 123. Всё правильно же.
Reply
#9

Запрос то верный однако
Reply
#10

Quote:
Originally Posted by k3dr
Посмотреть сообщение
Запрос то верный однако
Отредактировал предыдущий пост.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)