PDA

View Full Version : سوال: ذخیره عکس پیش فرض در fileuploadبر حسب جنسیت



helia64
پنج شنبه 12 مرداد 1391, 13:31 عصر
سلام دوستان

چطور میشه یک عکس پیش فرض به fileupload داد؟

برای زمانی میخوام که اگر کابر عکسی نداشت بر حسب جنسیت عکسی در بانک برای اون مشخصات ذخیره بشهو چطوری میشه این کار را انجام داد. نوع عکسم در بانک image هست

ممنون

Alfred188
پنج شنبه 12 مرداد 1391, 13:37 عصر
سلام،
لازم نیست حتما عکسی براش آپلود کنید، فقط چک کنید که اگه فیلد مربوط به عکس خالی بود یه عکس پیش فرض برحسب جنسیت نمایش داده بشه که اون عکس رو هم قبلا خودتون آپلود کردید
موفق باشید

helia64
پنج شنبه 12 مرداد 1391, 14:03 عصر
ممنون مشکل من اینکه چطور عکس رو از قبل اپلود کنم /مسیری که باید برای fileupload بنویسم چه فرمتی دارد/
ممنون

Alfred188
پنج شنبه 12 مرداد 1391, 14:58 عصر
لازم نیست که تو فایل آپلود کاری کنید! عکس ها رو با فایل های سایت آپلود کنید
2تا عکس برای 2تا جنسیت آماده می کنید و اونها رو تو یکی از پوشه های سایت مثلا image قرار می دید، بعد میاید یه شرط می قرار می دید که اگه فیلد مربوط به عکس خالی بود آدرس عکس مثلا باشه: image/male.jpg

helia64
جمعه 13 مرداد 1391, 09:04 صبح
ظاهرا من درست نتونستم منظورم رو برسونم

ببینید من یک صفحه ای در سایتم دارم برای ثبت نام دانشجو ، عکس دانشجو را از نوع image در بانک ذخیره می کنم .
وقتی که اططلاعات دانشجو داره ثبت می شه ممکن هست همون موقع عکس نداشته باشه پس من باید بتونم یک عکس پیش فرض براش ذخیره کنم از طرفی تا من عکس ندم بقیه اطلاعاتم هم ثبت نمیشه

کدی که برای عکس دادم بصورت زیر هست:

FileUpload



img = (FileUpload)imgUpload;


Byte[] imgByte = null;


if (img.HasFile && img.PostedFile != null)

{


//To create a PostedFile


HttpPostedFile File = imgUpload.PostedFile;


//Create byte Array with file len

imgByte =
newByte[File.ContentLength];


//force the control to load data in array

File.InputStream.Read(imgByte, 0, File.ContentLength);

}

حالا می خوام براش یک else بگذارم که اگر عکسی انتخاب نشده بود بره از پوشه image/male.jpg و برداره و به باینری تبدیل کنه که بتونم تو بانک ذخیره اش کنم.

مشکل من این هست که تو قسمت else چی بمویسم

در واقع بیشتر منظورم این هست که چطوری آدرس urlی که به کنترل image دادم به باینری تبدیل کنم؟
کد زیر رو می نویسم ولی از مسیرم خظا میگیره:


FileStream fs = new FileStream("~/pic/male.jpg", FileMode.Open);


FileInfo fi = new FileInfo("~/pic/male.jpg");

imgByte =
new byte[(int)fi.Length];

fs.Read(imgByte, 0, (
int)fi.Length);



ممنون

Alfred188
جمعه 13 مرداد 1391, 11:05 صبح
سلام، تو قسمت else از این استفاده کنید ببینید کارتون راه میوفته
string path = Server.MapPath("pic/male.jpg");
FileStream fs = new FileStream(path, FileMode.Open);

FileInfo fi = new FileInfo(path);

imgByte =new byte[(int)fi.Length];

fs.Read(imgByte, 0, (int)fi.Length);

helia64
جمعه 13 مرداد 1391, 13:12 عصر
خیلی ممنون . فقط الان ذخیره می کنه ولی در کنترل image نشونش نمیده!!!
عکس هایم که با فایل اپلود وارد بانک کردم نشون میده ولی اینو نه !!!
در ضمن از handler برای تبدیل باینری عکس ها به خود عکس استفاده می کنم.

میشه لطفا راهنماییم کنید؟

ممنون

fakhravari
جمعه 13 مرداد 1391, 13:57 عصر
http://barnamenevis.org/showthread.php?353978-%D9%85%D8%B4%DA%A9%D9%84-%D8%AF%D8%B1-%D9%88%D8%A7%DA%A9%D8%B4%DB%8C-%D8%B9%DA%A9%D8%B3-%D8%A8%D8%A7%DB%8C%D9%86%D8%B1%DB%8C-%D8%A7%D8%B2-%D8%A8%D8%A7%D9%86%DA%A9-%D8%A8%D9%87-%DA%A9%D9%86%D8%AA%D8%B1%D9%84-image