{"id":174,"date":"2011-06-10T22:00:11","date_gmt":"2011-06-10T22:00:11","guid":{"rendered":"https:\/\/www.jose-aguilar.com\/blog\/?p=174"},"modified":"2012-02-29T21:27:36","modified_gmt":"2012-02-29T21:27:36","slug":"sistema-de-registro-de-usuarios-con-php","status":"publish","type":"post","link":"https:\/\/www.jose-aguilar.com\/blog\/sistema-de-registro-de-usuarios-con-php\/","title":{"rendered":"Sistema de registro de usuarios con PHP"},"content":{"rendered":"<div><a href=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2011\/06\/usuarios1.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft size-full wp-image-180\" title=\"usuarios\" src=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2011\/06\/usuarios1.jpg\" alt=\"\" width=\"223\" height=\"212\" \/><\/a>C\u00f3mo realizar un sistema de autentificaci\u00f3n en PHP, en el que los usuarios deban introducir nombre y contrase\u00f1a para que puedan visualizar las p\u00e1ginas de una aplicaci\u00f3n con acceso restringido.<\/div>\n<div>En este art\u00edculo vamos a describir los metodos de trabajo con sesiones en PHP, inicializar sesi\u00f3n, crear variables de sesi\u00f3n o recuperarlas.<\/div>\n<div>\n<p>Las sesiones, en aplicaciones web realizadas con PHP y en el desarrollo de p\u00e1ginas web en general, nos sirven para almacenar informaci\u00f3n que se memorizar\u00e1 durante toda la visita de un usuario a una p\u00e1gina web. Dicho de otra forma, un usuario puede ver varias p\u00e1ginas durante su paso por un sitio web y con sesiones podemos almacenar variables que podremos acceder en cualquiera de esas p\u00e1ginas.Digamos que las sesiones son una manera de guardar informaci\u00f3n, espec\u00edfica para cada usuario, durante toda su visita. Cada usuario que entra en un sitio abre una sesi\u00f3n, que es independiente de la sesi\u00f3n de otros usuarios. En la sesi\u00f3n de un usuario podemos almacenar todo tipo de datos, como su nombre, productos de un hipot\u00e9tico carrito de la compra, preferencias de visualizaci\u00f3n o trabajo, p\u00e1ginas por las que ha pasado, etc. Todas estas informaciones se guardan en lo que denominamos variables de sesi\u00f3n.<\/p>\n<p>PHP dispone de un m\u00e9todo bastante c\u00f3modo de guardar datos en variables de sesi\u00f3n, y de un juego de funciones para el trabajo con sesiones y variables de sesi\u00f3n. Lo veremos en este art\u00edculo.<\/p>\n<p>Para cada usuario PHP internamente genera un identificador de sesi\u00f3n \u00fanico, que sirve para saber las variables de sesi\u00f3n que pertenecen a cada usuario. Para conservar el identificador de sesi\u00f3n durante toda la visita de un usuario a una p\u00e1gina PHP almacena la variable de sesi\u00f3n en una cookie, o bien la propaga a trav\u00e9s de la URL. Esto se puede configurar desde el archivo php.ini.<\/p>\n<p>Cuando queremos utilizar variables de sesi\u00f3n en una p\u00e1gina tenemos que iniciar la sesi\u00f3n con la siguiente funci\u00f3n:<\/p>\n<pre id=\"line\">session_start ()<\/pre>\n<p>Inicia una sesi\u00f3n para el usuario o contin\u00faa la sesi\u00f3n que pudiera tener abierta en otras p\u00e1ginas. Al hacer session_start() PHP internamente recibe el identificador de sesi\u00f3n almacenado en la cookie o el que se env\u00ede a trav\u00e9s de la URL. Si no existe tal identificador se sesi\u00f3n, simplemente lo crea.<\/p>\n<p>Una vez inicializada la sesi\u00f3n con session_start() podemos a partir de ahora utilizar variables de sesi\u00f3n, es decir, almacenar datos para ese usuario, que se conserven durante toda su visita o recuperar datos almacenados en p\u00e1ginas que haya podido visitar.<\/p>\n<p>La sesi\u00f3n se tiene que inicializar antes de escribir cualquier texto en la p\u00e1gina. Esto es importante y de no hacerlo as\u00ed corremos el riesgo de recibir un error, porque al iniciar la sesi\u00f3n se deben leer las cookies del usuario, algo que no se puede hacer si ya se han enviado las cabeceras del HTTP.<\/p>\n<p>Una vez iniciada la sesi\u00f3n podemos utilizar variables de sesi\u00f3n a trav\u00e9s de $_SESSION, que es un array asociativo, donde se accede a cada variable a partir de su nombre, de este modo:<\/p>\n<pre id=\"line\">$_SESSION[\"nombre_de_variable\"]<\/pre>\n<p><a href=\"..\/..\/scripts\/php\/usuarios\/index.php\">Ver un ejemplo pr\u00e1ctico en funcionamiento<\/a><\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>C\u00f3mo realizar un sistema de autentificaci\u00f3n en PHP, en el que los usuarios deban introducir nombre y contrase\u00f1a para que puedan visualizar las p\u00e1ginas de una aplicaci\u00f3n con acceso restringido. En este art\u00edculo vamos a describir los metodos de trabajo con sesiones en PHP, inicializar sesi\u00f3n, crear variables de sesi\u00f3n o recuperarlas. Las sesiones, en [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":177,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[84],"class_list":["post-174","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php","tag-formularios"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Sistema de registro de usuarios con PHP - Jose Aguilar Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Sistema de registro de usuarios con PHP - Jose Aguilar Blog\" \/>\n<meta property=\"og:description\" content=\"C\u00f3mo realizar un sistema de autentificaci\u00f3n en PHP, en el que los usuarios deban introducir nombre y contrase\u00f1a para que puedan visualizar las p\u00e1ginas de una aplicaci\u00f3n con acceso restringido. En este art\u00edculo vamos a describir los metodos de trabajo con sesiones en PHP, inicializar sesi\u00f3n, crear variables de sesi\u00f3n o recuperarlas. Las sesiones, en [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.jose-aguilar.com\/blog\/sistema-de-registro-de-usuarios-con-php\/\" \/>\n<meta property=\"og:site_name\" content=\"Jose Aguilar Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/joseaguilarblog\" \/>\n<meta property=\"article:published_time\" content=\"2011-06-10T22:00:11+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2012-02-29T21:27:36+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2011\/06\/usuarios.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"223\" \/>\n\t<meta property=\"og:image:height\" content=\"212\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Jose Aguilar\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@JoseAguilarBlog\" \/>\n<meta name=\"twitter:site\" content=\"@JoseAguilarBlog\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jose Aguilar\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/sistema-de-registro-de-usuarios-con-php\/\",\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/sistema-de-registro-de-usuarios-con-php\/\",\"name\":\"Sistema de registro de usuarios con PHP - Jose Aguilar Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/sistema-de-registro-de-usuarios-con-php\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/sistema-de-registro-de-usuarios-con-php\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2011\/06\/usuarios.jpg\",\"datePublished\":\"2011-06-10T22:00:11+00:00\",\"dateModified\":\"2012-02-29T21:27:36+00:00\",\"author\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/sistema-de-registro-de-usuarios-con-php\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.jose-aguilar.com\/blog\/sistema-de-registro-de-usuarios-con-php\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/sistema-de-registro-de-usuarios-con-php\/#primaryimage\",\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2011\/06\/usuarios.jpg\",\"contentUrl\":\"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2011\/06\/usuarios.jpg\",\"width\":223,\"height\":212},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/sistema-de-registro-de-usuarios-con-php\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\/\/www.jose-aguilar.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Sistema de registro de usuarios con PHP\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#website\",\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/\",\"name\":\"Jose Aguilar Blog\",\"description\":\"Desarrollo Web con PrestaShop, WordPress, PHP, jQuery y Ajax\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.jose-aguilar.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11\",\"name\":\"Jose Aguilar\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g\",\"caption\":\"Jose Aguilar\"},\"description\":\"Director ejecutivo y tecnol\u00f3gico en JA Modules. Experto programador PrestaShop y Experto programador WordPress.\",\"sameAs\":[\"https:\/\/plus.google.com\/114357189801512615537\"],\"url\":\"https:\/\/www.jose-aguilar.com\/blog\/author\/josea902\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Sistema de registro de usuarios con PHP - Jose Aguilar Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"es_ES","og_type":"article","og_title":"Sistema de registro de usuarios con PHP - Jose Aguilar Blog","og_description":"C\u00f3mo realizar un sistema de autentificaci\u00f3n en PHP, en el que los usuarios deban introducir nombre y contrase\u00f1a para que puedan visualizar las p\u00e1ginas de una aplicaci\u00f3n con acceso restringido. En este art\u00edculo vamos a describir los metodos de trabajo con sesiones en PHP, inicializar sesi\u00f3n, crear variables de sesi\u00f3n o recuperarlas. Las sesiones, en [&hellip;]","og_url":"https:\/\/www.jose-aguilar.com\/blog\/sistema-de-registro-de-usuarios-con-php\/","og_site_name":"Jose Aguilar Blog","article_publisher":"https:\/\/www.facebook.com\/joseaguilarblog","article_published_time":"2011-06-10T22:00:11+00:00","article_modified_time":"2012-02-29T21:27:36+00:00","og_image":[{"width":223,"height":212,"url":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2011\/06\/usuarios.jpg","type":"image\/jpeg"}],"author":"Jose Aguilar","twitter_card":"summary_large_image","twitter_creator":"@JoseAguilarBlog","twitter_site":"@JoseAguilarBlog","twitter_misc":{"Escrito por":"Jose Aguilar","Tiempo de lectura":"3 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.jose-aguilar.com\/blog\/sistema-de-registro-de-usuarios-con-php\/","url":"https:\/\/www.jose-aguilar.com\/blog\/sistema-de-registro-de-usuarios-con-php\/","name":"Sistema de registro de usuarios con PHP - Jose Aguilar Blog","isPartOf":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/sistema-de-registro-de-usuarios-con-php\/#primaryimage"},"image":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/sistema-de-registro-de-usuarios-con-php\/#primaryimage"},"thumbnailUrl":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2011\/06\/usuarios.jpg","datePublished":"2011-06-10T22:00:11+00:00","dateModified":"2012-02-29T21:27:36+00:00","author":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11"},"breadcrumb":{"@id":"https:\/\/www.jose-aguilar.com\/blog\/sistema-de-registro-de-usuarios-con-php\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.jose-aguilar.com\/blog\/sistema-de-registro-de-usuarios-con-php\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.jose-aguilar.com\/blog\/sistema-de-registro-de-usuarios-con-php\/#primaryimage","url":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2011\/06\/usuarios.jpg","contentUrl":"https:\/\/www.jose-aguilar.com\/blog\/wp-content\/uploads\/2011\/06\/usuarios.jpg","width":223,"height":212},{"@type":"BreadcrumbList","@id":"https:\/\/www.jose-aguilar.com\/blog\/sistema-de-registro-de-usuarios-con-php\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/www.jose-aguilar.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Sistema de registro de usuarios con PHP"}]},{"@type":"WebSite","@id":"https:\/\/www.jose-aguilar.com\/blog\/#website","url":"https:\/\/www.jose-aguilar.com\/blog\/","name":"Jose Aguilar Blog","description":"Desarrollo Web con PrestaShop, WordPress, PHP, jQuery y Ajax","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.jose-aguilar.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/e6d485db1e1140866e95971d17105d11","name":"Jose Aguilar","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.jose-aguilar.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/abbfef5f1d75260c549d0f2c2842bb697ba1aadff3b2836b39d2590c8a625415?s=96&d=mm&r=g","caption":"Jose Aguilar"},"description":"Director ejecutivo y tecnol\u00f3gico en JA Modules. Experto programador PrestaShop y Experto programador WordPress.","sameAs":["https:\/\/plus.google.com\/114357189801512615537"],"url":"https:\/\/www.jose-aguilar.com\/blog\/author\/josea902\/"}]}},"_links":{"self":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/posts\/174","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/comments?post=174"}],"version-history":[{"count":0,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/posts\/174\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/media\/177"}],"wp:attachment":[{"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/media?parent=174"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/categories?post=174"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.jose-aguilar.com\/blog\/wp-json\/wp\/v2\/tags?post=174"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}