PDA

View Full Version : Random image



amir_monster
یک شنبه 23 دی 1386, 20:11 عصر
سلام
من یک سایت طراحی کردم که به صورت تصادفی یا Random عکس هایی را نمایش می دهد ، حالا می خواهم به کاربران امکانی را بدهم که با قرار دادن یک لینک در سایت یا وبلاگ خودشون بتوانند عکس های تصادفی را نمایش دهند بدون اینکه وارد سایت من بشوند

میشه لطفا اساتید محترم راهنمایی کنند که از چه روشی استفاده کنم ؟

mp2009
یک شنبه 23 دی 1386, 20:25 عصر
در مورد webservis ها جستجو کن

mahdi_farhani
یک شنبه 23 دی 1386, 20:25 عصر
به نظر من وب سرویس براش بنویسی خیلی بهتره .
-----
میتونی یه تابع جاوا اسکریت بنویسی که از فایل اینکلود شده که در سایت شما هست استفاده میکنه و عکس ها رو نمایش میده .

amir_monster
یک شنبه 23 دی 1386, 20:33 عصر
در مورد webservis جستجو کردم اما مطلبی در این مورد پیدا نکردم
در ضمن من گالری عکس را با دیتابیس نوشتم و از javascript استفاده نمیکنم

mp2009
یک شنبه 23 دی 1386, 20:52 عصر
ببینید
شما میتونید یک عکس را به عنوان عکس روز انتخاب کرده و به ان یک اسم ثابت بدهید.
و هر روز ان را با یک عکس Random تعویض نمایید. به بقیه کاربران هم میتوانید آدرس این عکس را بدهید. موفق باشید

Chabok
دوشنبه 24 دی 1386, 15:50 عصر
میتونید یک صفحه طراحی کنید که Content-Type آن از نوع عکس باشد
برای مثال : image/jpeg
سپس توسط توابع GDI عکس خود را بر روی Response.OutputStream بنویسید .

Img.Save(Response.OutputStream, ImageFormat.Jpeg)از این لینک (http://how2learnasp.net/article.aspx?code=37d01551-0901-418b-8f81-9a2043413a53)میتوانید ایده بگیرید .
اگر موفق نشدید بگین تا همین جا توضیح بیشتر بدم .
موفق باشید .

amir_monster
سه شنبه 25 دی 1386, 13:23 عصر
خیلی ممنون از دوستانی که جواب دادن ، جناب chabok لینکی که آدرس دادید فقط در مورد تغییر سایز عکس ها توضیح داده بود ، میشه لطف کنید در مورد مطلب بالا بیشتر توضیح بدین یا یک نمونه کد بزارین ؟

با تشکر فراوان :لبخندساده:

Chabok
سه شنبه 25 دی 1386, 13:56 عصر
با سلام
عرض کردم از این لینک میتونید ایده بگیرید :چشمک:
ولی در اصل همین لینک از طرفی کل مشکل شما را حل خواهد کرد .

در این مقاله کل صفحه از نوع عکس می باشد .

Response.ContentType = "image/jpg"در ضمن شما که نمیخواهید تصاویر بزرگ را در لینک ها نمایش بدهید .
بنابراین این مقاله شما را در ساختن Thumbnail راهنمایی می کند .

این مقاله یک Thumbnail از تصویری که مسیرش مشخص است گرفته و به کلاینت با فرمت عکس می فرستد .

تنها تفاوتی که کار شما با این مقاله دارد این است :

شما عکس خود را بصورت Random مشخص می کنید .
شاید شما نیازی به کوچک سازی تصویر نداشته باشید .

همین .

طرز کار هم بدین صورت است که وقتی صفحه طراحی شد شما در تگ های Img خود به این صورت آدرس می دهید :

<img src="http://www.WebSite.com/Ax.aspx" />

شما باید در این صفحه تصویر خود را بصورت رندوم انتخاب کنید و بروی کلاینت بفرستید .

راستش اگر میخواستم کد بنویسم کمتر مینوشتم . ولی هدف یادگیری و تلاش شماست .

یکبار دیگر عرض میکنم تمام نکات در همین مقاله موجود می باشد . با دقت مقاله رو خط به خط بخونید . و سوالی بود در خدمت هستیم .

amir_monster
یک شنبه 30 دی 1386, 13:17 عصر
روش بالا تنها عکس را نمایش میدهد و با کلیک به روی آن نمیتوان به عکس سایز بزرگ دست یافت .
البته با یک روش ساده میتوان عکس ها را در وبلاگ دیگران نمایش داد و آن هم استفاده از ifram میباشد که فکر میکنم باعث کند شدن لود در وبلاگ کاربر شود .

آیا دوستان می توانند روش بهتری را پیشنهاد کنند ؟

روشی که کاربران بتوانند با قرار دادن یک قطعه کد یا یک لینک در وبلاگ خود عکس های گالری را از سایت دیگر نمایش دهند که این عکس ها در سایت اصلی بصورت random یا تصادفی نمایش داده می شود .

amir_monster
یک شنبه 30 دی 1386, 18:04 عصر
آقای راد میشه در این مورد نظر بدید ؟

mahdi_farhani
یک شنبه 30 دی 1386, 18:21 عصر
خروجی rss بده ، اونها rss بخونن فکر کنم بهتر باشه

miladr
یک شنبه 30 دی 1386, 19:05 عصر
روش بالا تنها عکس را نمایش میدهد و با کلیک به روی آن نمیتوان به عکس سایز بزرگ دست یافت .
البته با یک روش ساده میتوان عکس ها را در وبلاگ دیگران نمایش داد و آن هم استفاده از ifram میباشد که فکر میکنم باعث کند شدن لود در وبلاگ کاربر شود .

آیا دوستان می توانند روش بهتری را پیشنهاد کنند ؟

روشی که کاربران بتوانند با قرار دادن یک قطعه کد یا یک لینک در وبلاگ خود عکس های گالری را از سایت دیگر نمایش دهند که این عکس ها در سایت اصلی بصورت random یا تصادفی نمایش داده می شود .



using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.IO ;

public partial class showpic : System.Web.UI.Page
{
protected void Page_Load(object sender, System.EventArgs e)
{
try
{
string mode = Request.QueryString["mode"];

Int32 modeH, modeW;
modeH = 54;
modeW = 66;
if (mode == "1")
{
modeH = 50;
modeW = 60;
}
if (mode == "2")
{
modeH = 100;
modeW = 120;
}

if (mode == "3")
{
modeH = 200;
modeW = 240;
}



string file = Request.QueryString["file"];
// create an image object, using the filename we just retrieved
System.Drawing.Image image = System.Drawing.Image.FromFile(Server.MapPath(file) );
// create the actual thumbnail image
System.Drawing.Image thumbnailImage = image.GetThumbnailImage(modeH, modeW, new System.Drawing.Image.GetThumbnailImageAbort(Thumbn ailCallback), IntPtr.Zero);

// make a memory stream to work with the image bytes
MemoryStream imageStream = new MemoryStream();
// put the image into the memory stream
thumbnailImage.Save(imageStream, System.Drawing.Imaging.ImageFormat.Jpeg);
// make byte array the same size as the image
byte[] imageContent = new Byte[imageStream.Length];
// rewind the memory stream
imageStream.Position = 0;
// load the byte array with the image
imageStream.Read(imageContent, 0, (int)imageStream.Length);
// return byte array to caller with image type
Response.ContentType = "image/jpeg";
Response.BinaryWrite(imageContent);
image.Dispose();


}
catch (Exception)
{


}
}

public bool ThumbnailCallback()
{
return true;
}
}


از این استفاده کن تو querystring دو تا متغیر میگیره file ادرس فایل رو میگیره و متغیر mode اندازه فیال که باید نمایش داده بشه.توجه کن که عکست باید با سایز یزرگترین mode تو کد upload بشه
. تو محل نمایش مثلا mode رو یک میدی که یک عکس 50*60 نشون میده و وقتی روش کلیک کرد mode برابر 3 میدی که عکس رو با سایز واقعی نشون میده یکم روش کار کنی میتونی این mode رو بر اساس سایز عکس هم تعیین کنی

Chabok
یک شنبه 30 دی 1386, 20:07 عصر
با سلام
این دوست ما میخواهند یک تکه کد HTML در سایت و وبلاگ ها نمایش بدهند .نه فقط یک عکس .
(چیزی شبیه نظرسنجی ها وبگذر)

برای این کار فکر کنم راهی بجز IFrame نباشه . شاید هم باشه
( از وبگذر کمک میگیریم )
شما باید چنین کدی به ملت بدهید .



<script language="javascript" src="http://www.webgozar.ir/c.aspx?Code=270046&t=poll"></script>
با هم به لینک بالا می رویم .
یعنی اینجا (http://www.webgozar.ir/c.aspx?Code=270046&t=poll) .
شاهد چنین تصویری هستیم :
http://i27.tinypic.com/2q06q6o.jpg

پس ViewSource رو میزنیم و مشاهده میکنیم که توسط document.write یک کد Html که حاوی Iframe نیز می باشد روی صفحه نوشته می شود .


document.write(
'<p><iframe allowtransparency="true" name=I2
src=http://www.webgozar.com/poll/vote.aspx?Code=270046
marginwidth=1 marginheight=0 height=121 width=140
border=0 frameborder=0 scrolling=no></iframe></p>');سپس باز هم به لینک مشخص شده (http://www.webgozar.com/poll/vote.aspx?Code=270046) می رویم :
http://i30.tinypic.com/2ynmc2b.jpg

می بینیم که لینک اصلی ما همین صفحه است .:متفکر:

شما هم باید چنین صفحه ای مانند آخرین صفحه بسازید و با ترفندهای بالا به وبلاگ ها بروید
:چشمک:

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

موفق باشید . خدانگهدار

miladr
یک شنبه 30 دی 1386, 23:42 عصر
سلام
من یک سایت طراحی کردم که به صورت تصادفی یا Random عکس هایی را نمایش می دهد ، حالا می خواهم به کاربران امکانی را بدهم که با قرار دادن یک لینک در سایت یا وبلاگ خودشون بتوانند عکس های تصادفی را نمایش دهند بدون اینکه وارد سایت من بشوند

میشه لطفا اساتید محترم راهنمایی کنند که از چه روشی استفاده کنم ؟

Chabok عزیز اینجا من اثری از متن نمی بینم ایشون فقط عکس خواستن احتمالا واسه تبلیغات می خوان.
اگر از handler استفاده کنن به جای صفحه که من گفتم از لحاظ سرعن هم بهتر میشه چون دیگه life cycle صفحه انجام نمی شه.

amir_monster
دوشنبه 01 بهمن 1386, 01:39 صبح
از جواب هایی که دادین ممنون ، سایت زیر شبیه اون کاریه که من میخوام انجام بدم
http://www.parstools.com/random_pic_fa/
که البته با Javascript نوشته شده .
حالا نمیدونم جناب Miladr آیا با روشی که گفتین میشه این کار رو انجام داد یا نه ؟؟ من برای نمایش تصادفی عکس ها در سایت خودم مشکلی ندارم فقط میخوام قطعه کد یک خطی یا یک لینک به کاربر بدهم که بتونه عکس تصادفیه ایجاد شده در سایت من رو در وبلاگ خودش نمایش بده که با کلیک به روی آن سایز بزرگ نمایش داده بشه

امیدوارم با آدرس دهی سایت بالا منظور بنده رو بهتر متوجه شده باشین

miladr
دوشنبه 01 بهمن 1386, 01:49 صبح
از جواب هایی که دادین ممنون ، سایت زیر شبیه اون کاریه که من میخوام انجام بدم
http://www.parstools.com/random_pic_fa/
که البته با Javascript نوشته شده .
حالا نمیدونم جناب Miladr آیا با روشی که گفتین میشه این کار رو انجام داد یا نه ؟؟

من دارم ازش تو یه سایت خبری استفاده می کنم صفحه اول که خلاصه خبر از mode=1 وقتی مشروح خبر رو می خونه از mode=2 و وقتی رو عکس خبر میزنه از mode=3 استفاده می کنم بی مشکل.
اگرم به کد ها نگاه کنی میبینی خط به خط توضیح داره این نشون میده که کاره یک برنامه نویس ایرانی نیست:لبخند:

amir_monster
دوشنبه 01 بهمن 1386, 02:03 صبح
جناب miladr با استفاده از روشی که گفتین حالا باید چه کدی رو به کاربر بدهم که در وبلاگ خودش بزاره تا بتونه عکس تصادفی را نمایش بده ؟؟؟؟؟؟

miladr
دوشنبه 01 بهمن 1386, 02:37 صبح
برای عکس رندوم شما باید یکم این رو تغییر بدی به این شکل که دیگه آدرس عکس رو از کوئری file نگیره و تو همین تابع بصورت random تولید بشه(یعنی مثلا اگه ادرس هات تو بانک هست ادرس عکس رکورد رندوم اوم رو بخونه و تو متغیر file بریزه).
به اونا میگی که تو قالبشون یه عکس بذارن و آدرس عکس رو بدن
http://www.yourdomain.com/imagshow.aspx?mode=1
و لینک رو هم بدن
http://www.yourdomain.com/imagshow.aspx?mode=2

که imagshow اسم صفحه یی است که این کد ها رو توش گذاشتی.

Chabok
دوشنبه 01 بهمن 1386, 07:49 صبح
سلام

Chabok عزیز اینجا من اثری از متن نمی بینم ایشون فقط عکس خواستن احتمالا واسه تبلیغات می خوان.
فقط میخوام قطعه کد یک خطی یا یک لینک به کاربر بدهم که بتونه عکس تصادفیه ایجاد شده در سایت من رو در وبلاگ خودش نمایش بده که با کلیک به روی آن سایز بزرگ نمایش داده بشه

همین کلیک کردن باعث میشه که یک کد Html احتیاج داشته باشیم .
وگرنه من هم در ابتدای تاپیک در مورد Thumbnail ساختن و لینک دادن عرض کردم .

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

Chabok
دوشنبه 01 بهمن 1386, 08:23 صبح
با سلام
آقای amir_monster .
پاسخ سوالات شما داده شده است :اشتباه:.

سایتی هم که لینک دادین همون کاری رو انجام داده که من در چند پست بالاتر عرض کردم .
فقط از iFrame استفاده نکرده .


حالا باید چه کدی رو به کاربر بدهم که در وبلاگ خودش بزاره تا بتونه عکس تصادفی را نمایش بده
این کد را برای ملت قرار میده تا بزارن تو سایت و وبلاگ هاشون .

<!-- Begin pArSTools.com ‍--><script language="javascript" src="http://www.persiangraphic.com/gallery/random_world.php?width=180"></script><!-- End ParsTools.com -->
در صفحه ای هم که لینک دادن مستقیما یک تگ a رو با Document.Write می نویسند .
در href لینک توسط window.open تصویر خود را در پنجره ای جدید نمایش می دهند .
در src تگ Img هم که لینک این تصویر کوچک مشاهده می شود .


document.write("
<a href=javascript:void(window.open('http://www.persiangraphic.com/gallery/cpmfetch/cfshow.php?pic=http://www.persiangraphic.com//gallery/albums/world_places/Flying_High%2C_Goose_Lake%2C_California.jpg'
,'cpmFetch','width=825,height=625,toolbars=0,scrol lbars=1,
resizable=1')); >
<img border=0 src=http://www.persiangraphic.com/gallery//albums/world_places/persiangraphic_thumb_Flying_High%2C_Goose_Lake%2C_ California.jpg width=180 />
</a>");
تصاویری هم که در لینک هستن بصورت رندوم تولید شده اند .
شما باید از هر دو مطلب ساخت تصاویر کوچک و همین نکته استفاده کنید .

موفق باشید . خدانگهدار

miladr
دوشنبه 01 بهمن 1386, 08:57 صبح
سلام

همین کلیک کردن باعث میشه که یک کد Html احتیاج داشته باشیم .


عزیز یکم فکر کن حالا طرف

document.write(
'<p><iframe allowtransparency="true" name=I2
src=http://www.webgozar.com/poll/vote.aspx?Code=270046
marginwidth=1 marginheight=0 height=121 width=140
border=0 frameborder=0 scrolling=no></iframe></p>');

این رو به وبلاگش اضافه کرد فکر نمی کنی این صفحه
http://www.webgozar.com/poll/vote.aspx?Code=270046
که واسه دوستمون قرار عکس رندوم نشون بده باید از کدی شبیه اونی که گذاشتم استفاده بشه.یا راه حل دیگه یی پیشنهاد می کنی

amir_monster
دوشنبه 01 بهمن 1386, 13:01 عصر
با تشکر فراوان از دو دوست عزیز chabok و Miladr

Chabok
دوشنبه 01 بهمن 1386, 23:38 عصر
فکر نمی کنی این صفحه
http://www.webgozar.com/poll/vote.aspx?Code=270046
که واسه دوستمون قرار عکس رندوم نشون بده باید از کدی شبیه اونی که گذاشتم استفاده بشه.یا راه حل دیگه یی پیشنهاد می کنی

شما هم اگر با دقت بیشتری پست ها رو بخونید متوجه میشوید که خدمت دوست عزیزمون عرض کردم باید از Thumbnail ساختن نیز استفاده کنند :چشمک:


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


شما باید از هر دو مطلب ساخت تصاویر کوچک و همین نکته استفاده کنید .


موفق باشید .:تشویق:

my_blithe
چهارشنبه 24 مهر 1387, 20:41 عصر
با سلام
آقای amir_monster .
پاسخ سوالات شما داده شده است :اشتباه:.

سایتی هم که لینک دادین همون کاری رو انجام داده که من در چند پست بالاتر عرض کردم .
فقط از iFrame استفاده نکرده .

این کد را برای ملت قرار میده تا بزارن تو سایت و وبلاگ هاشون .

<!-- Begin pArSTools.com ‍--><script language="javascript" src="http://www.persiangraphic.com/gallery/random_world.php?width=180"></script><!-- End ParsTools.com -->
در صفحه ای هم که لینک دادن مستقیما یک تگ a رو با Document.Write می نویسند .
در href لینک توسط window.open تصویر خود را در پنجره ای جدید نمایش می دهند .
در src تگ Img هم که لینک این تصویر کوچک مشاهده می شود .


document.write("
<a href=javascript:void(window.open('http://www.persiangraphic.com/gallery/cpmfetch/cfshow.php?pic=http://www.persiangraphic.com//gallery/albums/world_places/Flying_High%2C_Goose_Lake%2C_California.jpg'
,'cpmFetch','width=825,height=625,toolbars=0,scrol lbars=1,
resizable=1')); >
<img border=0 src=http://www.persiangraphic.com/gallery//albums/world_places/persiangraphic_thumb_Flying_High%2C_Goose_Lake%2C_ California.jpg width=180 />
</a>");
تصاویری هم که در لینک هستن بصورت رندوم تولید شده اند .
شما باید از هر دو مطلب ساخت تصاویر کوچک و همین نکته استفاده کنید .

موفق باشید . خدانگهدار

من از روش شما استفاده کردم ولی توی صفحم باز نمیشه. تو این آدرس :www.irancpanel.net/htmlpage.htm

لطف کنید و راهنمایی