PDA

View Full Version : انتقال مقدیر بین صفحات



daffy_duck376
سه شنبه 18 فروردین 1388, 17:12 عصر
سلام دوستان
من دو تا صحه دارم که با SERVER.TRANSFER یک سری اطلاعات رو از اولی به دومی انتقال بدم
این درست مار میکنه ولی زمانی که کاربر در آدرس بار به جای آدرس صفحه اول ، آدرس صفحه دوم رو بزنه برنامه با مشکل مواجه میشه . من چطور میتونم کاربر رو مجبور کنم اول صفحه اول رو باز کنه یا اگه اول صفحه دوم رو باز کرد برنامه یه مقدار پیش فرض رو به اون مقادیر بده و با خطا مواجه نشه ؟
ممنون از توجه شما . لطفا من را راهنمایی کنید

online_mansoor2007
سه شنبه 18 فروردین 1388, 17:33 عصر
از If استفاده کنید . اگر مثلاً فلان مقدار موجود بود که هیچ اگه نبود reponse.redirect("1.aspx")

daffy_duck376
سه شنبه 18 فروردین 1388, 19:31 عصر
همین دیگه من هرچیز رو که بخوام چک کنم پیغام میده همچین چیزی وجود نداره . null refrence...........

emad8159
سه شنبه 18 فروردین 1388, 21:23 عصر
دوست عزیز ، برای اینکه کاربر رو مجبور کنی که از صفحه اول به صفحه دوم بره کافی است که شما یک session تعریف کنید . هنگامی که صفحه دوم شما بارگذاری می شود برنامه می بایست مقدار session رو که در صفحه اول مقدار دهی شده است رو چک می کند و سپس بارگذاری می شود. در غیر اینصورت دوباره به صفحه اول redirect می کنه .

Persian-eBuy (http://www.persian-ebuy.com)

daffy_duck376
چهارشنبه 19 فروردین 1388, 06:59 صبح
دوست عزیز ، برای اینکه کاربر رو مجبور کنی که از صفحه اول به صفحه دوم بره کافی است که شما یک session تعریف کنید . هنگامی که صفحه دوم شما بارگذاری می شود برنامه می بایست مقدار session رو که در صفحه اول مقدار دهی شده است رو چک می کند و سپس بارگذاری می شود. در غیر اینصورت دوباره به صفحه اول redirect می کنه .



با تشکر ازدوستان با این روش هم باز مشکل حل نمی شود . SESSION باید در فرم یک تعریف شود و وقتی کاربر اول فرم 2 را فراخوانی میکند هیچ SESSION تعریرف نشده و وقتی میخوام چک کنم این پیغام رو میده :

Object reference not set to an instance of an object.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.

online_mansoor2007
چهارشنبه 19 فروردین 1388, 14:04 عصر
یکجا دارید اشتباه می کنید . سورس صفحه 1 و 2 را بگذارید اینجا

aftab3000
چهارشنبه 19 فروردین 1388, 15:40 عصر
شما مقداری را که پاس میدهید به صفحه دور را باید در PageLoad با استفاده از QueryString مقدار را بخوانید در صورتی که نال بود به صفحه اول ریدارکت کنید . فراموش نشود که نال بودن کوئری استرینگ در همان if چک میشود.

web developer
پنج شنبه 20 فروردین 1388, 16:16 عصر
سلام

از این استفاده کن:



IF session("salam") Is Nothing Then
response.redirect("a.aspx")
ELSE
'do something
END IF

online_mansoor2007
پنج شنبه 20 فروردین 1388, 18:49 عصر
البته من فکر می کنم بررسی خالی یا پر بودن یک سیشن از لحاظ امنیتی کار درستی نباشه و بهتره در صفحه اول اون را یک مقدار هم بدیم و در صفحه دوم مقدار را بجای خالی یا پر بودن بررسی کنیم . نظر اساتید چی هست ؟؟؟
مصلاً مقدار را بزاریم برابر با 123

بعد دستورات در صفحه 2 :


if me.session.item("sec")=123 then
...
...
..
else
,,,

end if

web developer
شنبه 22 فروردین 1388, 11:03 صبح
البته من فکر می کنم بررسی خالی یا پر بودن یک سیشن از لحاظ امنیتی کار درستی نباشه

لطفا بیشتر توضیح بدید.

چون وجود یا عدم وجود سشن چک می شود نه خالی یا پر بودن، کاملا امن هست (البته هیچ چیز کاملا امن نیست!)