我试图将图像直接插入到MySQL数据库表中。在我的数据库中,我总是得到[BLOB-0B]。它不会将图像插入到表中。我也没有收到任何错误。我很困惑。
- 菲律宾**
ini_set('display_startup_errors',1);
ini_set('display_errors',1);
error_reporting(-1);
include('config.php');
if (isset($_FILES['image']) && $_FILES['image']['size'] > 0)
{
$tmpName = $_FILES['image']['tmp_name'];
$fp = fopen($tmpName, 'r');
$data = fread($fp, filesize($tmpName));
$data = addslashes($data);
fclose($fp);
}
try
{
$stmt = $conn->prepare("INSERT INTO images ( picture ) VALUES ( '$data' )");
// $stmt->bindParam(1, $data, PDO::PARAM_LOB);
$conn->errorInfo();
$stmt->execute();
}
catch(PDOException $e)
{
'Error : ' .$e->getMessage();
}
- 超文本标记语言**
<form action="upload.php" method="post">
<input id="image" name="image" type="file" />
<input type="submit" value="Upload" />
</form>
1条答案
按热度按时间y3bcpkx11#
你几乎得到它,你想要
PDO::PARAM_LOB
是你上面创建的文件指针,而不是阅读fp的结果