Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нем неправильно. Необходимо обновить браузер или попробовать использовать другой.
(12) : ==> Array variable has incorrect number of subscripts or subscript dimension range exceeded.:
_yadisk_upload_file($uploads_file[$i], '/krl/' & $uploads_file[$i])
_yadisk_upload_file(^ ERROR
просто подумайте 5 мин и попытайтесь понять что происходит во время выполнения кода. в последнем примере я допустил простейшую опечатку, которую должен понимать каждый - это основы.
Добрый день. Подскажите в чем может быть причина. Текстовые файлы на яндекс диск заливаются, а вот с архивами и pdf возникли проблемы. При подстановке в пример других имен, пишет что файл загружен. Но на диске он не появляется. Пробовал добавить строки как в одном из сообщений - решения не добился.
alex33 сказал(а):
На замену FileRead:
Код:
Local $h_BinFile = FileOpen($s_local_path, 16)
Local $data = FileRead($h_BinFile)
FileClose($h_BinFile)
;~ Local $content_length = FileGetSize($s_local_path)
Local $content_length = BinaryLen($data)
Добавлено:
Сообщение автоматически объединено:
Этот код надо вставить после этой строки:
Код:
Local $content_type = __WinHttpMIMEType($s_local_path)
Скрипт работает. Файл скачивается. Но очень долго.
Например, файл 250 МБ через скрипт качается более 30 минут, тогда как, если скачать через браузер, то около 1-2 минут.
Можно как-то ускорить скачивание?
При выполнении _yadisk_move() и _yadisk_copy(), если в пути назначения $s_yadisk_path_destination присутствуют пробелы, то получаем ошибку HTTP/1.1 400 Bad Request.
Пробелы в пути источника $s_yadisk_path допускаются.
Поэтому, код нужно поправить примерно так (для _yadisk_copy() аналогично):
Если это связано с ограничением набора символов в URL-адресах, тогда нужно применять конвертирование $s_yadisk_path_destination в корректный URL-адрес.
И еще одно уточнение. По документации Яндекса, признак перезаписи файла по умолчанию = True. В коде это переменная $f_overwrite.
https://tech.yandex.ru/disk/doc/dg/reference/copy-docpage/
Добавлено:
Сообщение автоматически объединено:
Erm сказал(а):
Скрипт работает. Файл скачивается. Но очень долго.
Например, файл 250 МБ через скрипт качается более 30 минут, тогда как, если скачать через браузер, то около 1-2 минут.
Можно как-то ускорить скачивание?
К сведению. При выгрузке большого файла на ЯД, если не хватит ОЗУ, скрипт вылетит с ошибкой "Error allocating memory.". И обработчики ошибок здесь не помогут.
У меня получалось примерно слеледующее:
- ОЗУ 2Gb - 59Mb - Выгружает, 305Mb - Ошибка
- ОЗУ 8Gb - 403Mb - Выгружает (за 31:35 мин), 646Mb (48:43 мин), 686Mb - Ошибка.
Увеличить в разы объем выгружаемого файла удалось путем передачи по ByRef во всех процедурах модуля WinHttp.au3 переменной, хранящей выгружаемые данные. Примерно так: