نشست (علوم کامپیوتر)

از ویکی‌پدیا، دانشنامهٔ آزاد
(تغییرمسیر از نشست)
پرش به: ناوبری، جستجو

نشست (به انگلیسی: Session) در علوم رایانه به اطلاعات نیمه‌دائم تعاملی گفته می‌شود. از طرفی به مجموعه عملیاتی که پس از برقراری یک ارتباط بین دو فرایند و با یک توافق اولیه آغاز و سپس یک سری تراکنش (transaction) ادامه می‌یابد و سپس در روالی هماهنگ و مورد توافق ختم می شود، یک نشست می گویند.[۱]

شناسه نشست[ویرایش]

شناسه نشست (Session ID) در یک عبارت کوتاه مشخصه‌ای است جهت شناسایی یک نشست مجاز، تعقیب عملیات مورد درخواست و فعل و انفعال منظم با او! بدین ترتیب سرویس دهنده گذشته‌اش را به یاد می‌آورد و از حال Stateless (بدون حالت) به Stateful (حافظ حالت) تبدیل می‌شود.

لایه ی نشست[ویرایش]

این لایه تمام تمهیدات لازم برای ایجاد، مدیریت و نگهداری نشست را فراهم می کند و توانایی از سرگیری یک نشست نافرجام را که به هر‌ دلیل (از جمله اشکال در لایه های زیرین یا قطع موقت ارتباط در شبکه) ناتمام مانده را دارد. در این لایه واحد اطلاعات پیام است.

وظایف کلی لایه ی نشست

  • برقراری و مدیریت یک نشست
  • شناسایی طرفین
  • سنکرونیزاسیون تماس ها و فعل و انفعالات همزمان
  • مشخص نمودن اعتبار پیام ها
  • اتمام نشست
  • حسابداری مشتری ها ( Accounting ) [۲]

کاربرد ها[ویرایش]

با استفاده از Session می توان متغیر‌های سراسری تعریف نمود و از یک متغیر در چندین اسکریپت استفاده نمود. نشست (Session) می‌تواند در هنگام ورود کاربران و ورود داده‌ها توسط کاربر و جمع اوری اطلاعات از فرم (به انگلیسی: Form)‌ها به برنامه نویس (به انگلیسی: Programmer)‌ها کمک کند.

توکن نشست در اچ‌تی‌تی‌پی[ویرایش]

توکن نشست (Session Token) در حقیقت شناسه ای واحد است که در سرور(به انگلیسی: Server)‌ تولید و برای کاربر(به انگلیسی: Client)‌ فرستاده می شود تا نشست فعال کنونی را تشخیص دهد

نشست در پی‌اچ‌پی[ویرایش]

یکی از اسکریپت‌هایی که طراحان وب برای ایجاد وبسایت (به انگلیسی: Website) استفاده می‌کنند PHP است. برای استفاده از نشست (Session) در PHP باید از تابع session_start() استفاده کرد که این تابع باید در ابتدای صفحه وب و قبل از هر داده (حتی تگ‌های HTML) قرار داد. برای استفاده از سشن (Session) باید از ارایه (به انگلیسی: Array) انجمنی $_SESSION استفاده کرد. این یک ارایه انجمنی است که می‌توانید برای هر کلید (Key) دلخواه ان یک مقدار (Value) ذخیره کرد. (مثال را بخوانید...)

مثال کاربردی[ویرایش]

<?php
// to run session
session_start();
// write data in session
$_SESSION["username"] = "miladrahimi93";
$_SESSION["email"] = "info[at]miladrahimi[dot]com";
$_SESSION["website"] = "http://www.miladrahimi.com";
// read data from session
echo $_SESSION["username"];
echo $_SESSION["email"];
echo $_SESSION["website"];
// delete session
unset($_SESSION["username"]);
unset($_SESSION["email"]);
unset($_SESSION["website"]);
?>

منابع[ویرایش]

کتاب اصول مهندسی اینترنت دکتر ملکیان

  • کتاب اموزش تضمینی طراحی وب با PHP
  1. اصول مهندسی اینترنت دکتر ملکیان. چاپ سی و نهم
  2. اصول مهندسی اینترنت دکتر احسان ملکیان، ویراست دوم