我正在创建一个Asp.Net MVC网站.
我在过去,对于繁重的应用程序,多层应用程序,使用数据库来存储文件.
但现在我在质疑自己,这对网站来说是个好主意吗?在绩效视图中?
它有几个优点:
但它也有一些缺点:
你怎么看?这合理吗?我在互联网上搜索,但我没有找到网站的某些论点.我的问题主要是关于FILESTREAM VS FILESYSTEM,我确定FileStream比较慢,但是很多?因为如果它只是百分之一,那么功能的获得是值得的.
我正在开展一项任务,通过jQuery和PHP实现图像上传和自动缩放(从完整大小到缩略图).
我当然可以提出两种方法:
首先,将两个图像作为二进制对象直接存储到MySQL中; 其次,仅存储图像的URL并将图像保存在服务器上的某处.
图像供每个人查看,因此据我所知,没有安全限制.
就个人而言,我没有任何偏好,但是,最终,商业人士将把图像作为系统的一部分进行管理(CRUD).所以我想知道哪些对他们来说好一点?
当然,我正在为员工构建一个易于使用,可视化的Web界面来控制流程,但我不确定这是否足够.经验教训告诉我,如果我不考虑未来并寻求最灵活的方法,我可能迟早会搞砸自己.
PS.以下链接是我到目前为止所发现的,这很酷,没有涉及闪存:) Andrew Valum的ajax图像上传jQuery插件
如果我希望我的网络应用中的每个用户能够上传大约6张带描述的图片,那么在数据库中存储该信息的最佳方式是什么?
你会怎么做?
我的文件夹/目录中有500k个独特的图像.我想通过名称调用它,所有名称都存储在Mysql数据库中.但我听说图像可以存储在数据库中.所以我的问题是更快速地显示图像的选项.我需要存储在mySQl中,还是可以保留我所遵循的相同方法?
如果我需要存储在mySQL中,那么如何为它创建一个表,以及如何存储所有这些图像?
我目前正在创建我朋友的艺术家作品集网站.她让我创建一个简单的系统,在那里她可以上传图像,它将根据其所在的类别显示在网站上.我偶然发现了几种有用且有趣的方法来实现这一目标,我将其缩小到对我来说最有用的两种方法.不幸的是,我不知道哪一个会是更好的选择.
选项A:http://www.phpriot.com/articles/images-in-mysql
此方法使用一种非常有争议的方式使用
blob数据类型在mySQL表中存储图像.我已经读过许多PHP程序员不推荐它,但它看起来似乎完全符合我的需求.据我所知,这很简单容易:
- 将图像上传到DB
- 根据所选类别从DB显示图像.
选项B: http ://webdeveloper.com/forum/showthread.php?t = 101466
此方法仅显示如何使用PHP将图像上载到目录.我想,一旦完成,我可以创建该目录中所有图像的简单列表并将其放入数组中.然后循环遍历数组并在
<img>标签中显示这些项目.
所以,你看,我还在学习如何使用PHP和mySQL,这个网站是学习的好动力.但是,我不确定使用哪种方法,或者大多数Web开发人员使用单一方法?
需要考虑的问题// TL; DR
在此先感谢您的回复!
我正在一个在线购物网站上工作,它也会有产品图片.如果我应该存储图像,我会感到困惑.如果我将这些图像存储在数据库中,则必须将url保存到数据库中,如果我以blob格式存储图像,我必须在使用php之前对其进行解码.谁能告诉哪一个会更好?
如果条形码是根据实体的唯一编号生成的,我们是否应该将条形码图像存储在数据库中?或者我们应该在必要时使用javascript库来绘制条形码吗?
我刚刚编写了这段代码来生成图像
<?php
$canvas = imagecreatetruecolor(800, 350);
$pink = imagecolorallocate($canvas, 255, 105, 180);
$white = imagecolorallocate($canvas, 255, 255, 255);
$green = imagecolorallocate($canvas, 132, 135, 28);
imagefill($canvas, 0, 0, $white); // BACKGROUND
function drawlinebox($x1, $y1, $x2, $y2, $height, $color){
global $canvas;
imagesetthickness ( $canvas, 1 );
for ($i=1; $i < $height; $i++){
imageline( $canvas, $x1, $y1, $x2, $y2, $color );
$y1++; $y2++;
}
}
drawlinebox(20, 20, 780, 300, 30, $green);
drawlinebox(20, 300, 780, 20, 30, $pink);
// Output and free from memory …Run Code Online (Sandbox Code Playgroud) 我想我有两种方法可以在php应用程序中存储图像:要么将它们存储在数据库中,要么存储到具有唯一名称的文件夹中.考虑到我想最小化数据库连接,如何保护包含用户上传图像的文件夹?
所以基本上,每个用户都会有一个个人资料,并将他们的照片上传到网站,与他们想要的任何人分享.我计划将它们存储如下:
/root/somefolder/{userid}{uniquenumber}.jpg
Run Code Online (Sandbox Code Playgroud)
如果我配置htaccess以防止访问当前文件夹,它就足够了吗?或者我应该采取其他一些安全措施吗?
干杯
将图像文件存储在数据库中的正确方法是什么.我正在使用文件路径来存储图像.
但问题出在这里.我必须为我的网站显示3个不同大小的一个图像.一个用作缩略图,第二个用于290px*240px,第三个用于全尺寸(约500px*500px).由于使用HTML img元素缩小图像不被认为是好的,那么它的解决方案应该是什么呢?
目前,我正在做的是为一件事存储3个不同尺寸的图像.有没有更好的方法?
$serv = "xxx";
$user = "xxx";
$pass = "xxx";
$db = "xxx";
$imgloc = "../images/bg.jpg";
$image = fopen($imgloc, 'rb');
$imageContent = fread($image, filesize($imgloc));
$conn = new mysqli($serv, $user, $pass, $db);
$sql = "INSERT INTO `image`(`advert_id`,`img`) VALUES('1','" . $imageContent . "');";
$conn->query($sql);
Run Code Online (Sandbox Code Playgroud)
我正在使用上面的代码尝试将二进制文件插入到我的MySQL数据库中,但没有任何内容被发送到数据库.$ imageContent只在数据库中显示为null,但如果我回显$ imageContent,它似乎显示二进制数据.
advert_id只是一个int字段,img是一个BLOB
如何将图像或文件上传到本地服务器C#Windows应用程序中的文件夹?我更喜欢这种方法,而不是将图像保存到数据库,因为它很重.
我正在使用Windows Server 2008,请帮助我获取文章或教程来完成此任务.
我目前正面临一个问题.我不知道如何将图像上传到mysql数据库.之后我将需要从数据库中检索并显示它.
这实际上是因为我需要创建一个包含添加到购物车按钮的在线目录.但是对于要在在线目录中显示的图像,我不能使用硬编码.我希望每当我在管理页面中有新产品时,都能经常更新在线目录.
我只能用文本代替图像.
if (isset($_POST['submit'])){
$name = $_POST['name'];
$add = mysql_query("INSERT INTO maritime_products(name) VALUES('$name')") or die("gg2");
}
$showname = mysql_query("SELECT * FROM maritime_products");
while($anything = mysql_fetch_array($showname)){
echo $anything['name'];
}
Run Code Online (Sandbox Code Playgroud) php ×10
mysql ×8
blob ×3
image ×3
javascript ×2
upload ×2
asp.net ×1
asp.net-mvc ×1
barcode ×1
c# ×1
codeigniter ×1
database ×1
file-storage ×1
file-upload ×1
filestream ×1
gd ×1
html ×1
jquery ×1
security ×1
sql-server ×1