{"id":1122,"date":"2016-10-20T23:27:38","date_gmt":"2016-10-21T05:27:38","guid":{"rendered":"http:\/\/projectopy.com\/blog\/?p=1069"},"modified":"2016-10-20T23:27:38","modified_gmt":"2016-10-21T05:27:38","slug":"sesiones-en-php","status":"publish","type":"post","link":"https:\/\/iscodigo.com\/blog\/php\/sesiones-en-php\/","title":{"rendered":"Sesiones en PHP"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_72 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Tabla de Contenidos<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 eztoc-toggle-hide-by-default' ><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/iscodigo.com\/blog\/php\/sesiones-en-php\/#Problematica_de_HTTP\" title=\"Problem\u00e1tica de HTTP\">Problem\u00e1tica de HTTP<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/iscodigo.com\/blog\/php\/sesiones-en-php\/#Abrir_una_Sesion\" title=\"Abrir una Sesi\u00f3n\">Abrir una Sesi\u00f3n<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/iscodigo.com\/blog\/php\/sesiones-en-php\/#Lectura_de_Datos_de_Sesion\" title=\"Lectura de Datos de Sesi\u00f3n\">Lectura de Datos de Sesi\u00f3n<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/iscodigo.com\/blog\/php\/sesiones-en-php\/#Cerrar_una_Sesion\" title=\"Cerrar una Sesi\u00f3n\">Cerrar una Sesi\u00f3n<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/iscodigo.com\/blog\/php\/sesiones-en-php\/#Referencias\" title=\"Referencias\">Referencias<\/a><\/li><\/ul><\/nav><\/div>\n<h3><span class=\"ez-toc-section\" id=\"Problematica_de_HTTP\"><\/span>Problem\u00e1tica de HTTP<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Se ha dicho anteriormente que las peticiones y respuestas entre cliente y servidor son a trav\u00e9s del protocolo HTTP. Uno de los inconvenientes de \u00e9ste protocolo es que no guarda estados, sobre conexiones anteriores. Por lo que no puede identificarse qui\u00e9n solicita respuestas del servidor.<\/p>\n<p>Es por esto que se necesita el uso de sesiones, con las cuales se guarde informaci\u00f3n importante a trav\u00e9s de la aplicaci\u00f3n web. Esta informaci\u00f3n es guardada de forma temporal hasta que la misma ya no es necesaria.<\/p>\n<p>PHP maneja el uso de sesiones, lo cual veremos a continuaci\u00f3n.<\/p>\n<h4><span class=\"ez-toc-section\" id=\"Abrir_una_Sesion\"><\/span>Abrir una Sesi\u00f3n<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Lo primero que se debe realizar para manejar sesiones en PHP, es abrir una sesi\u00f3n. Esto se realiza con la funci\u00f3n <code>session_start()<\/code>. Esto se debe realizar con cada p\u00e1gina donde se desea mantener la informaci\u00f3n.<\/p>\n<h4><span class=\"ez-toc-section\" id=\"Lectura_de_Datos_de_Sesion\"><\/span>Lectura de Datos de Sesi\u00f3n<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>El arreglo global <code>$_SESSION<\/code>, permite guardar la informaci\u00f3n, como un arreglo asociativo, similar a los vistos anteriormente.<\/p>\n<p>Es importante indicar que los valores guardados en dicho arreglo solo pueden ser le\u00eddos si la sesi\u00f3n est\u00e1 activa, y esto se logra con el <code>session_start()<\/code>.<\/p>\n<h4><span class=\"ez-toc-section\" id=\"Cerrar_una_Sesion\"><\/span>Cerrar una Sesi\u00f3n<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Una vez que ya no es necesaria la sesi\u00f3n, se debe cerrar. Para hacer esto de forma completa se debe hacer lo siguiente:<\/p>\n<ol>\n<li>Mantener la sesi\u00f3n activa utilizando <code>session_start()<\/code>.<\/li>\n<li>Luego, destruir la informaci\u00f3n almacenada en el arreglo <code>$_SESSION<\/code>, utilizando la funci\u00f3n <code>session_unset()<\/code>.<\/li>\n<li>Destruir la sesi\u00f3n utilizando\u00a0<code>session_destroy()<\/code>.<\/li>\n<\/ol>\n<h2><span class=\"ez-toc-section\" id=\"Referencias\"><\/span>Referencias<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>http:\/\/php.net\/manual\/en\/book.session.php<br \/>\nhttp:\/\/www.w3schools.com\/php\/php_sessions.asp<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Problem\u00e1tica de HTTP Se ha dicho anteriormente que las peticiones y respuestas entre cliente y servidor son a trav\u00e9s del protocolo HTTP. Uno de los inconvenientes de \u00e9ste protocolo es que no guarda estados, sobre conexiones anteriores. Por lo que no puede identificarse qui\u00e9n solicita respuestas del servidor. Es por esto que se necesita el [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[46,49],"tags":[133],"class_list":["post-1122","post","type-post","status-publish","format-standard","hentry","category-php","category-web","tag-session"],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/iscodigo.com\/blog\/wp-json\/wp\/v2\/posts\/1122","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/iscodigo.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/iscodigo.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/iscodigo.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/iscodigo.com\/blog\/wp-json\/wp\/v2\/comments?post=1122"}],"version-history":[{"count":0,"href":"https:\/\/iscodigo.com\/blog\/wp-json\/wp\/v2\/posts\/1122\/revisions"}],"wp:attachment":[{"href":"https:\/\/iscodigo.com\/blog\/wp-json\/wp\/v2\/media?parent=1122"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/iscodigo.com\/blog\/wp-json\/wp\/v2\/categories?post=1122"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/iscodigo.com\/blog\/wp-json\/wp\/v2\/tags?post=1122"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}