php проверить, существует ли файл

может ли кто-нибудь мне посоветовать, как сделать проверку, чтобы определить, существует ли файл в базе данных или нет, прежде чем мы его загрузим?

Я хочу загрузить файл в базу данных, но перед его сохранением, я хочу проверить, что файл уже существует первым. если да, то не выполняйте выполнение вставки.

Я использовал эту ссылку для uplaoding файлов.

Большое спасибо.

Related of "php проверить, существует ли файл"

Я не уверен, что это то, о чем вы просите, но вы использовали встроенную функцию PHP, file_exists (ABSOLUTE-PATH-TO-FILE)?

$exists = file_exists('myfile.doc'); if(!$exists) { // do your processing } 

http://php.net/manual/en/function.file-exists.php

Если вы проверяете базу данных, просто запросите, какой столбец может содержать ваш файл, например:

 SELECT * FROM my-table WHERE my-column = 'my-uploaded-file-name'; 

Судя по статье, с которой вы связались, файл считается «загруженным в базу данных», когда этот запрос был выполнен:

 $query = "INSERT INTO upload (name, size, type, content ) ". "VALUES ('$fileName', '$fileSize', '$fileType', '$content')"; 

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

Я полагаю, что такую ​​запись можно было бы получить с помощью запроса, подобного этому:

 select * from upload where name = '$fileName' and size = '$fileSize' and type = '$fileType' and content = '$content' 

Если этот запрос возвращает результат, ваш файл, вероятно, уже «находится в базе данных».

BTW: Чтобы избежать проверки содержимого всего файла, решение может заключаться в том, чтобы добавить новый столбец в вашу таблицу загрузки, чтобы сохранить какой-то хэш файла (например, md5 и / или sha1 ) .

BTW 2: вы должны немного прочитать о SQL Injections , прежде чем использовать код, представленный в этой статье, без его понимания: следующая часть кода, скопированная / вставленная из раздела « Код для загрузки файлов », довольно пугающая, например :

 $id = $_GET['id']; $query = "SELECT name, type, size, content " . "FROM upload WHERE id = '$id'";