برای دیدن نسخه كامل اینجا را كلیك كنید : ذخیره عکس در دیتابیس
mahtab30
2010/8/17, 11:11 PM
سلام بچه ها کسی میدونه چطوری میشه با استفاده از input file عکس رو تو دیتابیس ذخیره کرد و اونو تو یه صفحه دیگه نشون داد ؟
A.S.Roma
2010/8/18, 07:08 AM
منطقی تر اینه که نام و مسیر عکس رو تو دیتابیس ذخیره کنی و خود عکس رو تو هاست.
توی بانکت یه فیلد بذار به نام Photo از جنس varchar از Input File فایل رو بخون اسمشو تو بانک بذار و خودشو از طریق متد Save تو هاست ( هارد ) کپی کن.
موقع نشون دادن هم خاصیت ImageUrl کنترل Image رو بایند می کنی به فیلد Photo
mahtab30
2010/8/18, 11:18 AM
دوست خوبم میشه یکم توضیح بدی ؟
با این کدها اسمشو میشه ذخیره کرد . آدرسشو چجوری میشه ذخیره کرد ؟
cmd.CommandText = "insert into m1 (photo) values (@photo)";
cmd.Parameters.AddWithValue("@photo", File1.Value(;
و خودشو چجوری از طریق متد save تو هاست کپی کنم ؟ مرسی
A.S.Roma
2010/8/19, 09:31 AM
دوست خوبم میشه یکم توضیح بدی ؟
با این کدها اسمشو میشه ذخیره کرد . آدرسشو چجوری میشه ذخیره کرد ؟
cmd.CommandText = "insert into m1 (photo) values (@photo)";
cmd.Parameters.AddWithValue("@photo", File1.Value(;
و خودشو چجوری از طریق متد save تو هاست کپی کنم ؟ مرسی
فرض کنید یک پوشه دارید به نام Images که کل عکسهاتون رو اونجا میریزید :
string path = "~/Images/";
if (FileUpload1.PostedFile.ContentLength == 0)
{
//File Is not valid ...
return;
}
string fileName = FileUpload1.PostedFile.FileName;
string fullPath = path + fileName;
SubmitInDataBase(fullPath);
FileUpload1.SaveAs(Server.MapPath(fullPath));
کار متد SubmitInDataBase ثبت نام فایل به همراه مسیر ( متغییر Fullpath ) در دیتابیس است. که بایستی پیاده سازی شود.
mahtab30
2010/8/19, 02:41 PM
مرسی از لطفتون . فقط اگه ممکنه بگید آدرسو باید چجوری بدم . آخه هر کاری میکنم exeption میده .
A.S.Roma
2010/8/21, 11:55 AM
شما باید فیلد آدرس رو اینجوری ذخیره کنید :
~/Images/filename.jpgتوی کدی که بالا قرار دادم میشه متغییر fullPath .
شما دقیقا" چی مینوسی ؟!
و روی کدوم خط ارور میگیری !؟
mahtab30
2010/8/21, 02:23 PM
همین خطی که متغیر path رو تعریف میکنم :
string path = "D:/image/";
کلا هر شکلی مینویسم Exeption میده . با دو تا اسلش و بک اسلش هم امتحان کردم
http://up.iranblog.com/Files2/2f5e323374c5405b85de.JPG.
A.S.Roma
2010/8/22, 10:15 AM
توجه کنید که می نویسه Virtual Path ... .
در طراحی سایت شما یک فولدر Root دارید . یعنی فولدری که وبسایتتون اونجا کپی شده . این فولدر تو کامپیوتر شما می تونه درایو D باشه تو کامپیوتر من میتونه درایو F , E یا هر جای دیگه باشه ! حالا چکار کنیم که سایت روی هر PC اجرا بشه !؟ اینجاست که نیاز به آدرس دهی مجازی احساس میشه.
تو کدهایی که من براتون گذاشتم اینجوری آدرس دادم :
~/Images/
علامت تیلدا (~) نشانگر همون فولدر root هست. کار متد Server.MapPath هم تبدیل آدرس مجازی به آدرس واقعی ( که مثلا" میشه D:/Images ).
پس دوست من اگر می خوای برنامت کار کنه . تو فولدر پروژت یه بولدر بساز به نام Images بعد تو آدرس دهی مثل من بنویس.
موفق باشی ...
mahtab30
2010/8/22, 10:53 AM
مرسی دوست عزیزم . فکر کردم منظورت اینه که خودم یه پوشه image توی کامپیوتر بسازم و آدرس واقعی شو بنویسم . خیلی خیلی لطف کردی . مشکلم حل شد . بازم ممنون .:gol::gol:
Powered by vBulletin® Version 4.1.12 Copyright © 2012 vBulletin Solutions, Inc. All rights reserved.