PDA

View Full Version : سوال: راهکاری برای کاهش صفحات



f_g1348
چهارشنبه 22 مرداد 1393, 14:29 عصر
سلام
دوستان سایتی که من طراحی کردم مشتمل بر تعداد زیادی صفحه می باشد . خواستم بدونم چه راهکاری هست که بشه تعداد صفحات سایتم رو کاهش بدم.
(اکثر صفحات شبیه به هم هستند و مثلا 2 تا 3 آیتم متفاوت دارند)
من خودم به نظرم دوتا راهکار اومد :
1 - استفاده از tab
2 - یک صفحه به عنوان صفحه اصلی درست کنم و سپس هر کدام از صفحاتی را که درست کردم درون یک تگ div بزارم و با توجه به منویی که کاربر انتخاب می کنه تمامی div ها بجز یکی را مخفی کنم
دوستان اگه من رو راهنمایی کنن ، ممنون میشم

aminmousavi
چهارشنبه 22 مرداد 1393, 14:40 عصر
سلام دوست عزیز ، روش هایی که خودتون مطرح کردین ، روش هایی هست که سرعت بارگزاری سایت رو به شدت کم میکنه (اگر واقعا تعداد صفحات و مطالب زیاد باشه) چون تمام Data رو شما در لحظه اول لود میکنید

برای کاهش صفحاتی که ساختار مشابهی دارن معمولا اون ها رو به یک صفحه کاهش میدن و با کوئری استرینگ یا URLRouting پارامتر میدن به صفحه که کدام اطلاعات رو بر روی صفحه نمایش بده . مثل : http://www.test.com/Page.aspx?id=5

f_g1348
چهارشنبه 22 مرداد 1393, 14:55 عصر
دوست عزیز من اصلاً نمی دونم اینکه می گی ، چی هست !
میشه بیشتر توضیح بدی؟

aminmousavi
چهارشنبه 22 مرداد 1393, 15:09 عصر
به این شکل متونین عمل کنین :

- یک صفحه Page.aspx بسازید
- در قسمت HTML صفحه Page ، تگ <div id="box" runat="server"><div> رو قرار بده
- اطلاعات هر صفحه تون روی توی یک جدول در دیتابیس ذخیره کنین (id,NamePage,Body)
- با کوئری استرینگ یا URLRouting استفاده کنید تا اطالاعات رو از دیتابیس بخونین و در صفحه نمایش بدین
- اگر از کوئری استرینگ استفاده کردید مثلا در PageLoad صفحه Page یک کوئری مینوسید که "SELECT * FROM Page WHERE id="+QueryString["id"] و اطالاعات رو درون box.innerHTML میریزید .

f_g1348
چهارشنبه 22 مرداد 1393, 15:17 عصر
دوست عزیز همچنان منظورتون رو خوب متوجه نمی شم
وقتی میگید اطلاعات صفحتون رو در جدول ذخیره کنم یعنی چی ؟ ( یعنی همین صفحات زیادی که الان دارم رو نگه دارم و اطلاعاتشون رو در جدول بریزم ؟)
منظورتون از کوئری استرینگ و یا UrlRouting چیه ؟

aminmousavi
چهارشنبه 22 مرداد 1393, 15:27 عصر
بله دوست عزیز اطالاعات رو درون جدول ذخیره کن ! (در صفحاتی که ساختار مشابهی دارن ، قسمت های اول و آخر صفحه که مشابه هستن رو بگذار در صفحه Page.aspx و قسمت هایی که فرق دارن رو در دیتابیس ذخیره کن )
آدرس http://www.test.com/Page.aspx?id=5 رو فرض کنید

به اطلاعاتی که بعد از علامت سوال می آید ، کوئری استرینگ گفته میشود ، از کوئری استرینگ و URLRouting برای انتقال اطالاعات یا نگه داشتن اطلاعات در صفحه جاری یا صفحه های دیگر استفاده میشود

برای گرفتن اطالاعات از کوئری استرینگ هم از کد


Request.QueryString["id"].ToString()


میتونین استفاده کنین

f_g1348
یک شنبه 26 مرداد 1393, 08:07 صبح
یه سوال؟
اینجوری امنیت سایت به خطر نمیوفته!؟

aminmousavi
یک شنبه 26 مرداد 1393, 14:28 عصر
چرا این روش ساده ترین راه حل و امنیت کمتری داره ، اگر دنبال امنیت هستین هم میتونین از URL ROUTE استفاده کنین ، هم ای دی ها رو کد کنین ، و سمت سرور دیکد کنین .
این مسائل به خلاقیت برنامه نویس بستگی داره که ای دی مشخص نباشه