Как отправить путь загруженного изображения в каталог (веб-каталог) в MySQL?. Можно ли отправить одновременно?

1

Это моя php-сторона, My IDE - это Android Studio.. Что я могу сделать, чтобы сделать имя и образ для вставки в mysql здесь?

$name = $_POST["name"];
$image = $_POST["image"];

$decodedImage =base64_decode("$image");
file_put_contents("pictures/" . $name . ".JPG", $decodedImage);
  • 0
    изображения никогда не должны быть вставлены в базу данных.
  • 0
    у вас есть решения @IgnazioC?
Показать ещё 2 комментария
Теги:

1 ответ

0

Разрабатывая комментарий IgnazioC, вы можете сгенерировать имя изображения, а не использовать тот, который предоставляется пользователем.

$name = $_POST["name"];
$image = $_POST["image"];

$decodedImage =base64_decode("$image");
$imageId = md5(microtime(true));

file_put_contents("pictures/" . $imageId . ".JPG", $decodedImage);

После этого вы можете сохранить переменную $imageId в базе данных и прекратить использование $name = $_POST["name"]; как если бы он был неправильно обработан, это может быть проблема безопасности, поскольку я мог бы предоставить имя изображения как ../whateverfile.jpeg и получить доступ к нему извне.

Еще более сложной $imageId было бы, например, разделить строку $imageId на группы из 2 или 3 букв и создать структуру каталогов с ними, а затем сохранить там изображение. Это позволит вам избежать ограничения файла файловой системы на каждую папку.

  • 0
    так что само изображение находится в каталоге на веб-странице, поэтому я могу одновременно отправить $ imageId в mysql из предоставленной вами кодировки? @Gori
  • 0
    Точно @TamimiBrewster, сразу после сохранения изображения, вы можете вставить $imageId в MySQL :)
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню