تبادل اطلاعات بین صفحات با استفاده از QueryString

تبادل اطلاعات بین صفحات با استفاده از QueryString

در طراحی وب می توان به روش های مختلف اطلاعات را در بین صفحات جابجا کرد. یکی از این روش ها استفاده از QueryString می باشد که در بسیاری از سایت ها نیز به چشم می خورد. QueryString اطلاعات مورد نیاز کاربر را در آدرس اینترنتی جای داده و به صفحات دیگر ارجاع می دهد. اما این روش همانطور که مشخص است از امنیت خاصی برخوردار نیست چرا که کاربر به راحتی اطلاعات ارسالی را در آدرس بار مرورگر خود می تواند ببیند حتی اگر اطلاعات رمز نگاری یا Encode هم بشوند باز قابل رمز گشایی است پس اگر امنیت برای شما حائز اهمیت است و قصد این را دارید که اطلاعات مهمی را از صفحه ای به صفحه ی دیگر ارسال کنید بهتر است روش های دیگر مانند Session را برای خود برگزینید. از طرفی گفتنی است که QueryString کلاینت ساید (ClientSide) بوده و حافظه ی سرور را اشغال نمی کند. حال طریقه ارسال و دریافت اطلاعات را با استفاده از QueryString می بینیم. برای این منظور به قطعه کد زیر توجه فرمائید :

ارسال اطلاعات بوسیله QueryString

Response.Redirect("Webform2.aspx?Name=Pixel&" +
"Work=" + TextBox1.Text)

ارسال اطلاعات بوسیله QueryString

Response.Redirect("Webform2.aspx?Name=Pixel&" +
"Work=" + TextBox1.Text);

با استفاده از قطعه کد فوق می توان دو پارامتر Name و Work را از صفحه جاری به صفحه Webform2.aspx ارسال کرد. از طرفی ورودی ها می تواند با توجه به کد نوشته شده بصورت مسقیم وارد شود یا اینکه از کاربر گرفته شود. بعد از اجرای دستور و منتقل شدن اطلاعات ، آدرس صفحه بعد به صورت زیر خواهد بود :

Http://www.SiteName.com/Webform2.aspx?Name=Pixel&Work=Programming

اما دو علامت جدا کننده در QueryString استفاده می شود که در کدهای بالا هم قابل مشاهده است. یکی علامت سوال(؟) که جدا کننده QueryString و آدرس اینترنتی می باشد و دیگری & که جدا کننده پارامترهای ارسالی توسط QueryString است. حال برای دریافت اطلاعات در صفحه ی مقصد می توانید از روش زیر استفاده کنید :

دریافت اطلاعات از QueryString

TextBox1.Text=Request.QueryString("Name")
TextBox2.Text=Request.QueryString("LastName")

دریافت اطلاعات از QueryString

TextBox1.Text=Request.QueryString["Name"];
TextBox2.Text=Request.QueryString["LastName"];

با توجه به کد بالا می بینید که به راحتی می توان در صفحه ی مقصد مقادیرهای ارسال شده را دریافت و در متغییر یا کنترل های موجود در صفحه جای داد.



نظرات کاربران



عبارت امنیتی : حاصل 2 × 7 می شود :
متن پیام :