PDA

View Full Version : نمایش اخبار



hdmdanesh
یک شنبه 18 بهمن 1388, 15:55 عصر
سلام دوستان

من میخوام اخبار سایتم رو جوری نشون بدم که هر بار یکی از خبرها بشه خبر اصلی و نشون داده بشه.منظورم اینه : من از datalist استفاده کردم و فقط 1 خبر رو نشون میدم.حالا میخوام این خبر هر چند وقت 1 بار عوض بشه.نمیدونم چجوری درستش کنم.کسی تجربه ای تو این زمینه داره؟

ممنون

FirstLine
یک شنبه 18 بهمن 1388, 18:55 عصر
با سلام


SELECT TOP 1 * FROM table ORDER BY NEWID()

با تشکر

ironman
یک شنبه 18 بهمن 1388, 19:31 عصر
سلام دوستان

من میخوام اخبار سایتم رو جوری نشون بدم که هر بار یکی از خبرها بشه خبر اصلی و نشون داده بشه.منظورم اینه : من از datalist استفاده کردم و فقط 1 خبر رو نشون میدم.حالا میخوام این خبر هر چند وقت 1 بار عوض بشه.نمیدونم چجوری درستش کنم.کسی تجربه ای تو این زمینه داره؟

ممنون


عملی کار نکردم ولی فکر کنم میشه با استفاده از ajax این کار رو انجام داد ... با استفاده از update panel & script manager & update progress & timer .. که در این ابزار تایمر رو تنظیم میکنید که مثلا هر 1 دقیقه یکبار اجرا بشه و در نتیجه اطلاعات داخل update panel بروزرسانی میشن... (datalist رو داخل updatepanel قرار بدید)
حالا برای خوندن اطلاعات داخل ریپیتر میتونی از روشهای مختلفی استفاده کنی یکیش همین راه دوستمون FirstLine هست :

SELECT TOP 1 * FROM table ORDER BY NEWID()

hdmdanesh
دوشنبه 19 بهمن 1388, 15:13 عصر
این کدی که دوستمون نوشتن فقط آخرین خبر رو نشون میده.فکر کنم منظورم رو نتونستم خوب بیان کنم : ببینید من میخوام مثلاً از 5 تا خبر آخری که دارم هر چند دقیقه یکیش رو نشون بده.این درست که از update panel باید استفاده کنم ولی سوالم اینجاست : من برای هر خبر باید 1 فیلد بگیرم مثل status که هر بار 1 بود خبر رو نشون بده.حالا با این update panel چه کدی بنویسم که از این 5 خبری که دارم هر بار یکی 1 و بقیه 0 باشن؟!:متفکر:

ironman
دوشنبه 19 بهمن 1388, 16:28 عصر
فکر کنم منظورتون اینه که میخواید به صورت رندم از بین اخبارتون یکی انتخاب بشه؟؟؟؟:متفکر:
خوب برای این کار از دستور newid() که در 2005 هست استفاده کنید:
SELECT * FROM tbl_test ORDER BY NEWID()

FirstLine
دوشنبه 19 بهمن 1388, 17:28 عصر
با سلام
امیدوارم این کد بدردت بخوره. البته شاید دوستان راه بهتری پیشنهاد کنند.


in sql 2000 db Northwind
SELECT TOP 1 * FROM Categories where CategoryID in (SELECT TOP 5 CategoryID FROM Categories order by 1 desc) ORDER BY NEWID()

با تشکر