Foros del Web » Programando para Internet » PHP »

Uso de sesiones php html

Estas en el tema de Uso de sesiones php html en el foro de PHP en Foros del Web. Buena tarde, tengo un problema inmenso con este tema, y es que, si bien cree las sesiónes con el fin de que no se pueda ...
  #1 (permalink)  
Antiguo 05/05/2016, 10:38
 
Fecha de Ingreso: mayo-2016
Ubicación: Bogota
Mensajes: 4
Antigüedad: 7 años, 11 meses
Puntos: 0
Uso de sesiones php html

Buena tarde, tengo un problema inmenso con este tema, y es que, si bien cree las sesiónes con el fin de que no se pueda acceder a ningun otro html o modulo sin estar logueado, Pues sin estar logueado se puede acceder.



<?php
session_start();
?>


<?php
if(!isset($_SESSION["session_username"])) {
header("location:index.php");
} else {
?>


AQUÍ VA EL HTML



<?php
}
?>

Este es el código que le tengo a las paginas que no pueden ser accedidas...

Pero sin estar logueado, el usuario puede escribir la dirección en el navegador e ingresa.

Alguna ayuda ??? :(
  #2 (permalink)  
Antiguo 05/05/2016, 11:03
Avatar de herzbazi  
Fecha de Ingreso: febrero-2012
Mensajes: 612
Antigüedad: 12 años, 2 meses
Puntos: 36
Respuesta: Uso de sesiones php html

amigo yo en lo personal lo haría así

creo un archivo llamado conexion.php

en este archivo coloco la conexión a la db asi.

Código PHP:
Ver original
  1. <?php
  2. $conexion=mysql_connect("localhost","root","");
  3. mysql_query("SET NAMES 'utf8'");
  4. mysql_select_db("mi_base_db");
  5. ?>

luego en cada una de las paginas que quiero restringir lo pondría así.

paginarestringida.php

Código PHP:
Ver original
  1. <?php
  2. require_once('conexion.php');   // ruta de conexion
  3. if(isset($_SESSION['usuario'])){
  4. ?>
  5. aqui va el contenido de la web cuando estas logueado en html
  6. <?php
  7. }else{
  8.  ?>
  9. aquí va lo que quieras poner a la hora que no loguee en html
  10. <?php
  11. }
  12. ?>

si te sirve me cuentas ok

nos vemos
__________________
Enseña todo lo que sepas...
Aprende todo lo que puedas..
  #3 (permalink)  
Antiguo 05/05/2016, 11:26
 
Fecha de Ingreso: mayo-2016
Ubicación: Bogota
Mensajes: 4
Antigüedad: 7 años, 11 meses
Puntos: 0
Respuesta: Uso de sesiones php html

Hola amigo, Ya lo hice, Pero de igual manera, Puedo seguir accediendo a cualquier pagina si no esta logueado, y quisiera que si no esta logueado, no lo deje pasar del login. :/
  #4 (permalink)  
Antiguo 05/05/2016, 11:42
Avatar de herzbazi  
Fecha de Ingreso: febrero-2012
Mensajes: 612
Antigüedad: 12 años, 2 meses
Puntos: 36
Respuesta: Uso de sesiones php html

te mande un privado miralo
__________________
Enseña todo lo que sepas...
Aprende todo lo que puedas..
  #5 (permalink)  
Antiguo 06/05/2016, 01:25
 
Fecha de Ingreso: mayo-2013
Mensajes: 169
Antigüedad: 10 años, 10 meses
Puntos: 25
Respuesta: Uso de sesiones php html

Asegurate de lo siguiente:
Tus archivos con contenido PHP, deben tener la extensión .php, y no .html. (Para que se ejecute PHP).

Si los tuvieras bien, con nombreArchivo.php cada fichero. Entonces, al principio de cada archivo pon:
Código PHP:
<?php
error_reporting
(E_ALL);
?>
Asi te muestre cualquier error PHP que este dando.

Si no saltase ningún error, aun así, comprueba que PHP se este ejecutando. Crea un fichero php aparte con este contenido:
Código PHP:
<?php
echo "Hola mundo";
Y lo ejecutas, si no aparece únicamente Hola Mundo, el PHP no se está ejecutando.

En tal caso comprueba que en tu navegador estas accediendo vía por ejemplo:
http://tu-dirección/tu-archivo.php

Si no es así y estas accediendo de la siguiente forma:
file:///C:/Users/usuario/tu-archivo.php

Entoces ese es el problema. Parece una tonteria pero muchas veces, no te das cuena que estas accediendo al archivo directamente, y no desde apache.

Eso es todo lo que se me ocurre que te pueda pasar.

Un saludo.
  #6 (permalink)  
Antiguo 06/05/2016, 03:43
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 10 meses
Puntos: 263
Respuesta: Uso de sesiones php html

el problema es que no estas validando ninguna variable clave para el asunto, por ejemplo, con solo poner session_start() no funciona, tienes que validar algo:
Código PHP:
Ver original
  1.  
  2. if(!isset($_SESSION['logged']) || $_SESSION['logged'] == "" || $_SESSION['logged'] == false){
  3. header('location:error.php');
  4. };

en ese ejemplo, si accedo directamente al archivo sin antes haberme logeado, el sistema me redireccionara a la pagina error.php o a la que quieras para indicarme que debo logearme primero o indicarme el error que quiera
__________________
[email protected]
HITCEL
  #7 (permalink)  
Antiguo 06/05/2016, 09:08
Avatar de angelAparicio  
Fecha de Ingreso: julio-2009
Ubicación: Sevilla
Mensajes: 307
Antigüedad: 14 años, 9 meses
Puntos: 22
Respuesta: Uso de sesiones php html

Hola, pues en principio tu código parece correcto. Dos cosas.

1. Quita las líneas en blanco antes del redirect. Un redirect no funciona si antes has escrito algo que no sea PHP. Debería ir así:

Código PHP:
Ver original
  1. <?php
  2. if(!isset($_SESSION["session_username"])) {
  3. header("location:index.php");
  4. } else {
  5. ?>
  6.  
  7.  
  8. AQUÍ VA EL HTML
  9.  
  10.  
  11.  
  12. <?php
  13. }
  14. ?>

2. ¿Es posible que ya hubieras accedido a la sesión? Prueba desde una sesión privada del navegador.
__________________
Mis webs:
- Programador Web Autónomo
- Conciertos en Sevilla

Etiquetas: sessions
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:46.