نشست (علوم رایانه)
نشست (به انگلیسی: Session) در علوم رایانه به اطلاعات نیمهدائم تعاملی گفته میشود. از طرفی به مجموعه عملیاتی که پس از برقراری یک ارتباط بین دو فرایند و با یک توافق اولیه آغاز و سپس یک سری تراکنش (transaction) ادامه مییابد و سپس در روالی هماهنگ و مورد توافق ختم میشود، یک نشست میگویند.[1]
شناسه نشست
شناسه نشست (Session ID) در یک عبارت کوتاه مشخصهای است جهت شناسایی یک نشست مجاز، تعقیب عملیات مورد درخواست و فعل و انفعال منظم با او! بدین ترتیب سرویس دهنده گذشتهاش را به یاد میآورد و از حال Stateless (بدون حالت) به Stateful (حافظ حالت) تبدیل میشود.
لایه ی نشست
این لایه تمام تمهیدات لازم برای ایجاد، مدیریت و نگهداری نشست را فراهم میکند و توانایی از سرگیری یک نشست نافرجام را که به هر دلیل (از جمله اشکال در لایههای زیرین یا قطع موقت ارتباط در شبکه) ناتمام مانده را دارد. در این لایه واحد اطلاعات پیام است.
وظایف کلی لایهٔ نشست
- برقراری و مدیریت یک نشست
- شناسایی طرفین
- سنکرونیزاسیون تماسها و فعل و انفعالات همزمان
- مشخص نمودن اعتبار پیام ها
- اتمام نشست
- حسابداری مشتریها ( Accounting ) [2]
کاربردها
با استفاده از 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
- اصول مهندسی اینترنت دکتر ملکیان. چاپ سی و نهم
- اصول مهندسی اینترنت دکتر احسان ملکیان، ویراست دوم