PDA

View Full Version : سوال: مشکل با جستجو در سایت



kh1387
جمعه 18 بهمن 1387, 10:42 صبح
با سلام
سایتی ساخته ام که یک textbox جستجو در مستر پیج دارد، و کاربر می تواند دقیقا مثل همین سایت logIn شود. منتهی اگر گزینه "بخاطر داشتن؟" را تیک بزند، کوکی ایجاد شده و اطلاعات ذخیره می شوند و اگر تیک نخورد بدون کوکی است.
حالا مشکلی که دارم اینه که اگر کاربر وارد بشه و تیک چک باکس مذکور رو نزنه، اگر داخل textBox جستجو کنه، وقتی به صفحه search.aspx میره، از حالت log in خارج می شه و باید دوباره login بشه.
لازم به ذکره که در قسمت جستجو وقتی کاربر روی دکمه جستجو کلیک می کنه این کد رو نوشتم:


if (txtSearch.Text.Trim() == string.Empty)
{
lblMsg.Visible = true;
}
else
{
Response.Redirect("products.aspx?" + "search=" + txtSearch.Text.Trim());
}

لطفا دوستان راهنمایی کنند و راه حل بدهند.
با تشکر از جامعه برنامه نویسان

eyes_shut_number1
جمعه 18 بهمن 1387, 17:36 عصر
خوب شما باید اطلاعات login رو درون session نگه داری!
که تا وقتی که داخل سایت هست اطلاات رو نگه داره!
بعد اگه تیک "مرا به خاطر بسپار" را زد اون رو داخل کوکی بنویسی!

kh1387
دوشنبه 21 بهمن 1387, 21:28 عصر
خوب شما باید اطلاعات login رو درون session نگه داری!
که تا وقتی که داخل سایت هست اطلاات رو نگه داره!
بعد اگه تیک "مرا به خاطر بسپار" را زد اون رو داخل کوکی بنویسی!
متشکرم
مشکلی که در session دارم اولی که در page_load می خواد بالا بیاد، چون sessionرو نمی بینه errorمی ده!
چکار کنم؟

milade
دوشنبه 21 بهمن 1387, 21:47 عصر
یعنی چی سشن رو نمیبینه ؟
شما بایست در صفحه لاگین مثلا نام کاربری رو بریزید تو سشن و توی صفحات بعد بگید اگه سشن خالی نبود ( یا هر جیز دیگه ) اون کاربره و جستجو انجام بشه
مشکل چی بود ؟

kh1387
دوشنبه 21 بهمن 1387, 22:49 عصر
یعنی چی سشن رو نمیبینه ؟
یعنی اینکه Error می ده و می گه برای استفاده از session باید اون رو new کنید که این کار کلا برنامه رو بهم می ریزه.
مگر اینکه کارایی session مثل profile باشه:متفکر:

milade
سه شنبه 22 بهمن 1387, 07:41 صبح
سلام
نمیدونم کدت چیه .
این رو پیاده کن در صفحه پس از تعیین اعتبار ( وقتی کاربر شناسایی شد ) :

Session("User")="milade"
حالا در صفحه سرچ اگه میخوای فقط کاربر جستجو کنه این طور عمل کن :



If Session("User")=Nothing then
'no user
Else
'user
end if
حالا کدذت رو پیاده کن بین If ها و مثلا خاصیت Visible رو False کن یا ...
اگه باز مشکلی بود کدت رو بزار
موفق باشی

kh1387
سه شنبه 22 بهمن 1387, 19:36 عصر
خب حالا وقتی صفحه بالا میاد و میگه سیشن باید new بشه رو چیکار کنم؟
به عبارتی چه کنم که وقتی صفحه بالا میاد بهش بفهمونم که این سیشن قبلیه نه جدید ؟
ممنون

milade
چهارشنبه 23 بهمن 1387, 12:59 عصر
سلام
لطفا کد و یا عکس خطا رو بزار
موفق باشی

kh1387
پنج شنبه 24 بهمن 1387, 17:03 عصر
من فکر کنم باید بجای اینکه در page_load اطلاعات session رو چک کنم در جای دیگه باید چک کرد.
در جایی خوندم نوشته بود در page_prerender()
کسی نمی دونه این یعنی چه؟

milade
پنج شنبه 24 بهمن 1387, 18:14 عصر
سلام
نمیدونم چه اصراری دارید که ... . بابا جون یه عکس بده !
یا یه تیکه از کدت رو بزار
در حال PreRender هیچ ربطی نداره
شما توی کد نویسی دارید اشتباه میکنید .
محض اطلاع : PreRender در اخرین مرحله کامپایل صفحه انجام میشه ، و اینکه سشن حتی در Init هم میشه فراخونده بشه چون وجود داشته !
کد ، کد ، کد یا عکس خطا * 3
موفق باشی