#1
Отправлено 29 августа 2015 — 19:08
-
- Новичок
-
C:UsersДавидDesktopFire Role PlaygamemodesFire-rp.pwn(1519) : error 033: array must be indexed (variable «inputtext»)
C:UsersДавидDesktopFire Role PlaygamemodesFire-rp.pwn(1551) : error 033: array must be indexed (variable «inputtext»)
Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
2 Errors.
Строка 1519 и 1551:
1519: if(inputtext == maill)
1551: if(inputtext == code[playerid])
В общем, делаю систему почты. Так вот. Вылезает Error в диалоге.
1519: Если(то что мы ввели == почта которая у нас), то пошла функция
1551: Если то что мы ввели == переменная code[playerid](Код подтверждения чтобы сменить пароль если забыл)
Подскажите, в чём проблема. Компилятор жалуется только на inputtext.
Сообщение отредактировал ~David~: 29 августа 2015 — 19:09
0
#2
Отправлено 29 августа 2015 — 19:57
-
- Daddy wants to see your code!
-
Пробуй:
if(strlen(inputtext) == maill) if(strlen(inputtext) == code[playerid])
1
#3
Отправлено 29 августа 2015 — 22:39
-
- Новичок
-
PETPO (29 августа 2015 — 19:57) писал:
Пробуй:
if(strlen(inputtext) == maill) if(strlen(inputtext) == code[playerid])
Спасибо помогло, поставил +
0
#4
Отправлено 29 августа 2015 — 22:42
-
- Олежка
-
Вместо strlen поставь strval
strlen — это длина строки
strval — значение в переменной (числовое)
2
- ← Предыдущая тема
- Проблемы с компилированием
- Следующая тема →
- Вы не можете создать новую тему
-
Тема закрыта
1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей
Содержание
- Error 033 array must be indexed variable inputtext
- Решение ошибок при компиляции
- Решение ошибок при компиляции
- Форум Pawn.Wiki — Воплоти мечту в реальность!: error 033: array must be indexed — Форум Pawn.Wiki — Воплоти мечту в реальность!
- Форум Pawn.Wiki — Воплоти мечту в реальность!: error 033: array must be indexed (variable «-unkno — Форум Pawn.Wiki — Воплоти мечту в реальность!
Error 033 array must be indexed variable inputtext
[N][E][M][E][C] писал(а): Ты прочти с кем я в начале о чем общался и что обсуждал, а потом истири, и тут тебя обижать не буду, если ты хочешь продолжить я напишу ссылку когда и где написать
Решение ошибок при компиляции
Модератор: Chuvi
- Список форумов‹AMX Mod X‹Статьи / фрагменты кода
Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела «Болтовня».
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.
В данном разделе форума разрешено создавать темы, касающие только обучающему материалу по AMX Mod X.
Решение ошибок при компиляции
DJ_WEST » 25 авг 2009, 10:51
Автор: minimiller
Перевод и редактирование: DJ_WEST
Список ошибок:
Код: Выделить всё
/*001*/ «expected token: »%s», but found »%s»n»,
/*002*/ «only a single statement (or expression) can follow each »case»n»,
/*003*/ «declaration of a local variable must appear in a compound blockn»,
/*004*/ «function »%s» is not implementedn»,
/*005*/ «function may not have argumentsn»,
/*006*/ «must be assigned to an arrayn»,
/*007*/ «operator cannot be redefinedn»,
/*008*/ «must be a constant expression; assumed zeron»,
/*009*/ «invalid array size (negative or zero)n»,
/*010*/ «invalid function or declarationn»,
/*011*/ «invalid outside functionsn»,
/*012*/ «invalid function call, not a valid addressn»,
/*013*/ «no entry point (no public functions)n»,
/*014*/ «invalid statement; not in switchn»,
/*015*/ «»default» case must be the last case in switch statementn»,
/*016*/ «multiple defaults in »switch»n»,
/*017*/ «undefined symbol »%s»n»,
/*018*/ «initialization data exceeds declared sizen»,
/*019*/ «not a label: »%s»n»,
/*020*/ «invalid symbol name »%s»n»,
/*021*/ «symbol already defined: »%s»n»,
/*022*/ «must be lvalue (non-constant)n»,
/*023*/ «array assignment must be simple assignmentn»,
/*024*/ «»break» or »continue» is out of contextn»,
/*025*/ «function heading differs from prototypen»,
/*026*/ «no matching »#if. »n»,
/*027*/ «invalid character constantn»,
/*028*/ «invalid subscript (not an array or too many subscripts): »%s»n»,
/*029*/ «invalid expression, assumed zeron»,
/*030*/ «compound statement not closed at the end of filen»,
/*031*/ «unknown directiven»,
/*032*/ «array index out of bounds (variable »%s»)n»,
/*033*/ «array must be indexed (variable »%s»)n»,
/*034*/ «argument does not have a default value (argument %d)n»,
/*035*/ «argument type mismatch (argument %d)n»,
/*036*/ «empty statementn»,
/*037*/ «invalid string (possibly non-terminated string)n»,
/*038*/ «extra characters on linen»,
/*039*/ «constant symbol has no sizen»,
/*040*/ «duplicate »case» label (value %d)n»,
/*041*/ «invalid ellipsis, array size is not knownn»,
/*042*/ «invalid combination of class specifiersn»,
/*043*/ «character constant exceeds range for packed stringn»,
/*044*/ «positional parameters must precede all named parametersn»,
/*045*/ «too many function argumentsn»,
/*046*/ «unknown array size (variable »%s»)n»,
/*047*/ «array sizes do not match, or destination array is too smalln»,
/*048*/ «array dimensions do not matchn»,
/*049*/ «invalid line continuationn»,
/*050*/ «invalid rangen»,
/*051*/ «invalid subscript, use »[ ]» operators on major dimensionsn»,
/*052*/ «multi-dimensional arrays must be fully initializedn»,
/*053*/ «exceeding maximum number of dimensionsn»,
/*054*/ «unmatched closing bracen»,
/*055*/ «start of function body without function headern»,
/*056*/ «arrays, local variables and function arguments cannot be public (variable »%s»)n»,
/*057*/ «unfinished expression before compiler directiven»,
/*058*/ «duplicate argument; same argument is passed twicen»,
/*059*/ «function argument may not have a default value (variable »%s»)n»,
/*060*/ «multiple »#else» directives between »#if . #endif»n»,
/*061*/ «»#elseif» directive follows an »#else» directiven»,
/*062*/ «number of operands does not fit the operatorn»,
/*063*/ «function result tag of operator »%s» must be »%s»n»,
/*064*/ «cannot change predefined operatorsn»,
/*065*/ «function argument may only have a single tag (argument %d)n»,
/*066*/ «function argument may not be a reference argument or an array (argument »%s»)n»,
/*067*/ «variable cannot be both a reference and an array (variable »%s»)n»,
/*068*/ «invalid rational number precision in #pragman»,
/*069*/ «rational number format already definedn»,
/*070*/ «rational number support was not enabledn»,
/*071*/ «user-defined operator must be declared before use (function »%s»)n»,
/*072*/ «»sizeof» operator is invalid on »function» symbolsn»,
/*073*/ «function argument must be an array (argument »%s»)n»,
/*074*/ «#define pattern must start with an alphabetic charactern»,
/*075*/ «input line too long (after substitutions)n»,
/*076*/ «syntax error in the expression, or invalid function calln»,
/*077*/ «malformed UTF-8 encoding, or corrupted file: %sn»,
/*078*/ «function uses both »return» and »return »n»,
/*079*/ «inconsistent return types (array & non-array)n»,
/*080*/ «unknown symbol, or not a constant symbol (symbol »%s»)n»,
/*081*/ «cannot take a tag as a default value for an indexed array parameter (symbol »%s»)n»,
/*082*/ «user-defined operators and native functions may not have statesn»,
/*083*/ «a function may only belong to a single automaton (symbol »%s»)n»,
/*084*/ «state conflict: one of the states is already assigned to another implementation (symbol »%s»)n»,
/*085*/ «no states are defined for function »%s»n»,
/*086*/ «unknown automaton »%s»n»,
/*087*/ «unknown state »%s» for automaton »%s»n»,
/*088*/ «number of arguments does not match definitionn»
Разбор ошибок
Рассмотрим пример нахождения и самостоятельного решения ошибок при компиляции.
Допустим у нас есть ошибка:
Теперь давайте попытаемся разобрать эту ошибку по частям:
1) C:AMXXexample.sma — это директория, где находится исходник (.sma) нашего плагина.
2) (107) — это номер строки, в которой есть ошибка. Большинство современных редакторов текста имеют панель с пронумерованными строками (Notepad++, AMXX-Studio и другие).
3) error 035 — это код ошибки (список ошибок указан выше).
4) argument type mismatch — это описание ошибки с кодом, указанным до этого. В данном случае нам говорится, что «аргумент имеет неверный тип».
5) (argument 2) — это более подробное описание ошибки. В данном случае нам указывается, что ошибка во 2 аргументе.
Итого, получаем: в файле example.sma, который находится в директории C:AMXX, в строке под номером 107 есть ошибка с кодом 035, которая означает, что аргумент 2 имеет неверный тип данных.
Решение ошибок
Теперь попытаемся исправить нашу ошибку. Идем в строку под номером 107 и видим следующий код:
Код: Выделить всё
client_print ( 0 , «Welcome to the server!» )
client_print — Sends a message to a player.
Syntax:
client_print ( index, type, const message [], . )
id is a player index from 1 to 32. If 0, the message will be sent to all players.
The type is one of three types:
print_chat — chat text
print_console — console message
print_notify — console in dev mode
print_center — center say
Теперь компиляция прошла успешно.
Описание ошибок:
error 001: expected token: «X», but found «Y»
Ошибка означает, что не найден X, когда найден Y. Наиболее часто возникает, когда забывают поставить недостающие знаки ; < >( ).
Пример ошибки:
Код: Выделить всё
public Function ( id )
<
if ( is_user_bot ( id )
return PLUGIN_HANDLED
// код
return PLUGIN_CONTINUE
>
error 017: undefined symbol «X»
Ошибка означает, что X — неизвестный сивол/команда/переменная/функция. Поэтому такую функцию или переменную нужно объявить перед использованием. Например, функция is_user_hacker не существует.
Пример ошибки:
Код: Выделить всё
public Function ( id )
<
if ( is_user_hacker ( id ))
return PLUGIN_HANDLED
// код
return PLUGIN_CONTINUE
>
error 032: array index out of bounds (variable X)
Ошибка означает, что в мы вышли за предел размера массива X.
Пример ошибки:
Код: Выделить всё
new s_Name [ 32 ]
s_Name [ 33 ] = «*»
error 033: array must be indexed (variable X)
Ошибка означает, что массив должен быть проиндексирован. Например, мы не указали размер массива при его объявлении.
Пример ошибки:
Код: Выделить всё
new s_String = «My string»
error 035: argument type mismatch (argument X)
Ошибка означает, что аргумент X имеет неверный тип данных. Например, когда вместо целочисленного аргумента передаем строку.
Пример ошибки:
Код: Выделить всё
public Function1 ( id )
<
Function2 ( id , «10» )
>
public Function2 ( id , count )
<
// код
>
error 040: duplicate «case» label (value X)
Ошибка означает, что имеется дубль оператора case со значением X.
Пример ошибки:
Код: Выделить всё
public Function ( id )
<
switch ( count )
<
case 1 : count += 1
case 2 : count += 2
case 2 : count += 3
>
>
error 075: input line too long (after substitutions)
Ошибка означает, что указанная строка слишком длинная. Например, около 500 символов.
Пример ошибки:
Код: Выделить всё
public Function ( id )
<
server_print ( «AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA» )
>
error 078: function uses both «return» and «return »
Ошибка означает, что функция использует, как return, так и return .
Пример ошибки:
Код: Выделить всё
public Function ( id )
<
if ( is_user_alive ( id ))
return
error 088: number of arguments does not match definition
Ошибка означает, что количество переданных аргументов не соответсвует количеству объявленных аргументов.
Пример ошибки:
Код: Выделить всё
public Function1 ( id )
<
Function2 ( id )
>
public Function2 ( id , count )
<
// код
>
Источник
Форум Pawn.Wiki — Воплоти мечту в реальность!: error 033: array must be indexed — Форум Pawn.Wiki — Воплоти мечту в реальность!
- Pawn скриптинг
- Первая помощь
- Проблемы с компилированием
- Правила форума
- Просмотр новых публикаций
- Группа: Активные пользователи
- Сообщений: 56
- Регистрация: 20 февраля 15
C:UsersДавидDesktopFire Role PlaygamemodesFire-rp.pwn(1519) : error 033: array must be indexed (variable «inputtext»)
C:UsersДавидDesktopFire Role PlaygamemodesFire-rp.pwn(1551) : error 033: array must be indexed (variable «inputtext»)
Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
Строка 1519 и 1551:
1519: if(inputtext == maill)
1551: if(inputtext == code[playerid])
В общем, делаю систему почты. Так вот. Вылезает Error в диалоге.
1519: Если(то что мы ввели == почта которая у нас), то пошла функция
1551: Если то что мы ввели == переменная code[playerid](Код подтверждения чтобы сменить пароль если забыл)
Подскажите, в чём проблема. Компилятор жалуется только на inputtext.
Источник
Форум Pawn.Wiki — Воплоти мечту в реальность!: error 033: array must be indexed (variable «-unkno — Форум Pawn.Wiki — Воплоти мечту в реальность!
- Pawn скриптинг
- Первая помощь
- Проблемы с компилированием
- Правила форума
- Просмотр новых публикаций
- (2 Страниц)
- 1
- 2
- >
- Вы не можете создать новую тему
Тема закрыта
- Группа: Пользователи
- Сообщений: 11
- Регистрация: 27 июля 21
Всем qq Кароче я хочу сделать систему авторизации админов вот, создал команду /alogin Открываеться диалог DIALOG_STYLE_PASSWORD вот, ну и кароче в паблике OnDialogResponse Мне надо узнать правильный ли пароль или нет вот кусочек кода на котором возникает ошибка(
Константа есть #define ADMPASS1 «6556»
При компиле такое (
c:UsersJarrDesktopShnurki RPgamemodesnew.pwn(286) : error 033: array must be indexed (variable «-unknown-«)
Сообщение отредактировал xiamaqaw: 27 июля 2021 — 21:21
- Группа: Vip
- Сообщений: 208
- Регистрация: 07 ноября 20
- Группа: Пользователи
- Сообщений: 11
- Регистрация: 27 июля 21
substantive. (27 июля 2021 — 21:38) писал:
- Группа: Vip
- Сообщений: 208
- Регистрация: 07 ноября 20
- Группа: Пользователи
- Сообщений: 11
- Регистрация: 27 июля 21
substantive. (27 июля 2021 — 21:47) писал:
c:UsersJarrDesktopShnurki RPgamemodesnew.pwn(286) : error 033: array must be indexed (variable «-unknown-«)
- Группа: Vip
- Сообщений: 208
- Регистрация: 07 ноября 20
- Группа: Пользователи
- Сообщений: 11
- Регистрация: 27 июля 21
substantive. (27 июля 2021 — 22:03) писал:
Бро спасибо тебе + не даёться(
substantive. (27 июля 2021 — 22:03) писал:
А не не так быстро(
SA-MP Server: 0.3.7-R2
Exception At Address: 0x00402276 Module: (samp-server.exe)
EAX: 0x0000EE1C EBX: 0x0000024C ECX: 0xFFFFFFFF EDX: 0x00000001
ESI: 0x02B81230 EDI: 0x029CA6F8 EBP: 0x02B79128 ESP: 0x0019F884
+0000: 0x0019F8E0 0x029CA6F8 0x00000027 0x00000000
+0010: 0x0000024C 0xFFFFFFFF 0x0000EE1C 0x000076FC
+0020: 0x00003724 0x000002B4 0x00003724 0x02B78DF8
+0030: 0x02B81230 0x00000000 0x02B78470 0x00008438
+0040: 0x57803374 0x029CA6F8 0x0019FD38 0x00000027
+0050: 0x00000000 0x00000000 0x029CA6F8 0x0019FD48
+0060: 0x004746BE 0x029CA6F8 0x0019FD38 0x00000000
+0070: 0x41435353 0x4F5F464E 0x6D61476E 0x646F4D65
+0080: 0x696E4965 0x00470074 0x029CA6F8 0x029CA6F8
+0090: 0x02B78DF8 0x00000000 0x00000000 0x00000000
+00A0: 0x00000000 0x00000000 0x00000000 0x00000000
+00B0: 0x00000000 0x00000000 0x00000000 0x00000000
+00C0: 0x00000000 0x00000000 0x00000000 0x00000000
+00D0: 0x00000000 0x00000000 0x000003FF 0x57803B0D
+00E0: 0x57803B0D 0x57803B0D 0x0019FDA0 0x57853418
+00F0: 0x57803B0D 0x0019FDAC 0x57803B0D 0x578534F0
+0100: 0x005FBFF0 0x5785344C 0x005FBFF0 0x00000000
+0110: 0x01010000 0x00000000 0x005C00C0 0x77A6AD20
+0120: 0x000003FF 0xFFFFFFFE 0x00190000 0x77A36E00
+0130: 0x00000DFC 0x005C8F80 0x000003FF 0x00000143
samp-server.exe A: 0x00400000 — 0x00519000 (C:UsersJarrDesktopShnurki RPsamp-server.exe)
ntdll.dll A: 0x779F0000 — 0x77B93000 (C:WindowsSYSTEM32ntdll.dll)
KERNEL32.DLL A: 0x77640000 — 0x77730000 (C:WindowsSystem32KERNEL32.DLL)
KERNELBASE.dll A: 0x76D60000 — 0x76F74000 (C:WindowsSystem32KERNELBASE.dll)
apphelp.dll A: 0x757C0000 — 0x7585F000 (C:WindowsSYSTEM32apphelp.dll)
SHELL32.dll A: 0x75FC0000 — 0x76573000 (C:WindowsSystem32SHELL32.dll)
msvcp_win.dll A: 0x75C10000 — 0x75C8B000 (C:WindowsSystem32msvcp_win.dll)
ucrtbase.dll A: 0x778C0000 — 0x779E0000 (C:WindowsSystem32ucrtbase.dll)
USER32.dll A: 0x774A0000 — 0x77636000 (C:WindowsSystem32USER32.dll)
win32u.dll A: 0x76640000 — 0x76658000 (C:WindowsSystem32win32u.dll)
GDI32.dll A: 0x76CE0000 — 0x76D03000 (C:WindowsSystem32GDI32.dll)
gdi32full.dll A: 0x771C0000 — 0x7729C000 (C:WindowsSystem32gdi32full.dll)
WINMM.dll A: 0x740C0000 — 0x740E8000 (C:WindowsSYSTEM32WINMM.dll)
WSOCK32.dll A: 0x638A0000 — 0x638A8000 (C:WindowsSYSTEM32WSOCK32.dll)
msvcrt.dll A: 0x77000000 — 0x770BF000 (C:WindowsSystem32msvcrt.dll)
ws2_32.DLL A: 0x76F90000 — 0x76FF3000 (C:WindowsSystem32ws2_32.DLL)
RPCRT4.dll A: 0x75C90000 — 0x75D4F000 (C:WindowsSystem32RPCRT4.dll)
IMM32.DLL A: 0x777C0000 — 0x777E5000 (C:WindowsSystem32IMM32.DLL)
sscanf.DLL A: 0x10000000 — 0x1000D000 (C:UsersJarrDesktopShnurki RPpluginssscanf.DLL)
MSVCR100.dll A: 0x57870000 — 0x5792F000 (C:WindowsSYSTEM32MSVCR100.dll)
streamer.DLL A: 0x57800000 — 0x57867000 (C:UsersJarrDesktopShnurki RPpluginsstreamer.DLL)
MSVCP140.dll A: 0x73EC0000 — 0x73F2F000 (C:WindowsSYSTEM32MSVCP140.dll)
VCRUNTIME140.dll A: 0x749F0000 — 0x74A03000 (C:WindowsSYSTEM32VCRUNTIME140.dll)
dc_cmd.DLL A: 0x02360000 — 0x02367000 (C:UsersJarrDesktopShnurki RPpluginsdc_cmd.DLL)
MSVCP110.dll A: 0x57770000 — 0x577F5000 (C:WindowsSYSTEM32MSVCP110.dll)
MSVCR110.dll A: 0x57690000 — 0x57762000 (C:WindowsSYSTEM32MSVCR110.dll)
Источник
- 0
Вопросы
error 033: array must be indexed (variable «inputtext»)
Цитата
Dialog(playerid, DIALOG_REPORT_2, DIALOG_STYLE_INPUT, «{«#cGold»}Связь с администрацией», «- {«#cW»}Введите ID игрока», «Далее», «Закрыть»);
if(isnull(inputtext) || !IsNumeric(inputtext)) return true;
SetPVarInt(playerid, «player_report_id», inputtext+1);
Поделиться сообщением
Ссылка на сообщение
Поделиться на другие сайты
Лучший ответ
Опубликовал
DEST
,Опубликовано 18 сентября, 2022
@Vladislavspawn SetPVarInt, как понятно из названия, записывает в PVar значение с типом Int (integer — целое число).
Если нужно записать строку, нужно воспользоваться соответствующей для этого функцией — SetPVarString и конечно убрать +1
6 ответов на этот вопрос
- Сортировать по голосам
- Сортировать по дате
-
- 0
@Vladislavspawn SetPVarInt, как понятно из названия, записывает в PVar значение с типом Int (integer — целое число).
Если нужно записать строку, нужно воспользоваться соответствующей для этого функцией — SetPVarString и конечно убрать +1
Поделиться сообщением
Ссылка на сообщение
Поделиться на другие сайты
- 0
Неизвестный масив
error 033: array must be indexed (variable «%s») — Массив неизвестен;
обычно в начале кода помечается так
new название(число)
Поделиться сообщением
Ссылка на сообщение
Поделиться на другие сайты
- 0
@Donaldo_Farekelka Это понятно, а если я хочу сделать что бы выводился текст с диалога который написал игрок?
Если убрать +1 возникнет ошибка error 035: argument type mismatch (argument 3)
Поделиться сообщением
Ссылка на сообщение
Поделиться на другие сайты
- 0
Поделиться сообщением
Ссылка на сообщение
Поделиться на другие сайты
- 0
@Donaldo_Farekelka Чем мне это поможет?
Я ищу ответа на свой вопрос, на вопрос что делать, я делаю всё правильно (по крайней мере всегда работало), но в данный момент выводит ошибка, к чему эта тема если я знаю что это за ошибка, но не знаю как её исправить? Много вариантов перепробовал, в том числе и создать переменную.
Поделиться сообщением
Ссылка на сообщение
Поделиться на другие сайты
- 0
@DEST Я уже решил проблему, вот как решил:
Убрал +1, добавил в начало перед inputtext strval, получилось вот так
SetPVarInt(playerid, «player_report_id», strval(inputtext));
После ошибок не возникала, и всё получается готово, спасибо за помощь.
Поделиться сообщением
Ссылка на сообщение
Поделиться на другие сайты
Эта тема закрыта для публикации ответов.
-
Последние посетители
0 пользователей онлайн
Ни одного зарегистрированного пользователя не просматривает данную страницу
-
Похожий контент
-
От
OnMyTem4ick
Продам CEF HUD для вашего проекта сампкрмп
Создатель hud’a
vk : vk.com/onmytem4ick
телеграмм : https://t.me/OnMyTem4ick
За покупкой обращаться только к нему!Цена : 500 руб.
Если нужна установка от меня, то + 150 руб.
Оплата : Сбербанк QiwiХуд оптимизирован под все разрешения
Худ не багается, и никогда не выключается сам по себе
Полностью рабочий, и готов служить на вашем сервере верой, и правдой
Также за доп. плату могу подредактировать худ под ваш вкус
-
От
maximkakvolkov
Добрый вечер уважаемые пользователи. Залил мод с ботами, работать не хотят, в консоле пишет следующее
-
Brian Fletcher
Начинающий
- Регистрация
- 20 Янв 2021
- Сообщения
- 15
- Лучшие ответы
- 0
- Репутация
- 0
-
#1
Доброго времени суток. Вот решил написать тему т.к. уже более недели не могу разобраться в чем проблема.
Дело в том, что я решил написать простую (банальную) систему перевода денег на банковский счет и потерпел фиаско, ибо компилятор выдает ошибку: «033: array must be indexed (variable «inputtext»)». Как бы я не пытался это исправить ничего не помогает. Думаю здесь есть люди, которые помогут разобраться мне в этом. Я же прав?
Ах да код…
Код:
case Bank_Get_Money:
{
if(inputtext > Player[playerid][pMoney])
{
SendClientMessage(playerid,COLOR_WHITE,"Îøèáêà.");
}
if(inputtext <= Player[playerid][pMoney])
{
Player[playerid][pMoney] -= inputtext;
Player[playerid][pBmoney] += inputtext;
GivePlayerMoney(playerid, -inputtext);
}
else
{
SendClientMessage(playerid,COLOR_WHITE,"Îøèáêà.");
}
}
Заранее спасибо.
Posts: 686
Threads: 29
Joined: Feb 2011
Reputation:
0
Код:
error 033: array must be indexed (variable "inputtext")
pawn Код:
if(dialogid == 2)
{
if(!response)
{
SendClientMessage(playerid, 0xFF0000, "You have to login to play on this server!");
Kick(playerid);
}
else
{
new file[128], inpw;
format(file, sizeof(file), "\Users\%s.ini", pName(playerid));
inpw = dini_Int(file, "password");
if(inputtext != inpw && countpw < 4) // <-------------------- Line with error.
{
new countpw = 0;
new stringc[128];
format(stringc,sizeof(stringc),"You have entered the wrong password for %s, you have %i tries left.", pName(playerid), countpw);
SendClientMessage(playerid, 0xB20000, stringc);
ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"Login","Enter your password below:","Login","Kick");
countpw++;
return 1;
}
else if(inputtext != inpw && countpw > 3)
{
new stringc[128];
format(stringc,sizeof(stringc),
SendClientMessage(playerid, 0xFF0000, "You have been kicked for entering a wrong password for %s three times.", pName(playerid));
Kick(playerid);
return 1;
}
else
{
SetPlayerScore(playerid, dini_Int(file, "score"));
GivePlayerMoney(playerid, dini_Int(file, "money")-GetPlayerMoney(playerid));
SendClientMessage(playerid, 0xFFFF00, "You have successfully logged in!");
return 1;
}
}
return 1;
}
return 0;
Posts: 545
Threads: 4
Joined: Dec 2006
Reputation:
0
cant compare a string like that
pawn Код:
if(strcmp(inputtext, inpw, true, 10)&& countpw < 4)
like that
Posts: 686
Threads: 29
Joined: Feb 2011
Reputation:
0
I tried that.
Код:
error 035: argument type mismatch (argument 2)
Posts: 686
Threads: 29
Joined: Feb 2011
Reputation:
0
Lmao alright I think I fixed it, I changed
pawn Код:
if(inputtext != inpw && countpw < 4)
to
pawn Код:
if(inputtext[playerid] != inpw && countpw < 4)
I’ll just test it in game.
Posts: 1,110
Threads: 183
Joined: Jul 2009
Reputation:
0
oh my..
pawn Код:
if(strcmp(inputtext,inpw, true) == 0 && countpw < 4)
Posts: 305
Threads: 8
Joined: Feb 2009
Reputation:
0
You appear to be trying to load a string as an integer, thus the argument type mismatch when attempting to use strcmp.
Posts: 545
Threads: 4
Joined: Dec 2006
Reputation:
0
Quote:
Originally Posted by Antonio [G-RP]
oh my..
pawn Код:
if(strcmp(inputtext,inpw, true) == 0 && countpw < 4)
it should be if the strings dont match so like this
pawn Код:
if(strcmp(inputtext,inpw, true) != 0 && countpw < 4)
[/QUOTE]
Posts: 1,110
Threads: 183
Joined: Jul 2009
Reputation:
0
Quote:
Originally Posted by (SF)Noobanatior
it should be if the strings dont match so like this
pawn Код:
if(strcmp(inputtext,inpw, true) != 0 && countpw < 4)
[/QUOTE]
Ah, yes. I wasn’t paying attention, thanks.
Posts: 545
Threads: 4
Joined: Dec 2006
Reputation:
0
ok so you have inow as a intger getting read frome the file and inputtext as a string you cant compare theres is the password only numbers or is that hash value? if so what is your hash method?
Posts: 3,304
Threads: 58
Joined: Sep 2008
Reputation:
0
Quote:
Originally Posted by (SF)Noobanatior
ok so you have inow as a intger getting read frome the file and inputtext as a string you cant compare theres is the password only numbers or is that hash value? if so what is your hash method?
Quote:
Originally Posted by bigcomfycouch
You appear to be trying to load a string as an integer, thus the argument type mismatch when attempting to use strcmp.
The posts I quoted are basically the only two useful posts so far.
Your ‘Password’ is most likely to be a string, but you’re loading it as an integer:
pawn Код:
inpw = dini_Int(file, "password");
Now I don’t know a damn about dini (Nor would I like to know about it ), but first you should make ‘inpw’ a string and not an integer:
Secondly you should load the password the way you should (dini_Get?):
pawn Код:
inpw = dini_Get(file, "password");
Now to compare it with another string, you must use strcmp. This function returns zero when
succesful
, so:
pawn Код:
if(!strcmp(inputtext, inpw) && countpw < 4)
Good luck, if you got any questions please post ‘m here again.
- Статус
- Закрыто для дальнейших ответов.
-
#1
Вот еррор
E:cheburash Role Playgamemodesnew.pwn(234) : error 033: array must be indexed (variable «inputtext»)
E:cheburash Role Playgamemodesnew.pwn(237) : error 001: expected token: «;», but found «}»
E:cheburash Role Playgamemodesnew.pwn(241) : error 017: undefined symbol «inputext»
E:cheburash Role Playgamemodesnew.pwn(244) : error 001: expected token: «,», but found «;»
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
Сами строки
case 1:
{
if(!strlen(inputtext) || strlen(inputtext < 6 || strlen(inputtext) > 16)
{
show_register(playerid)
}
else
{
new query[128], temp[15];
mysql_real_escape_string(inputext, temp);
format(query, sizeof(query), «INSERT INTO ‘accounts’ (‘login’, ‘password’) VALUES (‘%s’, ‘%s’)», sendername(playerid), temp);
mysql_function_query(dbHandle, query, false, «», «»);
format((query, sizeof(query), «SELECT * FROM ‘accounts’ WHERE ‘login’ = ‘%s’ AND ‘password’ = ‘%s’ LIMIT 1», sendername(playerid), temp);
mysql_function_query(dbHandle, query, true, «player_login», «ii», playerid);
}
}
}
P.s админы поставте в спойлер т.кьсижу с телефона не показывает окно с сполером
Последнее редактирование модератором: 20.01.2017
-
#2
show_register(playerid);
Не забывай о ;
-
#3
Весь код заменяйте на этот:
case 1:
{
if(!strlen(inputtext) || strlen(inputtext < 6 || strlen(inputtext) > 16) return show_register(playerid);
new query[128], temp[15];
mysql_real_escape_string(inputtext, temp);
format(query, sizeof(query), «INSERT INTO ‘accounts’ (‘login’, ‘password’) VALUES (‘%s’, ‘%s’)», sendername(playerid), temp);
mysql_function_query(dbHandle, query, false, «», «»);
format((query, sizeof(query), «SELECT * FROM ‘accounts’ WHERE ‘login’ = ‘%s’ AND ‘password’ = ‘%s’ LIMIT 1», sendername(playerid), temp);
mysql_function_query(dbHandle, query, true, «player_login», «i», playerid);
}
Во-первых, как сказал пользователь выше, Вы пропустили точку с запятой после show_register(playerid), во-вторых, используйте не inputext, а inputtext (название аргумента неверное), в-третьих, Вы в player_login передаете один аргумент, но выделяется два:
«ii», playerid. Либо тогда второй аргумент добавляйте, либо удалите одну i (что я и сделал).
Amfy
Гость
-
#5
Эту строку:
Код:
if(!strlen(inputtext) || strlen(inputtext < 6 || strlen(inputtext) > 16)
Замени на:
Код:
if(!strlen(inputtext) || strlen(inputtext) < 6 || strlen(inputtext) > 16)
-
#6
Уже исправил ошибка не в этой строке в другой не правильно написал inputtext спасибо что помогали
- Статус
- Закрыто для дальнейших ответов.
Author |
Message |
|||
Veteran Member Join Date: Oct 2006 Location: Stockholm, Sweden |
|
|||
|
|
AMX Mod X Plugin Approver |
|
|||
|
Veteran Member Join Date: Oct 2006 Location: Stockholm, Sweden |
|||
|
|
AMX Mod X Plugin Approver |
|
|||
|
Veteran Member Join Date: Jul 2006 Location: France (95) |
|
|||
|
AMX Mod X Plugin Approver |
|
|||
|