Очень странно. Проблема явно нестандартная.
А на чём у вас запущен moodle ?
Есть подозрение, что на вашем сервере что-то не так с настройкой php.
Нужно убедиться, что у вас в php есть расширение mbstring и оно использует utf-8 по умолчанию (см. администрирование/сервер/информация о php).
IMHO без расшрения mbstring moodle просто не должен работать (раньше не работал), но костыли в коде говорят, что без него тоже будет работать с использованием какой-то встроенной библиотеки.
На сколько оно "рабочее" я не знаю.
Чтобы понять что происходит можно временно подправить код:
в файле admin/tool/uploaduser/locallib.php найти строку:
print_error('invalidfieldname', 'error', $returnurl, $field);
Перед ней вставить код:
echo '<pre>',print_r($columns,1).print_r($stdfields,1),'</pre>';
А в самой строке заменить $field на $lcfield
И с этими изменениями попробовать загрузит csv файл.
Потом исправить назад.
А на чём у вас запущен moodle ?
Есть подозрение, что на вашем сервере что-то не так с настройкой php.
Нужно убедиться, что у вас в php есть расширение mbstring и оно использует utf-8 по умолчанию (см. администрирование/сервер/информация о php).
IMHO без расшрения mbstring moodle просто не должен работать (раньше не работал), но костыли в коде говорят, что без него тоже будет работать с использованием какой-то встроенной библиотеки.
На сколько оно "рабочее" я не знаю.
Чтобы понять что происходит можно временно подправить код:
в файле admin/tool/uploaduser/locallib.php найти строку:
print_error('invalidfieldname', 'error', $returnurl, $field);
Перед ней вставить код:
echo '<pre>',print_r($columns,1).print_r($stdfields,1),'</pre>';
А в самой строке заменить $field на $lcfield
И с этими изменениями попробовать загрузит csv файл.
Потом исправить назад.