PDA

View Full Version : تشخیص این که کاربر توی کدام صفحه هست؟؟



bbc_sh
چهارشنبه 25 دی 1387, 17:32 عصر
سلام دوستان
من یه مسترپیج دارم و 5 تا صفحه.توی مسترپیج یه لینک باتن هست.من میخوام وقتی که کاربر توی صفحهhelp.aspx هست اگه روی این لینک باتن کلیک کنه ,منتقل بشه به صفحه اول مثلا fff.aspx
من چه طوری باید تشخیص بدم که کاربر توی کدام صفحه هست؟؟؟؟ (من میخوام تشخیص بدم که آیا کاربر توی صفحه help.aspx هست یا نه؟)
ممنون میشم راهنمایی کنید

mh19842008
چهارشنبه 25 دی 1387, 17:58 عصر
من منظورت را دقیقاً متوجه نشدم زمانی که کاربر را خواسته باشی به صفحه دیگه با کلیک روی یک لینک منتقل کنی که response.redirect میتونه به شما کمک کنه و اگه خواسته باشید کاربران یک صفحه را تشخیص دهید باید در زمانه درخواست یک صفحه کد کاربری یا IP کاربر رو دریافت کنی یا اگه فقط تعداد آن را خواسته باشی میتونی یک شمارنده تعبیه کنی وبا درخواست هر صفحه یکی به شمارنده مربوط به اون صفحه اضافه کنی

hassanf
چهارشنبه 25 دی 1387, 18:16 عصر
سلام
اگه منظورتو درست متوجه شده باشم :


Request.Url.ToString();

bbc_sh
چهارشنبه 25 دی 1387, 20:04 عصر
فرض کنید کاربر توی صفحه s.aspx باشه اگه روی لینک باتنی که توی مسترپیج هست کلیک کنه هیچ اتفاقی نیفته.ولی اگه توی صفحه d.aspx باشه وقتی روی لینک باتن کلیک میکنه به صفحه اول بره.

mh19842008
چهارشنبه 25 دی 1387, 22:03 عصر
میشه این کارو کرد ولی معمولا این لینک به این شکل رو، در داخل صفحه مورد نظر تعبیه می کنن.
اگر شما یک صفحه defualt دارید که این لینک به این صفحه اشاره داره نباید جای نگرانی باشه چون اگر روی لینک در صغحه کلیک بشه باز در همین صفحه می مانید فقط یک postback دارید
تا جایی که من متوجه شدم اینکارو میتونی انجام بدی اگه بد متوجه شدم این بنده رو ببخشید
موفق باشئد

alihassanabadi
جمعه 04 بهمن 1387, 01:12 صبح
سلام دوست خوب
میتونی در page_load هر صفحه یه session تعریف کنی
وقتی وارد صفحه میشه session ش یک بشه
بعد توی لینک چک کنی که آیا session مربوط به aa.aspx یک هست یا نه اگه یک نبود خوب به صفحه aa.aspx بره اگه یک بود الان صفحه بز شده
بعد با بسته شدن هر صفحه session ش رو 0 کنی
البته تو page_load وقتی

alihassanabadi
جمعه 04 بهمن 1387, 01:14 صبح
ببخشید نصفه نیمه اومد حواسم نبود ارسالو زدم
البته تو page_load وقتی

alihassanabadi
جمعه 04 بهمن 1387, 01:15 صبح
ببخشید نصفه نیمه اومد حواسم نبود ارسالو زدم
البته تو page_load وقتی session رو

alihassanabadi
جمعه 04 بهمن 1387, 02:43 صبح
session رو اینجوری تعریف کن تو page_load صفحه help.aspx
try{
Session.Add("visithelp", "1");
}
catch
{
}
حالا تو لینک چک کن که visithelp برابر 1 هست اگه بود خوب نشانه اینه که صفحه باز است
اینجوری
try
{
Session["ticket"] = "1";
if (Session["visithelp"].ToString().Trim() != "1")
{
Response.Redirect("fff.aspx");
}

}
catch
{

}
نکته مهم با بسته شدن اون صفحه باید سشن visithelp رو برابر 0 کنی
دیگه بقیش به خودت بستگی داره

البته راههای دیگری هم هست
با تشکر

ennovation
جمعه 04 بهمن 1387, 22:13 عصر
سلام
دوست عزیز برای فهمیدن اینکه در حال حاضر در کدام صفحه هستی میتونی ازاین کد استفاده کنی


string pathname = Request.Path.Substring(Request.Path.LastIndexOf("/") + 1);


حالا میتونی با یک do case یا if پارامتر pathname را با مقداری که میخواهی چک کنی مثلا


if (pathname == "help.aspx ")
{
...............
}