Я работаю над своей программой, где пользователь будет загружать изображения в документ / папку. На моей странице есть кнопка изменить изображение, где пользователь может редактировать или добавлять некоторую информацию к изображению.
Это URL для загрузки: SAMPLE/index.php/document
Затем я загрузил sample.jpg
// это работает на изменение
Я снова загрузил новое изображение. На этот раз с пространственными персонажами sample_(3)1.jpg
// не сработало! Отправленный вами URI содержит запрещенные символы.
Это URL для изменения: SAMPLE/index.php/document/modify_document/sample_(3)1.jpg
Я пытался включить проверку URI и сослаться на это запрещенные персонажи, но проблема в том, что некоторые из моих веб-страниц пострадали. (У меня много страниц на моем веб-сайте)
Я думаю, что лучшим решением для этого может быть уведомление пользователя о том, что загрузка файлов со специальными символами запрещена. Я не знаю, как это сделать в CodeIgniter. Если у вас есть идеи, пожалуйста, не стесняйтесь опубликовать свой ответ. Спасибо!
На самом деле, вам не нужно это делать. Учтите, что все загруженные вами пользовательские файлы будут храниться в одном каталоге на вашем сервере. Если два пользователя загрузили файл с одинаковым именем или пользователь загрузит файл с одинаковым именем, у вас возникнут проблемы с обращением к ним.
Поэтому обычно я сохраняю файл (в файловой системе) с временным именем, например, $ _FILES [«yourfile»] [«tmp_name»], затем сохраняю это имя файла для редактирования в базе данных вместе с другим поля, в которых хранится «отображаемое имя», отображаемое пользователю, или имя файла, когда пользователь хочет загрузить файл обратно.
Что-то вроде
таблица user_uploaded_pic {id, filepath, displayname}
Других решений пока нет …