PDA

View Full Version : سوال: نحوه نمایش آخرین اخبار



vahid7811
شنبه 17 فروردین 1392, 11:47 صبح
سلام

من یه بخش به عنوان آخرین اخبار می خوام برای سایتم درست کنم ولی نمیدونم به چه نحوه !!!

اگه اماکن دار راهنمایی کنید که از چه کنترلی برای نمایش آخرین اخبار و از چه کدی (کوئری) براری دریافت اطلاعات از دیتابس و نمایش اون در کنترل مربوطه استفاده کنم ممنون(مثلا برای 8 خبر آخر وارد شده به دیتابیس )... اگر هم فایل vs رو بزارید که در ویژوال بازش کنم ممنون میشم
با تشکر از شما عزیزان....

Mani_rf
شنبه 17 فروردین 1392, 11:51 صبح
باید آخرین اخبار رو به ترتیب معکوس وارد شدن از دیتابیس فراخانی کنی و در محلی که میخواهی قرار بدی دیگه . مشکل دقیقا کجاست؟ برای اینکه مثلا 8تای آخر رو هم از دیتابیس بخونی به دستور Select کلمه Top 8 رو اضافه کن تا فقط 8 تای آخر رو بگیره !

Select Top 8 NewsTextFild,CreateDateTime From NewsTable order by CreateDateTime Desc

vahid7811
شنبه 17 فروردین 1392, 12:36 عصر
باید آخرین اخبار رو به ترتیب معکوس وارد شدن از دیتابیس فراخانی کنی و در محلی که میخواهی قرار بدی دیگه . مشکل دقیقا کجاست؟ برای اینکه مثلا 8تای آخر رو هم از دیتابیس بخونی به دستور Select کلمه Top 8 رو اضافه کن تا فقط 8 تای آخر رو بگیره !

Select Top 8 NewsTextFild,CreateDateTime From NewsTable order by CreateDateTime Desc


ممنون از پاسخ گوییتون اونم به این سرعت...!!!

ok منظورتون از NewsTextFild,CreateDateTime فیلد های مربوط به تاریخ ثبت خبر و متن خبر هستش درسته؟؟؟

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

fakhravari
شنبه 17 فروردین 1392, 12:45 عصر
http://barnamenevis.org/showthread.php?317497-%D8%A7%D8%B3%D9%84%D8%A7%DB%8C%D8%AF-%D8%B4%D9%88-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%AF%D8%A7%D9%86%D9%84%D9%88%D8%AF&highlight=%D8%A7%D8%B3%D9%84%D8%A7%DB%8C%D8%AF+%D8 %B4%D9%88+%D8%A8%D8%B1%D8%A7%DB%8C+%D8%AF%D8%A7%D9 %86%D9%84%D9%88%D8%AF

vahid7811
شنبه 17 فروردین 1392, 14:04 عصر
http://barnamenevis.org/showthread.php?317497-%D8%A7%D8%B3%D9%84%D8%A7%DB%8C%D8%AF-%D8%B4%D9%88-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%AF%D8%A7%D9%86%D9%84%D9%88%D8%AF&highlight=%D8%A7%D8%B3%D9%84%D8%A7%DB%8C%D8%AF+%D8 %B4%D9%88+%D8%A8%D8%B1%D8%A7%DB%8C+%D8%AF%D8%A7%D9 %86%D9%84%D9%88%D8%AF

دوست عزیز جالب بود ولی من اسلاید شو برای نمایش اخبار نمی خوام بصورت ساده مثل تصویری که خودم قرار دادم لازم دارم

hobab-theme
شنبه 17 فروردین 1392, 16:37 عصر
اصل کار شما همین کوئری که جناب Mani_rf گذاشتن هست.
یکی از ساده ترین روش ها اینه که شما این کوئری رو درون یک SP قرار میدید
بعد توسط کنترل هایی مانند SqlDataSource اون کوئری رو میگیرید و به یک Repeaterیا ... بایند میکنید.
توی Repeater هم میتونید واسط مورد نظرتون رو پیاده کنید.
موفق باشید

vahid7811
شنبه 17 فروردین 1392, 19:31 عصر
اصل کار شما همین کوئری که جناب Mani_rf گذاشتن هست.
یکی از ساده ترین روش ها اینه که شما این کوئری رو درون یک SP قرار میدید
بعد توسط کنترل هایی مانند SqlDataSource اون کوئری رو میگیرید و به یک Repeaterیا ... بایند میکنید.
توی Repeater هم میتونید واسط مورد نظرتون رو پیاده کنید.
موفق باشید
ممنون
امکان داره که کد کاملش رو برام بزاری یا در قالب فایل vs ...

hobab-theme
شنبه 17 فروردین 1392, 20:03 عصر
کوئری رو که به همون صورت توی SP مینویسید.
SELECT TOP(15) NewsID, NewsTitle FROM News ORDER BY NewsID DESC
بر فرض که SP فوق رو با نام SelectLastNews ذخیره کردیم.
یه کنترل SqlDataSource توی صفحه ایجاد و بصورت زیر تنظیمش میکنیم:
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
SelectCommand="SelectLastNews" SelectCommandType="StoredProcedure">
</asp:SqlDataSource>خوب حالا از یه کنترل برای نمایش اخبار استفادهمیکنیم. مثلا کنترل Repeater
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="SqlDataSource1">
<ItemTemplate>
<div class="LastNews">
<ul>
<li><asp:HyperLink ID="lnkNews" runat="server" Text='<%# Container.DataItem("NewsTitle") %>'
NavigateUrl='<%# String.Format("~/ShowNews.aspx?id={0}", Container.DataItem("NewsID")) %>' /></li>
</ul>
</div>
</ItemTemplate>
</asp:Repeater>کار تمومه.:چشمک:

vahid7811
شنبه 17 فروردین 1392, 20:35 عصر
کوئری رو که به همون صورت توی SP مینویسید.
SELECT TOP(15) NewsID, NewsTitle FROM News ORDER BY NewsID DESC
بر فرض که SP فوق رو با نام SelectLastNews ذخیره کردیم.
یه کنترل SqlDataSource توی صفحه ایجاد و بصورت زیر تنظیمش میکنیم:
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
SelectCommand="SelectLastNews" SelectCommandType="StoredProcedure">
</asp:SqlDataSource>خوب حالا از یه کنترل برای نمایش اخبار استفادهمیکنیم. مثلا کنترل Repeater
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="SqlDataSource1">
<ItemTemplate>
<div class="LastNews">
<ul>
<li><asp:HyperLink ID="lnkNews" runat="server" Text='<%# Container.DataItem("NewsTitle") %>'
NavigateUrl='<%# String.Format("~/ShowNews.aspx?id={0}", Container.DataItem("NewsID")) %>' /></li>
</ul>
</div>
</ItemTemplate>
</asp:Repeater>کار تمومه.:چشمک:

آقا دستت درد نکنه خیلی حال دادی ممنون...:قلب:
اگه سوال دیگهای هم داشتم میتونم مزاحمت بشم...
در ضمن بجز repeater از چه کنترل های دیگه ای میتونم استفاده کنم؟؟؟و منظورتون از sp همون استور پروسجر هستش؟

hobab-theme
شنبه 17 فروردین 1392, 20:45 عصر
خواهش میکنم.

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

در ضمن بجز repeater از چه کنترل های دیگه ای میتونم استفاده کنم؟؟؟
از کنترل های داده دیگه هم میتونید استفاده کنید. مثلا GridView ولی کنترل Repeater بخاطر واسط سبکی که تولید میکنه (در واقع تنها کدی که شما میخواید رو تولید میکنه) در همچین مواقعی گزینه مناسبتری هست. چون کنترلی مثل گریدویو برای یه همچین کاری بخاطر تولید جدول و کدهای اضافه مناسب نمی باشد.

پ.ن: البته بستگی داره که شما چه کاری رو بخواید انجام بدید.