| Portada | Monotemáticos | Secciones | Desarrolladores | Comunidad | Servicios | Servicios profesionales | RSS | ||||
| ARTICULO: Sesiones en PHP II |
Se muestran 20 comentarios sin revisar
| Diego | 12/6/04 |
| Tengo instalado el easyPHP que es un pakete que te instala y configura todo apache+php+mysql y al probar el ejemplo de sesiones II, la variable no se incrementa. | |
| Arturo | 23/7/04 |
| Para toda la gente que le sigue dando el error de ... Warning: open(/tmp\sess_a9c697dbc408bf5fa9e82fc239ac135d, O_RDWR) failed: No such file or directory (2) in C:\Archivos de programa\Apache Group\Apache2\htdocs\sesion1.php on line 3 Warning: Cannot send session cookie - headers already sent by (output started at C:\Archivos de programa\Apache Group\Apache2\htdocs\sesion1.php:3) in C:\Archivos de programa\Apache Group\Apache2\htdocs\sesion1.php on line 3 Warning: Cannot send session cache limiter - headers already sent (output started at C:\Archivos de programa\Apache Group\Apache2\htdocs\sesion1.php:3) in C:\Archivos de programa\Apache Group\Apache2\htdocs\sesion1.php on line 3 ...aun poniendo al principio del todo el script <?php. En el fichero de configuración PHP.INI, hay una parte que se refiere a las SESSION, e indica que la carpeta temporal para las mismas es /TMP, cuando los que usamos windows no tenemos esa carpeta. Entonces creamos una carpeta (por ejemplo c:\tmp) y cambiamos la configuración... session.save_path = /tmp por session.save_path = c:\tmp un saludo y espero que sirva! |
|
| juan ruben | 10/1/05 |
| continúo aprendiendo, también tengo instalado el easyphp.exe y el ejemplo del contador no corre, pero haciéndole unas modificaciones si, por ejemplo: <? session_start(); $contador = $_SESSION['contador']; ?> <HTML> <HEAD> <TITLE>contador.php</TITLE> </HEAD> <BODY> <? If (isset($contador)==0) {$contador=0;} ++$contador; echo "<a href=\"conta.php\">Has recargado esta página $contador veces</a>"; $_SESSION['contador'] = $contador; ?> </BODY> </HTML> |
|
| alex | 30/7/05 |
| aja..claro si funciona bien ,,,pero el anterior porque no funcionaba alguien puede explicar????? | |
| Felipe | 14/8/05 |
| Tengo una consulta sobre sesiones: como puedo hacer para que en un mismo navegador, cada ventana distinta pertenezca a una sesion distinta. Quiero hacer un sistema de venta, en el que exista la posibilidad de tener en una sesion una venta a medias e iniciar en otra pestaña del navegador otra sesion distinta |
|
| gustavo | 08/12/05 |
| "Notice: Undefined index: contador in c:\wamp\www\contador.php on line 3" me sale este mensaje, hice el script segun el comentario, pero el script anda bien, alguien que me ayude para que no salga ese |
|
| Joel | 07/2/06 |
| El scrip no puede ser visualizado en localhost verdad?, en el ftp no tengo problemas. | |
| Joel | 07/2/06 |
| Despues de haber modificado el archivo ini, y creado la carpeta y insertado el nuevo scrip, el error deja de persistir, pero el contador no avanza. | |
| 08/2/06 | |
| Tengo la ultima actualización del xampp, los scrips lanzados contra un ftp funcionan correctamente, Ya no persiste error alguno, ni espacios en blanco, etiquetas bien puestas, php.ini modificada la ruta tmp y creada la carpeta. Pese a todo eso localhost no me avanza el contador. Es una pesadilla tener que subir en cada cambio al servidor para visualizar :P alguna solución. Gracias | |
| Andrey | 07/4/06 |
| Hola: tengo problemas...al parecer mi configuracion del php no acepta variables de seccion hay un error que me dice no reconocer seccion_star(); y no me deja logear por otra parte tampoco parace que tengo bien configurado el envio y recepcion de varibles ...aveces me deja pasar las variables con los method (post, o Get) y otras veces no PUeden decirme donde configuro esto GRacias |
|
| Andrey | 07/4/06 |
| Hola: tengo problemas...al parecer mi configuracion del php no acepta variables de seccion hay un error que me dice no reconocer seccion_star(); y no me deja logear por otra parte tampoco parace que tengo bien configurado el envio y recepcion de varibles ...aveces me deja pasar las variables con los method (post, o Get) y otras veces no PUeden decirme donde configuro esto GRacias |
|
| Andrey | 07/4/06 |
| Hola: tengo problemas...al parecer mi configuracion del php no acepta variables de seccion hay un error que me dice no reconocer seccion_star(); y no me deja logear por otra parte tampoco parace que tengo bien configurado el envio y recepcion de varibles ...aveces me deja pasar las variables con los method (post, o Get) y otras veces no PUeden decirme donde configuro esto GRacias |
|
| Danyer | 08/11/06 |
| Necesito que alquien me diga como puedo utilizar las variables de session... para esta probleamtica que explicare seguidamente.. Tengo tres paginas .php (todo es orientado a objeto) Usuarios.php que se encarga de almacenar los datos de los usuario (nombre , usser , pass). Gestion.php que me va almacenando objetos de tipo usuario (nombre , usser , pass) con una funcion adicionar que se le pasa como parametro el objeto de tipo usuario. Tiene otra funcion llamada MostrarContenido que me recorre el arreglo y me devuelve una tabla con todos los usuarios que estan el el arreglo Finalmente otra pagina que me permite entrar los datos del usuario. El probelma esta en que : include('Gestion.php'); include('Usuario.php'); $copy_usser = new Usuario($_POST['nombre'] ,$_POST['usuario'],$_POST['password']); //campos del usuario $objeto = new Gestion(); //objeto de Gestion $objeto->Adicionar($copy_usser); $objeto->MostrarContenido(); cunado inicioalizo el objeto ( $objeto = new Gestion(); //objeto de Gestion) a la vez me esta creando el arreglo de nuevo cada vez que cargo la pagina.. por eso necesito almacenar ese objeto en una varieble de session.... Aqui les mando las tres paginas.php para que rebicen y me puedan ayudar... /*******************Usuario***************************** <?php class Usuario { private $nombre; private $usser; private $pass; //---------------------------------------------------------------------------------------------------------------- public function __construct($nombre , $usser,$pass) { $this->nombre = $nombre; $this->usser = $usser; $this->pass = $pass; } //---------------------------------------------------------------------------------------------------------------- public function GetNombre(){return $this->nombre;} //---------------------------------------------------------------------------------------------------------------- public function GetUsser(){return $this->usser;} //---------------------------------------------------------------------------------------------------------------- public function GetPass(){return $this->pass;} //---------------------------------------------------------------------------------------------------------------- public function SetNombre($change){$this->nombre = change;} //---------------------------------------------------------------------------------------------------------------- public function SetUsser($change){$this->usser = change;} //---------------------------------------------------------------------------------------------------------------- public function SetPass($change){$this->pass = change;} //---------------------------------------------------------------------------------------------------------------- //---------------------------------------------------------------------------------------------------------------- } //class ?> /************************************************ /****************Gestion******************************** <?php class Gestion { private $array; //------------------------------------------------------------------------------------------------------------------------- /* public function __construct() { $array = array(); } */ //------------------------------------------------------------------------------------------------------------------------- public function Adicionar($Register) { if(count($this->array) > 0) { for($i = 0 ; $i<count($this->array);$i++) { if($this->array[i]->GetUsser() != $Register->GetUsser()) $this->array[i] = $Register; //adiciono objetos Usuarios }//for } //if else { $this->array[i] = $Register; //adiciono objetos Usuarios } //else } //fuction //------------------------------------------------------------------------------------------------------------------------- public function MostrarContenido() { $longitud = count($this->array); if($longitud == 1) $longitud = 'Vacia'; echo ' <table border="3" align="center"> <tr> <td>Cantidad de Usuarios</td> <td><input type="text"value = '.$longitud.'></td> </tr> </table> '; for($i = 0 ; $i<count($this->array);$i++) { echo ' <table border="3" align="center"> <tr> <td>Usuario</td> <td><input type="text" value = '.$this->array[i]->GetUsser().'></td> </tr> <tr> </table>'; } //for }//fuction //------------------------------------------------------------------------------------------------------------------------- //------------------------------------------------------------------------------------------------------------------------- //------------------------------------------------------------------------------------------------------------------------- } ?> //************************************************ //***************Vista_Gestion********************************* <html> <body> <title>Pagina de Prueba</title> </body> <form action="Vista_Gestion.php" method="POST"> <table border="3" align="center"> <tr> <td>Nombre</td> <td><input type="text" name="nombre"></td> </tr> <tr> <td>Usuario</td> <td><input type="text" name="usuario"></td> </tr> <tr> <td>Password</td> <td><input type="password" name="password"></td> </tr> <tr> <td><input type="submit" value="Adicionar"></td> </tr> </table> </form> </html> <?php include('Gestion.php'); include('Usuario.php'); $copy_usser = new Usuario($_POST['nombre'] ,$_POST['usuario'],$_POST['password']); //campos del usuario $objeto = new Gestion(); //objeto de Gestion $objeto->Adicionar($copy_usser); $objeto->MostrarContenido(); ?> //-------------------------------------------------------------- |
|
| 20/4/07 | |
| En el artículo se cita: Nota: Si en el php.ini se ha definido la variable session.auto_start = 1 se inicializa automáticamente la sesión en cada página que visita un usuario, sin que se tenga que hacer el session_start() Yo me pregunto...¿Es aconsejable definir la variable session auto_start =1 en el php.ini? o ¿está definida a 0 (cero) por seguridad? |
|
| sandra pabon | 20/6/07 |
| mi pregunta es hacerce de las variables de sesion tengo la siguiente instruccion $query_reg='SELECT * FROM cliente WHERE apodo='.$_SESSION['id'].' and clave='.$_SESSION['log']; pero solo sirve si el usuario tiene el apodo y la clave numericos si son de tipo cadena no se puede. como podria usar la misma instrucion pero que sirva para cadenas? gracias |
|
| saul | 20/8/07 |
| sandra, el problema no son las variables de sesion sino la estructura sql. finalizala con ."'"; porque falta en la clave... suerte | |
| Adan | 13/11/07 |
| buenas: Estoy realizando un proyecto pequeño para una materia de la Univ. y al poner en practica estos consejos tenia algunos inconvenientes ahi les va; si les sale el sgte.mensaje de error Warning: session_start() [function.session-start]: open(/tmp\sess_2572c9920df5f7e28f7ed1144add41c8, O_RDWR) failed: No such file or directory (2) in o algo parecido. Yo modifique el php.ini de session.save_path = /tmp a session.save_path = c:\temp (si no esta el folder temp crearlo) y dejo de mostrar ese error!!.Espero les ayude |
|
| Julian Fernando Cuero Palomino | 10/1/08 |
| El codigo estaba bien bueno, claro que tenia un errorcito que ya corregi y solo son slash, ahi va otra vez <? session_start(); ?> <html> <head> <title>Programa que sirve para declarar registros de sesiones</title> </head> <body> <? if (isset($_SESSION[contador])==0) { $_SESSION[contador]=0; } echo "<a href=\"prueba13.php\"> Prueba de contador $_SESSION[contador] </a>"; ++$_SESSION[contador]; ?> </body> </html> |
|
| Francisco | 27/4/08 |
| Gracias por el capitulo. Y garcias a Carlos Gonzalez por el dato ^^. |
|
| Gastón | 29/5/08 |
| Excelente tutorial. Muy bien explicado. Leí varios artículos sobre las sesiones pero ninguno esta tan bien explicado como este. Muchas gracias por compartirlo!! | |
| Ver el articulo y todos sus comentarios | |
| Añadir un comentario del artículo |
|
Comentarios no revisados de: |