Как правильно организовать добавление файла PDF в админ панели сайта? Где лучше хранить эти данные — в БД или папке ресурса?
Храните файлы в файловой системе, а в БД храните ссылку на этот файл. В БД записываете путь к файлу относительно имени вашего домена. А сам файл добавляете на сервер (или куда вам нужно), например средствами php ( здесь указываете абсолютный путь к хранилищу сервера ):
move_uploaded_file
Соответственно, чтобы просмотреть файл, просто выводите на него ссылку, которую вы записали в вашу БД.
Вот пример добавления файла, как передаются файлы из html формы в массив $_FILES думаю знаете:
//Добавление файла
$i=0;
while($_FILES["myfile"]["name"][$i]!=NULL)
{
$upload_file=$_FILES["myfile"]["name"][$i];
move_uploaded_file($_FILES["myfile"]["tmp_name"][$i],"H://files");
$folder="/files";
$insert_path="INSERT INTO myfile
(FilePath,NameFile)
VALUES ('$folder','$upload_file')";
mysqli_query($conn, $insert_path);
$i++;
}
Вот пример просмотра файла из БД:
$select_path="SELECT NameFile,FilePath FROM myfile ";
$var=mysqli_query($conn, $select_path);
while($row=mysqli_fetch_array($var))
{
$file_name=$row["NameFile"];
$file_path=$row["FilePath"];
echo '<br><label><a href="' .$file_path. '/'. $file_name. '">'. $file_name .'</a></label><p></p>';
}
Сборка персонального компьютера от Artline: умный выбор для современных пользователей