PDA

نسخه کامل مشاهده نسخه کامل : چطور تعريف كنم كه توي صفحه اول تعداد مشخصي پست رو نشون بده؟



samaram
09-09-2008, 17:40
سلام. يه سايت طراحي مي كنم كه مشابه وبلاگه. مشكلم با قرار دادن پست ها توي صفحه ي اول سايته. من مي خوام توي صفحه ي وبلاگ چند تا پست نشون داده بشه. اما نمي دونم با چه دستوراتي اينو تعيين كنم؟ آخه من الان براي "يه" پست استايلشو طراحي كردم. وقتي بخوام مثلا 10 پست نمايش بدم چجوري 10 تاي اين استايل ها رو ايجاد كنم؟ يا چطور بگم مثلا تا 10 تا ركورد(كه هر كدوم مولفه هاي يه پسته) رو در صفحه ي اول نشون بده؟ كلا اگه ميشه ديدمو به اين مشكل باز كنيد. نمي دونم بايد چجوري طراحيش كنم.

Ultimator
09-09-2008, 18:19
سلام

شما میتونید از کنترلهای دیتا لیست یا ریپیتر استفاده کنید

مثلا با دیتالیست --

اول که اونو مثل یه گرید ویو از طریق کد یا دیتا سورس بایند میکنید بعد توی قسمت مارک آپ استایلی که برای یک پست درست کردید رو قرار میدید

فرض کنید اطلاعات رو از دیتابیس میخونید و فیلدهای title , body , date رو میخواید نمایش بدید ..
تو قسمت مارک آپ :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
لازم به ذکر نیست که Eval("title") محتوای فیلد TITLE رو نشون میده


حالا میتونید با دستور sql تون بگید که فقط 10 تا آیتم رو نمایش بده مثلا بگید

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنیدتنظیمات دیتا لیست رو هم میتونید تو قسمت پراپرتیز ببینید و یا با کد تغییرش بدید ..
سوالی بود در خدمتم

samaram
09-09-2008, 21:02
سلام

شما میتونید از کنترلهای دیتا لیست یا ریپیتر استفاده کنید

مثلا با دیتالیست --

اول که اونو مثل یه گرید ویو از طریق کد یا دیتا سورس بایند میکنید بعد توی قسمت مارک آپ استایلی که برای یک پست درست کردید رو قرار میدید

فرض کنید اطلاعات رو از دیتابیس میخونید و فیلدهای title , body , date رو میخواید نمایش بدید ..
تو قسمت مارک آپ :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
لازم به ذکر نیست که Eval("title") محتوای فیلد TITLE رو نشون میده


حالا میتونید با دستور sql تون بگید که فقط 10 تا آیتم رو نمایش بده مثلا بگید

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنیدتنظیمات دیتا لیست رو هم میتونید تو قسمت پراپرتیز ببینید و یا با کد تغییرش بدید ..
سوالی بود در خدمتم
ممنون اولتيماتور عزيز. بله يه سوال برام پيش اومد. مسلما دستورات اتصال و اين دستور select رو بايد توي صفحه ي كدهاي asp بنويسم. و اين كدهايي كه شما گذاشتيد رو توي صفحه ي كدهاي html. خوب اينجوري اون اتصال با اين كدها ارتباط برقرار مي كنه؟! كلا اينا چجوري به هم ربط داده ميشن؟
يه كار ديگه اي كه مشابه همين هم هست هم مي خوام بكنم و اون هم اينه كه مي خوام قسمت پيوندهاي سايتم هم اينجوري باشه كه پيوندها رو از بانك بخونه و توي قسمت پيوندهاي سايتم نمايش بده. اينطور كه به نظر مي رسه براي اون هم بايد همين روال رو پيش بگيرم . منتها انقياد hyperlink رو انجام بدم. درسته؟
اميدوارم من هم بتونم با تمرين مهارتي كه شما داريد رو كسب كنم.

Ultimator
10-09-2008, 00:10
ممنون اولتيماتور عزيز. بله يه سوال برام پيش اومد. مسلما دستورات اتصال و اين دستور select رو بايد توي صفحه ي كدهاي asp بنويسم. و اين كدهايي كه شما گذاشتيد رو توي صفحه ي كدهاي html. خوب اينجوري اون اتصال با اين كدها ارتباط برقرار مي كنه؟! كلا اينا چجوري به هم ربط داده ميشن؟

ببینید صفحات asp.net دو تا فایلند یه فایل aspx که توش کدهای asp.net و html با هم قرار میگیره و یه فایل vb که کدها رویدادها کلاسها و ... توش نوشته میشه به زبون VB

html ها و کدهایی که برای نمایش کنترلها به کار میره توی فایل aspx نوشته میشن و کدهای ویبی توی فایل ویبی
این چیزهایی که قسمت بالا نوشتم کدهای کنترل دیتالیسته پس باید توی فایل aspx نوشته بشه اون دستور sql هم باید جایی که دیتابیس رو بایند میکنید نوشته بشه مثلا جایی که شیء کانکشن و کامند رو ایجاد میکنید و از دیتابیس چیزی رو میخوونید که اینها توی فایل کد بیهایند یعنی همون فایل ویبی نوشته میشه



يه كار ديگه اي كه مشابه همين هم هست هم مي خوام بكنم و اون هم اينه كه مي خوام قسمت پيوندهاي سايتم هم اينجوري باشه كه پيوندها رو از بانك بخونه و توي قسمت پيوندهاي سايتم نمايش بده. اينطور كه به نظر مي رسه براي اون هم بايد همين روال رو پيش بگيرم . منتها انقياد hyperlink رو انجام بدم. درسته؟
بعله دقیقا هر سطر یه پیوند و هر پیوند هم احتیاج به یک تایتل و یک آدرس داره و اطلاعات دیگه در صورت لزوم
اینجا میتونید همچین چیزی بنویسید : ( حتما با مارکاپ لینک تو html آشنا هستید )


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اینجا باید item template ـه دیتا لیست رو مثلا اینطور بنویسید


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
که این کد به تعداد سطر های دیتابیس تکرار میشه

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


امیدوارم تو کاری که میخواید انجام بدید موفق باشید

samaram
12-09-2008, 16:58
سه سوال ديگه كه مي دونم هر كدومش برا خودش خيليه. اما چون ديدم مرتبطه گفتم تاپيك جدا نزنم.

1- مي خوام براي هر كدوم از پست ها يه لينك نظرات بذارم. كد نويسيش كردم. اما چجوري مي تونم توي صفحات مديريت خودم بفهمم كه هر نظر براي چه پستي ثبت شده؟

2- وقتي بصورت دستي يكي از ركوردهاي بانكم رو حذف مي كنم، بعدش كه ركوردهاي بعدي رو اضافه مي كنم، شماره گذاري فيلد id رو از ادامه ي اون انجام ميده! مثلا فرض كنيد توي بانكم در اولين ورود اطلاعات ، سه ركورد دارم. بنابراين id هاي 1 و 2 و 3 رو بهشون اختصاص خواهد داد. حالا اگه بيام و اينا رو بصورت دستي پاك كنم، ركوردهاي بعدي كه مقدار دهي مي شن بجاي اينكه دوباره id از 1 شروع بشه از 4 شروع مي شه! چجوري كاري كنم از همون 1 شروع شه؟

3- يه كومبوبوكس دارم كه داده هاي بانك رو بهش bind كردم. مي خوام وقتي توي صفحه نشون داده ميشه، اون آيتمي كه داره نشون ميده يه عبارت مثل "ماه را انتخاب كنيد:" باشه. چيكار كنم؟

as13851365
13-09-2008, 09:26
1 ) شما آی دی هر پست رو به همراه رکورد های ثبت شده برای آن آیدی رو باید نشان بدی یعنی با انتخاب پست شبکه آی دی این پست رو هم در جدول ثبت نظر جستجو کن و در کنارش نشان بده ( زیاد وارد نیستم ولی فکر کنم اینجوری باید باشه )

2 ) شمارنده شما از نوع اتوماتیک هستش شما می تونید به صورت دستی کلید هاتون را انتخاب کنید یعنی اول برسی کنید اگر داده ی مورد نظر وجود نداشت بعد داده جدید را روی اون کلید ثبت کنید برای این کار هم ID شما باید به صورت عددی باشه نه اتوماتیک

3 ) در قسمت ( ماه رو انتخاب کنید ) مقدار selected رو قرار بدید

samaram
13-09-2008, 10:08
1 ) شما آی دی هر پست رو به همراه رکورد های ثبت شده برای آن آیدی رو باید نشان بدی یعنی با انتخاب پست شبکه آی دی این پست رو هم در جدول ثبت نظر جستجو کن و در کنارش نشان بده ( زیاد وارد نیستم ولی فکر کنم اینجوری باید باشه )

2 ) شمارنده شما از نوع اتوماتیک هستش شما می تونید به صورت دستی کلید هاتون را انتخاب کنید یعنی اول برسی کنید اگر داده ی مورد نظر وجود نداشت بعد داده جدید را روی اون کلید ثبت کنید برای این کار هم ID شما باید به صورت عددی باشه نه اتوماتیک

3 ) در قسمت ( ماه رو انتخاب کنید ) مقدار selected رو قرار بدید

ممنون. اما:
1- منظورتونو متوجه نشدم!
2- بله راه خوبيه. اما يعني هيچ راهي ندارم كه همون حالت اتوماتيك رو درست كنم؟
3- اينكارو كردم. اما آخه چون اطلاعات از بانك به داخلش bind ميشه دوباره روي همون مي نويسه انگار! چون نشون نميده.

Ultimator
13-09-2008, 13:20
1- شما برای هر نظر باید یه فیلد آی دی مطلبتون رو نگه داری کنید که معلوم شه این نظر مربوط به مطلب با این آی دیه که بعد بتونید با ارتباطات بین جدول ها روش کار کنید
یعنی postId که فیلد آی دی اون مطلبه باید هنگام ثبت نظر توی جدول نظرات ثبت بشه

2- مشکلی نیست اتفاقا بهتره .. و اصولیش هم همینه رکورد 1 حذف شده پس نباید دیگه وجود داشته باشه این فیلد باید کاملا یونیک باشه فکر کنید مثلا یه مطلب آی دیش یکه حذف میشه بعد یه مطلب دیگه میاد جاش اون میشه 1 اینطوری دیگه این همون نیست !! با یونیک بودن در تضاده

3- تو کد نویسی selected index اون رو تغییر بدید . .

samaram
13-09-2008, 17:33
1- شما برای هر نظر باید یه فیلد آی دی مطلبتون رو نگه داری کنید که معلوم شه این نظر مربوط به مطلب با این آی دیه که بعد بتونید با ارتباطات بین جدول ها روش کار کنید
یعنی postId که فیلد آی دی اون مطلبه باید هنگام ثبت نظر توی جدول نظرات ثبت بشه

خب مشكل منم همينه كه نمي دونم چجوري فيلد id مطلبي كه براش نظر داده شده رو بدست بيارم!:31:



3- تو کد نویسی selected index اون رو تغییر بدید . .
اينكارو مي كنم اما اعمال نميشه! آخه ببينيد محتواي اين كومبو باكس از بانك بايند ميشه. خوب من اگه كاري كه گفتين رو هم انجام بدم بعدش كه بايند ميشه روي اون مي ريزه و هيچي به هيچي!

Ultimator
14-09-2008, 01:28
خب مشكل منم همينه كه نمي دونم چجوري فيلد id مطلبي كه براش نظر داده شده رو بدست بيارم![ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
خب توی دیتالیست پست ها آی دی اون رو دارید مثل وقتی که میخواید ویرایش کنید آی دی اون رو با کوئری استرینگ به صفحه کامنت بفرستید و اونجا هم برای اینسرت استفادش کنید هم برای سلکت ارسالی های قبلی


اينكارو مي كنم اما اعمال نميشه! آخه ببينيد محتواي اين كومبو باكس از بانك بايند ميشه. خوب من اگه كاري كه گفتين رو هم انجام بدم بعدش كه بايند ميشه روي اون مي ريزه و هيچي به هيچي!
خب با خود کد نویسی کمبو رو بایند کنید اینطوری خیلی بهتره از نظر Performance
اون مشکل هم خود به خود حل میشه

samaram
14-09-2008, 20:13
خب با خود کد نویسی کمبو رو بایند کنید اینطوری خیلی بهتره از نظر Performance
اون مشکل هم خود به خود حل میشه
ببينيد اين كدهاي منه كه توي page load نوشتم:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اما اون تك دستوري كه گفتين رو به هر قسمتش و به هر نحوي كه اضافه مي كنم فايده نداره.