PDA

View Full Version : سوال: نمایش عکس در گراید ویو



a_123123123123
چهارشنبه 08 تیر 1390, 20:18 عصر
سلام دوستان
امیدوارم یکی چیدا بشه حئاقل جواب این سوالمو بده
من چه طوری میتونم یه عکس رو کع ادرسش تو بانک دخیره شده رو تو یه گراید ویو نشون بدم؟

a_123123123123
چهارشنبه 08 تیر 1390, 20:31 عصر
ممکنه هر چه زودتر جوابمو بدید؟

smhz777
چهارشنبه 08 تیر 1390, 20:48 عصر
سلام
اول باید یک ایمیج باکس تو گریدویو بزاری
بعد ImageUrl رو با مقدار دیتابیس پرکن

a_123123123123
چهارشنبه 08 تیر 1390, 20:53 عصر
image گذاشتم
ولی این url رو نمیدونم چیکار کنم

afshinmu
چهارشنبه 08 تیر 1390, 21:05 عصر
باید بری تو کدهای HTML و بنویسی :



imageurl='<%# Eval("fieldname") %>'

a_123123123123
پنج شنبه 09 تیر 1390, 09:55 صبح
دوست عزیز ممنون از جوابتون

a_123123123123
یک شنبه 12 تیر 1390, 08:43 صبح
من این کارو انجام دادم
ولی نشون نمیده
چیکار کنم
؟

dontspeak
یک شنبه 12 تیر 1390, 09:44 صبح
دوست عزیز به گریدت یه ستون از توه template اضافه کن داخلش یه کنترل ایمیج asp بزار از اسمارت تگش دیتا بایند رو انتخاب کن توی پنجره جدید از سمت چپ imageurl رو انتخاب کن از لیست کشویی سمت راستم ستونی توی دیتابیس که برای url کنترل ایمیجت درست کردی بده. اوکی کن .... تموم شد
برای ستون url توی دیتا بیستم اطلاعات رو باید مثلا

~/Image/1.jpg
ذخیره کنی یا می تونی اون قسمت اولش رو (~/Image) توی همون بالا که داشتی ستون url عکستو تعریف می کردی بزاری. البته این کار اولی بهتره. چون اگه بخوای عکساتو پوشه بندی بکنی مشکلی نداری.
موفق باشی

a_123123123123
یک شنبه 12 تیر 1390, 09:50 صبح
ببین دوست عزیز من این کارو کردم
<asp:TemplateField HeaderText ="عکس">
<ItemTemplate ><asp:Image ID="img" runat="server" Width="76px" Height="56px" ImageUrl='<%#Eval("pic") %>' /></ItemTemplate>
</asp:TemplateField>
کجاش ایراد داره
من منظورت رو متوجه نمیشم

a_123123123123
یک شنبه 12 تیر 1390, 10:21 صبح
دوستان کسی نمیدونه من باید چیکار کنم؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ ؟؟؟؟؟؟؟؟؟؟؟

Himalaya
یک شنبه 12 تیر 1390, 10:32 صبح
سلام. خوب شما برنامه ات رو اجرا کن بعد یه ViewSource بگیر از صفحه، ببین تو خصوصیت src تگ img همون آدرسی که بايد باشه، درج شده یا نه.
واسه اینکه ببینی چه آدرسی باید اونجا قرار بگیره هم یه کنترل Img از قسمت html، بیرون از گرید قرار بده و یه عکس براش انتخاب کن ببین چه مسیری داره، بعد همونو تو کنترل img گرید set کن (البته توسط بایند کردن)

dontspeak
یک شنبه 12 تیر 1390, 10:45 صبح
این جایش ایراد نداره فقط احتمالا توی ستون pic دیتا بیست آدرسو درست نزاشتی. به عنوان نمونه اگه یه عکس به اسم yourpic.jpg توی پوشه image داشته باشی باید آدرسو توی دیتا بیس اینجوری ذخیره کنی

~/image/yourpic.jpg

a_123123123123
یک شنبه 12 تیر 1390, 10:46 صبح
ببینید من ادرس عکسمام تو بانک ذخیره شده و میخوام اطلاعات هر کاربر به همراه عکسش تو گراید ویو نشون داده بشه
این ادرس یکی از عکسامه(~/pic/King 2010(2).jpg)
پوشه ای که این عکسا هم توش قرار دارن user/pic هستش
و گراید منم تو یه صفه در پوشهای دیگر به اسم employee قرار داره
من نمیخوام یه عکس رو نشون بدم
میخوام اطلاعات 50 کاربر به همرا عکسشون رو نشون بدم
خواهش میکنم یه راه حلی جلو پام بذارین
همه وقته منو این گرفته
من خیلی وقتم کمه
ممنون از لطفتون

Himalaya
یک شنبه 12 تیر 1390, 11:01 صبح
من نمیخوام یه عکس رو نشون بدم

من که نگفتم یه عکسو نشون بده. پست قبلیمو خوب نخوندی. آدرس عکسها تو db رو با / شروع کن ببین درست میشه یا نه. (~ رو از اولش حذف کن)
ببین بینهایت حالت آدرس دهی که نداریم. کلا 3، 4 تا حالت بیشتر نیست. یا با /~ یا / یا /.. (برگشت به یه شاخه بالاتر، واسه 2 تا میشه /../..) یا بدون هیچ کدوم از اینا (MyFolder/aaa.jpg).
تست کردنش 1 دقیقه هم بیشتر طول نمیکشه. 4 تا از رکوردها رو توسط این 4 حالت تست کن. هر کدومو که نمایش داد یعنی مسیر دهی باید به اون صورت باشه. همین

a_123123123123
یک شنبه 12 تیر 1390, 11:08 صبح
از اولش /~ بود
2/3 تا از عکسارو نشون میده ولی بقیه رو نه
همه عکسام پسوندشون jpg و کمتر از 50 کیلوبایته
چی طوری همه رو درست کنم
در ضمن ممنون از پاسخگوییتون

Himalaya
یک شنبه 12 تیر 1390, 11:25 صبح
2/3 تا از عکسارو نشون میده ولی بقیه رو نه

مگه میشه همه چیز درست باشه و 2،3 تا رو نشون بده و بقیه رو نه. احتمالا یا بقیه عکسا تو اون مسیر که مشخص شده نیستن یا آدرس دهی بقیه تو db اشتباهه.
هر چند که فکر نکنم تاثیری داشته باشه ولی اینم تست کنی بد نیست (به جای کنترل asp:image یه کنترل img از بخش html قرار بده و خصوصیت src اونو set کن) تو بعضی از تاپیک ها دیدم که بچه ها گفتن یا یکیش مشکل دارن ولی با اون یکی مشکل حل شده (شخصا تا حالا با هیچ کدوم به مشکل نخوردم)
اگه اینم جوب نداد و اگه تونستی پروژه رو بزار اینجا تا بقیه ببینن مشکلش چیه. اگه نه که دیگه خودت باید حلش کنی. (چون فکر نمیکنم آدرس دهی یه عکس تو گرید، بیشتر از مطالبی که بچه ها تو این تاپیک گفتن، مطلب دیگه ای داشته باشه)

a_123123123123
یک شنبه 12 تیر 1390, 11:42 صبح
مرسی دوستای عزیزم:قلب:
مشکلم حل شد:لبخند:

ممکنه یکم درباره update عکس برام توضیح بدبد
من میدونم که برای بروز کردنش باید از پوشه حذفش کنم و دوباره یکی جاش ذخیره کنم
ولی یکم مشکل دارم
راهنمایی برای این سوال من دارین؟؟؟؟؟؟؟؟؟؟

Himalaya
یک شنبه 12 تیر 1390, 11:59 صبح
مرسی دوستای عزیزم:قلب:
مشکلم حل شد:لبخند:

حداقل بگو چه طوری حل شد که این تاپیک به یه دردی خورده باشه (شاید بعدا یه نفر دیگه این مشکلو پیدا کنه)


ممکنه یکم درباره update عکس برام توضیح بدبد
من میدونم که برای بروز کردنش باید از پوشه حذفش کنم و دوباره یکی جاش ذخیره کنم
ولی یکم مشکل دارم
هیچی. همین که خودت گفتی.اسم فایل رو میگیری و حذفش میکنی. یکی دیگه جاش آپ میکنی، تو db هم اسم جدید رو جایگزین کن (یا اگه نمیخوای db رو Update کنی،اسم فایلی که حذف کردی رو که داری فایل جدید رو با همون اسم قبلی ذخیره میکنی

a_123123123123
یک شنبه 12 تیر 1390, 12:08 عصر
من هنگام ذخیره تو بانک از این دستور استفاده میکردم
Dim str, a, a1, a3 As String
str = System.IO.Path.GetFileName(up.PostedFile.FileName)
a1 = Server.MapPath("pic/")
a3 = "pic/" & str
a = (a1 & "//") + str
Dim dd As String = "~/"
Dim path As String = dd + a3
اینو به این صورت تغییر دادم
Dim str, a, a1, a3 As String
str = System.IO.Path.GetFileName(up.PostedFile.FileName)
a1 = Server.MapPath("pic/")
a3 = "pic/" & str
a = (a1 & "//") + str
Dim dd As String = "~/user/"
Dim path As String = dd + a3
حل شد:لبخند:
میخوام از تو بانک و پوشه ای که این عکس توشه بروز رسانی انجام به
منظورم کد بروز رسانیه

dontspeak
یک شنبه 12 تیر 1390, 14:02 عصر
دوست عزیز سعی کن زیاد از دیتا بیس چیزی رو پاک نکنی. چون بعد یه مدت کند میشه. مثل جریان دیفراگمنت هارد می مونه. به جای پاک کردن یه ستون توی دیتا بیست اظافه کن از نوع bit که فقط 0 و 1 میگیره و 1 یعنی true و 0 یعنی false. و با استفاده از این ستون و دستور where اطلاعاتی که می خوای رو نشون بده. یه نکته دیگه نمی دونم چرا توی این زمان همه از دستورات خود sql استفاده می کنند. یکم با linq کار کنید. خیلی بهتره. برای یاد گیریشم توی همین فروم، انجمن linq اطلاعات مفیدی داره. اگه با دستوراتش به مشکل بر خوردی بگو تا برات نمونه بزارم.
اینم آموزشش (http://www.learningweb.ir/showthread.php?11-%C3%98%C2%A2%C3%99%C2%85%C3%99%C2%88%C3%98%C2%B2%C 3%98%C2%B4-linq-to-sql&p=17#post17)

a_123123123123
یک شنبه 12 تیر 1390, 16:00 عصر
سلام
ممکنه کسی یه نمونه از update عکس رو برام مثال بزنه
خیلی ممنون میشم

dontspeak
یک شنبه 12 تیر 1390, 22:47 عصر
مشکلت با کجاشه؟ استفاده از دستور آپدیت یا کلا نمی دونی چطور آپدیت کنی؟

a_123123123123
یک شنبه 12 تیر 1390, 23:01 عصر
خدا رو شکر بالاخره یکی پیدا شد جوابمو بده
ببین دوست عزیز من دوتا مشکل دارم
مشکل ائلم اینه که اصلا نمیدونم چه طوری میشه عکس که ادرسش تو بانک هستش رو update کرد
مشکل دومم اینه که بقیه فیلدام رو وقتی update میکنم اطلاعات قبلیشون پاک میشه
من برای update تو تکست باکس در نظر گرفتم که کاربر نام کاربری و رمز عبور رو وارد می کنه اگه درست بود یه فرمی زیرش ظاهر میشه که میتونه اطلاعات جدید رو وارد کنه
یه مسئله اینه که اگه کاربر نخواد همه فیلدا مقدار جدید بده اونایی رو که خالی هستن هم تو بانک ذخیره میشن
و مقدار فیلدایی رو که نمیخواد تغییر بده رو رو هم از دست میده

a_123123123123
یک شنبه 12 تیر 1390, 23:11 عصر
لطفا بگو چه کدی نیازه
من تو کدنویسی مشکل دارم
برای مشکل دومم هم میدونم که باید اطلاعات تو تکست باکس نشون داده بشه بعد کاربر هر کدوم رو خواست تغییر بده ولی نمیدونم چه طوری باید این کارو انجام بئم

dontspeak
دوشنبه 13 تیر 1390, 14:06 عصر
سلام دوست عزیز شما اون آموزشی که بالا لینکشو دادم خوندی؟ اگه بخونی راحت می تونی هر دو کارو انجام بدی. شما اون آموزشو بخون چند صفحه هم بیشتر نیست با هرجاش مشکل داشتی بگو تا برات توضیح بدم.