Автокликер Clickermann :: Форум

Основной раздел => Общие вопросы => Topic started by: Hito on September 26, 2020, 02:41:29 PM

Title: Каким образом возникает эта ошибка?
Post by: Hito on September 26, 2020, 02:41:29 PM
Ребят, каким образом в этом скрипте:
Code: (clickermann) [Select]
getfilelist($ar_bmp, STRCONCAT("variables\",$name,"_*_ReloadScript.bmp"))
IF(arrsize($ar_bmp) > 0)
   strseparate($ar_bmp[0], "_", $nr)
   $reload_script = $nr[1]
   UNDEFINE ($nr)
END_IF
UNDEFINE ($ar_bmp)
возникает ошибка итерпритации строки - $reload_script = $nr[1]?
Title: Re: Каким образом возникает эта ошибка?
Post by: 4.У.В.@.К on September 26, 2020, 03:52:30 PM
Так получается при попытке обратиться к несуществующей ячейке массива.

Code: (clickermann) [Select]
strseparate($ar_bmp[0], "_", $nr) // разбиваем строку $ar_bmp[0] на подстроки, в массив "$nr"

LOGWRITE (ARRSIZE($nr)) // размер массива "$nr" (в логе: 1)

Ячейки $nr[1] не существует.
В общем надо смотреть что находится в строке $ar_bmp[0], и есть ли в ней подстрока "_".
Title: Re: Каким образом возникает эта ошибка?
Post by: Hito on September 26, 2020, 07:51:24 PM
Так получается при попытке обратиться к несуществующей ячейке массива.

Code: (clickermann) [Select]
strseparate($ar_bmp[0], "_", $nr) // разбиваем строку $ar_bmp[0] на подстроки, в массив "$nr"

LOGWRITE (ARRSIZE($nr)) // размер массива "$nr" (в логе: 1)

Ячейки $nr[1] не существует.
В общем надо смотреть что находится в строке $ar_bmp[0], и есть ли в ней подстрока "_".
Посмотри на скрипт. Я ж его не просто так выложил, а чтобы все видно было. Там условие - IF(arrsize($ar_bmp) > 0), значит файл STRCONCAT("variables\",$name,"_*_ReloadScript.bmp") был найден. Разбиваем его на подстроки по "_" и в итоге имеем $nr[0], $nr[1] и даже $nr[2], так как по условию, как минимум, в названии два "_" имеется.
Title: Re: Каким образом возникает эта ошибка?
Post by: Hito on September 26, 2020, 08:12:24 PM
А вообще там, либо файл под названием "M1_0_ReloadScript.bmp", либо "M1_1_ReloadScript.bmp". Ну, цифра в "M1" может быть от 1 до 15. То есть, может быть, например "M15_1_ReloadScript.bmp".