Mysql
 sql >> база данни >  >> RDS >> Mysql

Запазване на пътя на файла на каченото изображение в MySQL база данни

Проблеми със сигурността и отхвърлено разширение настрана, всичко, което трябва да направите, е да вмъкнете името на файла в базата данни. За да направите това, добавете поле „име на файл“ към вашата база данни и след това съответно коригирайте вашата заявка за вмъкване:

INSERT INTO products (name, description, price_low, price_high, filename)
              VALUES (:name, :desc, :price_low, :price_high, :filename)

Освен това вашият $uploaddir променливата е празна, файловете вероятно дори не се записват никъде в момента. За да преместите вашите файлове правилно, опитайте нещо подобно:

$uploaddir = '/path/where/you/can/save/';
$rawFilename = $_FILES['userfile']['name'];
$extension = pathinfo($rawFilename, PATHINFO_EXTENSION);

$uploadfile = $uploaddir . md5($rawFilename) . '.' . $extension;

if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
    echo "File is valid, and was successfully uploaded.\n";
} else {
    echo "Upload failed";
}

Този скрипт предполага, че се доверявате на каченото съдържание и функцията md5 е просто бърз и лесен начин за „дезинфекция“ (ако мога да го нарека така) името на файла.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Rails + Amazon RDS:проблеми със забавянето

  2. Проста mysql заявка за проверка дали съществува ред

  3. Как да използвате MySQL dump от отдалечена машина

  4. Как да намерите уникални двойки от две колони в SQL?

  5. Как да коригирам грешката „Стойност извън диапазона, коригирана за колона“?