Загрузка изображений на хост и хранения пути в бд

147
14 мая 2019, 10:50

У меня есть форма заргузки картинки по url , идея в том чтоб сначало загрузить картинку на сервер и потом уже адрес прописать в бд. Проблема 1: Данный скрипт php загружает на сервер картинку по url , но сколько я б не загружал картинок оны заменяют друг друга , думаю проблема в том что у них одинаковое названия, не знаю как сделать чтоб названия генерировались. Проблема 2: Не знаю как после загрузки мне сохранить путь картинок в бд!

<?php 
 
$link = $_POST['link']; 
$file = file_get_contents($link); 
file_put_contents("site.jpg", $file); 
 ?>
<form action="reg.php" method="POST"> 
<input type="text" name="link" > 
<button type="submit">Загрузить</button> 
</form>

Answer 1

Можно давать названия файлам по времени

$img_id=microtime(true);
file_put_contents($img_id.".jpg", $file);

А в БД хранить $img_id, с цифровыми данными обычно база летает шустрее и занимается меньше места. Зачем хранить пути в БД не совсем ясно - можно подставлять их при выборке из базы.

При большом объеме данных я бы организовал MySql таблицу следующим образом:

`id` BIGINT UNSIGNED PRIMARY KEY,
`filetype` ENUM('jpg','png'),
`path` ENUM('cat','dog')
 вывод данных path/id.filetype
READ ALSO
Почему curl делает 2 запроса подряд?

Почему curl делает 2 запроса подряд?

Ребят, помогите пожалуйста, я просто уже не понимаю почему так происходит

157
Не отображается русский текст в php-форме

Не отображается русский текст в php-форме

Там, где английские буквы, все нормально, но там, где русские - получаются какие-то кракозябрыНасколько понимаю, что-то не так с кодировкой,...

139
Удалить все из строки php

Удалить все из строки php

Всем привет, вот есть например вот такая строка vkcom/id11111, как удалять все символы за исключением id11111? Если строка может изменяться на такую...

144
Как просто распарсить response в php

Как просто распарсить response в php

Ко мне приходит следующий responseМне нужно его распарсить и записать в базу данных с такими полями event_id, title, с fields все поля title превратить в строку,...

149