sql >> Databasteknik >  >> RDS >> Mysql

pdo infoga bild i databasen direkt - infogar alltid BLOB - 0B

Du har nästan fattat det, du vill ha PDO::PARAM_LOB att vara en filpekare som du skapade ovan, inte resultatet av att läsa fp

if (isset($_FILES['image']) && $_FILES['image']['size'] > 0) 
{ 
   $tmpName  = $_FILES['image']['tmp_name'];  

   $fp = fopen($tmpName, 'rb'); // read binary
} 

try
{
   $stmt = $conn->prepare("INSERT INTO images ( picture ) VALUES ( ? )");
   $stmt->bindParam(1, $fp, PDO::PARAM_LOB);
   $conn->errorInfo();
   $stmt->execute();
}
catch(PDOException $e)
{
   'Error : ' .$e->getMessage();
}



  1. Returnera operativsystemversionsinformation i SQL Server med vyn sys.dm_os_host_info Dynamic Management

  2. SQL UNION Cheat Sheet med 10 enkla och användbara tips

  3. 5 sätt att uppdatera data med en underfråga i Oracle SQL

  4. MySql Triggers för att radera underordnade poster i samma tabell