PDA

View Full Version : تخصیص لینک به مطالب سایت



میلاد قاضی پور
پنج شنبه 12 اسفند 1389, 21:35 عصر
سلام . میخوام برای مطالب سایت لینکی تخصیص داده بشه . این لینک به چه صورت باید ایجاد و به مطلب مورد نظر تخصیص داده بشه ؟

komeil64
پنج شنبه 12 اسفند 1389, 23:21 عصر
خب هر کدوم از مطالب شما که از دیتابیستون استخراج شده حاوی یه آیدی هست توی دیتا بیس بعنان مثال

http://yoursite.com/news.aspx?ID=12
اینجا 12 شناسه مطلب استخراج شده شما از دیتا بیس در صفحه نیوز هست
البته سوالتون خیلی نامفهوم بود من اینطور برداشت کردم که منظورتون پاسخی بود که دادم

میلاد قاضی پور
جمعه 13 اسفند 1389, 21:50 عصر
آخه فرض کنیم من اینو تو آدرس بار نوشتم اما اون مطلب رو چجوری نشون بدم . ببینید مطالب در دیتابیس ثبت میشن . حالا برای نمایششون در سایت یک کوئری مینویسیم و تمام . اما میخوایم این مطلب یک لینک داشته باشه که وقتی اون لینک رو تو نوار آدرس وارد میکنیم مستقیم به صفحه ای منتقل بشیم که فقط اون مطلب توش قرار داره .حالا روش کار به چه صورته ؟

actros
شنبه 14 اسفند 1389, 01:20 صبح
آخه فرض کنیم من اینو تو آدرس بار نوشتم اما اون مطلب رو چجوری نشون بدم . ببینید مطالب در دیتابیس ثبت میشن . حالا برای نمایششون در سایت یک کوئری مینویسیم و تمام . اما میخوایم این مطلب یک لینک داشته باشه که وقتی اون لینک رو تو نوار آدرس وارد میکنیم مستقیم به صفحه ای منتقل بشیم که فقط اون مطلب توش قرار داره .حالا روش کار به چه صورته ؟

اگه خواسته شما اینه :
تو یه صفحه ای لیست خبرها(یا محصولات) رو بذاری و با کلیک روی هر آیتم یه صفحه مجزا حاوی همون آیتم نمایش داده بشه.

1- مطالب رو تو یه گریدویو یا هر چی دوست داری لیست میکنی و Id اش رو در غالب QueryString میفرستی صفحه details
2- تو صفحه details کوئری استرینگ رو می گیری و به عنوان شرط کوئری لینک یا SqlDataSource ازش استفاده می کنی.

اگه از LINQ و EntityFramework استفاده کنی کوئری صفحه details به همین سادگی میشه:

Dim PId As Integer = Convert.ToInt32(Request.QueryString.Get("Id"))
Using myEntities As New myModelEntities()
Dim singleNews= (From n In myEntities.news
Where .news.Id = PId
Select n).take(1)
detailsview1.datasource = singleNews
End Using


اگر هم از SQLDataSource استفاده کنی تو قسمت شرط Where فیلد QueryString رو بهش میدی.

نمی دونم اصلا سوالت این بود یا چیز دیگه.

میلاد قاضی پور
شنبه 14 اسفند 1389, 12:31 عصر
خب کمی تا قسمتی متوجه شدم اما سوأل اینه که وقتی در آدرس بار لینک مطلب کپی میشه چطوری باید به صفحه ی مورد نظر ریدایرکتش کنم ؟
یعنی فرض کنیم من یه آدرس دلخواه واسه مطلبم اختصاص دادم . اگه روی عنوان مطلب کلیک کردم یک کوئری اجرا میشه و یک صفحه باز میشه و اون مطلب رو میاره تو صفحه . اما اگه لینک مستقیما تو آدرسبار وارد شد و اینتر زده شد کوئری مورد نظر چطور باید اجرا بشه؟ در واقع هیچ جایی وجود نداره که کد کوئری رو توش بنویسم چون ادرس بار ادرسباره ...

mohsen_metn
شنبه 14 اسفند 1389, 14:55 عصر
خب کمی تا قسمتی متوجه شدم اما سوأل اینه که وقتی در آدرس بار لینک مطلب کپی میشه چطوری باید به صفحه ی مورد نظر ریدایرکتش کنم ؟
یعنی فرض کنیم من یه آدرس دلخواه واسه مطلبم اختصاص دادم . اگه روی عنوان مطلب کلیک کردم یک کوئری اجرا میشه و یک صفحه باز میشه و اون مطلب رو میاره تو صفحه . اما اگه لینک مستقیما تو آدرسبار وارد شد و اینتر زده شد کوئری مورد نظر چطور باید اجرا بشه؟ در واقع هیچ جایی وجود نداره که کد کوئری رو توش بنویسم چون ادرس بار ادرسباره ...
سلام
شما باید این کد رو در page_load بنویسی

میلاد قاضی پور
شنبه 14 اسفند 1389, 15:24 عصر
در پیج لود کوئری بنویسم که کدوم مطلب رو بیاره ؟ کدوم آی دی رو بیاره ؟ یه روش اینه که از آدرس بار بره از توی لینک صفحه آی دی رو با رجکس دربیاره بخونه بعد که کوئری کامل شد اجرا بشه . اما مطمئنم راه اصولی ساده تری هست . یعنی چی اینکارا؟

میلاد قاضی پور
شنبه 14 اسفند 1389, 15:29 عصر
خیلی سوأل ساده و گویایی هست عزیزان نمیدونم چرا برداشت شما متفاوته . آقایان من مطالب رو در دیتابیس ذخیره میکنم . حالا میخوام این مطالب ذخیره شده آدرس داشته باشن واسه خودشون . فرض کنیم یک آدرس دلخواه رو در تیبل مطالب برای هر مطلب ثبت میکنم . حالا میخوام اون آدرس رو وقتی توی مرورگر وارد میکنم اون مطلب رو بیاره . مرورگر من از کجا باید بفهمه که این آدرس مربوط به فلان مطلب وبسایت منه و بینشون ارتباط برقرار کنه؟

hobab-theme
یک شنبه 15 اسفند 1389, 03:57 صبح
شما باید از شبیه سازی url استفاده کنید
این مطلب رو نگاه کن
http://barnamenevis.org/showthread.php?108346-شبیه-سازی-url (http://barnamenevis.org/showthread.php?108346-%D8%B4%D8%A8%DB%8C%D9%87-%D8%B3%D8%A7%D8%B2%DB%8C-url)
ولی یکم باید تغییرش بدی تا مطابق با خواسته خودت بشه

komeil64
یک شنبه 15 اسفند 1389, 11:07 صبح
دوست عزیز شما چه از شبیه ساز آدرس استفاده کنی چه از روش معمولی یه شناسه داری مثل ID=3 یا در شبیه ساز آدرس همچین چیزی: http://yoursite.com/شبیه (http://yoursite.com/%D8%B4%D8%A8%DB%8C%D9%87) سازی
این شناسه رو با کوئری استرینگ توی پیج لود میگیری با شرط این شناسه مطلبت رو نشون میدی

میلاد قاضی پور
یک شنبه 15 اسفند 1389, 11:27 صبح
دوست عزیز شما چه از شبیه ساز آدرس استفاده کنی چه از روش معمولی یه شناسه داری مثل ID=3 یا در شبیه ساز آدرس همچین چیزی: http://yoursite.com/شبیه (http://yoursite.com/%D8%B4%D8%A8%DB%8C%D9%87) سازی
این شناسه رو با کوئری استرینگ توی پیج لود میگیری با شرط این شناسه مطلبت رو نشون میدی

آها پس من موقع ثبت مطلب در دیتابیس مثلا لینک سایت رو + آیدی=x بکنم و ثبت کنم . بعد در پیج لود بنویسم که select * from matlab where link =urlemururgar
اینطور نیست ؟