0

我想问你如何使用这段代码在mysql和文件夹中正确存储图像:

<?php

if (isset($_FILES['image']) && $_FILES['image']['size'] > 0) { 

          // Temporary file name stored on the server
          $tmpName  = $_FILES['image']['tmp_name'];  

          // Read the file 
          $fp     = fopen($tmpName, 'r');
          $data = fread($fp, filesize($tmpName));
          $data = addslashes($data);
          fclose($fp);


          // Create the query and insert
          // into our database.
          $query = "INSERT INTO tbl_images ";
          $query .= "(images) VALUES ('$data')";
          $results = mysql_query($query, $conn);

          // Print results
          print "Thank you, your file has been uploaded.";

}
else {
   print "No image selected/uploaded";
}


if (!mysql_query($sql, $link))
   {
   die('Error: ' . mysql_error());
   }

?>'

还有如何正确显示它。我的图像数据库是 id, images。我需要更多的东西来完成这项工作吗?或者这就足够了。谢谢你。

4

2 回答 2

1

从上面的代码中,图像将保存在数据库中而不是文件夹中。要保存在文件夹中,您必须在插入查询后使用以下代码。

move_uploaded_file($tmpName,"upload/" .$filename );

这里上传是文件夹名称。

于 2012-12-04T07:17:00.910 回答
0

如果要将图像存储在数据库中,可以使用base64_encode方法

$image = file_get_contents('filename.gif');
$imencoded = base64_encode($image);   
$query = "INSERT INTO tbl_images ";
$query .= "(images) VALUES ('$imencoded')";

但不建议将图像存储在 db 中,并且在 IE6 和 7 中不支持。

于 2012-12-04T07:08:45.197 回答