PHP - simultación de usuario en una web dinamica

 
Vista:
sin imagen de perfil

simultación de usuario en una web dinamica

Publicado por Jacarvy (4 intervenciones) el 21/05/2021 16:49:47
Estos son los codigos que estoy usando para el index, registro y login

INDEX.PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
session_start();
 
if($_SESSION['login']!="ok"){ //si la variable de sesion login es diferente a "ok"
 
 header("Location: login.php"); //redirgimos al login.php
 
}else{ //si la variable es igual a "ok" mostramos el contenido..
?>
 
<html>
<head>
<title>Inicio</title>
</head>
<body bgcolor="#000000" text="#FFFFFF">
<p align="right">Bienvenido <b><?php echo $_SESSION['usuario']; ?></b> | <a href="login.php?action=logout">Cerrar Sesion</a></p><hr><br>
<center>
<h1>Bienvenidos a  calidad en HD</h1>
 
<center><iframe height="50%"  src="http://amex/tv.php" width="80%">
</iframe></center>
</body>
</html>
<?php
}
?>


REGISTRAR.PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
<?php
 
//sistema de des/encriptacion por HckDrk, Zone-Hack.Net
function des_encriptacion_zh($action,$cadena){ //primer parametro, encriptacion o desencriptacion. el segundo es la cadena a encriptar o desencriptar
 
 if($action=="encriptacion"){
 
  $valor=file_get_contents("http://tools.zone-hack.net/Apis/Encriptacion/index.php?action=$action&cadena=$cadena");
  $valor=html_entity_decode($valor);
 
 }else if($action=="desencriptacion"){
 
  $valor=file_get_contents("http://tools.zone-hack.net/Apis/Encriptacion/index.php?action=$action&cadena=$cadena");
  $valor=html_entity_decode($valor);
 
 }else{
 
  exit("Error en la funcion </i>des_encriptacion_zh<i>, en el primer parametro solo se premite introducir \"encriptacion\" o \"desencriptacion\" ");
 
 }
 
return $valor;
 
}
 
if($_POST['action']=="enviar"){ //si mandamos el formulario...
 
 if($_POST['usuario']=="" || $_POST['email']=="" || $_POST['pregunta']=="" || $_POST['r_secreta']=="" || $_POST['pass']=="" || $_POST['pass2']==""){ //si los campos estan vacios
 
  echo"<script>alert('debe rellerar todos los campos')</script>"; //mostramos error
 
 }else{ //sino estan vacios...
 
  if($_POST['pass']!=$_POST['pass2']){ //si los password no coinciden
  echo "<script>alert('los password no coinciden!')</script>"; //mostramos mensaje de error
  }else{ //si coinciden..
 
  if(!file_exists("./users/".$_POST['usuario'])){ //si no existe el usuario..
 
   mkdir("users/".$_POST['usuario'], 0777) or die("no se pudo crear el usuario "); //creamos una carpeta
   $fp=fopen("users/".$_POST['usuario']."/datos.php","w+") or die("no se pudo crear el usuarioo"); //creamos el archivo datos.php donde se guardara su user y su pass
   fputs($fp,"<?php\n");
   fputs($fp,"\$email=\"".strip_tags($_POST['email'])."\";\n"); //eliminamos etiquetas html, y guardamos el correo
   fputs($fp,"\$pregunta=\"".strip_tags($_POST['pregunta'])."\";\n"); //eliminamos etiquetas html, y guardamos la pregunta para cambiar pass
   fputs($fp,"\$r_secreta=\"".strip_tags($_POST['r_secreta'])."\";\n"); //eliminamos etiquetas html, y guardamos el user
   fputs($fp,"\$user=\"".strip_tags($_POST['usuario'])."\";\n"); //eliminamos etiquetas html, y guardamos el user
   fputs($fp,"\$pass=\"".des_encriptacion_zh("encriptacion",strip_tags($_POST['pass']))."\";\n"); //eliminamos etiquetas html, encriptamos con nuestro propio sistema de encriptamiento y guardamos el pass
   fputs($fp,"?>\n");
   echo "<script>alert('registro completo!')</script>"; //mostramos que todo salio bien
   echo "<meta http-equiv=\"refresh\" content=\"0;url=login.php\">";
 
 
  }else{ //si ya existe el usuario
   echo "<script>alert('ya existe el usuario ".$_POST['usuario']."')</script>"; //mostramos que ya existe el usuario
  }
  }
 }
}
?>
 
<html>
<head>
<title>Registro</title>
</head>
 
<body bgcolor="black" text="white" link="red" vlink="red" alink="black">
 
 
<br>
<?php
 
if($_SESSION['login']!="ok"){ //si la variable de sesion es diferente a ok entonces mostraremos el formulario de registro
 
?>
<center>
<h1>Registro de Usuarios</h1>
<table border="0" align="center">
<form method="post" action="registrarloginusuario.php">
<tr><td>Usuario: </td><td><input type="text" name="usuario"></td></tr>
<tr><td>E-mail: </td><td><input type="text" name="email"></td></tr>
<tr><td>Password: </td><td><input type="password" name="pass"></td></tr>
<tr><td>Repita el Pass: </td><td><input type="password" name="pass2"></td></tr>
<tr><td>Pregunta Seguridad: (<a href="javascript:alert('se te preguntara esta pregunta y su respuesta en caso de que olvides tu password')">?</a>)</td><td><select name="pregunta"><option value="">Selecciona una Pregunta</option><option value="mascota favorita">Mi Mascota Favorita</option><option value="mejor amigo">Tu Mejor Amigo</option><option value="pelicula favorita">Pelicula Favorita</option></select></td></tr>
<tr><td>Respuesta Secreta: </td><td><input type="text" name="r_secreta"></td></tr>
<input type="hidden" name="action" value="enviar">
<tr><td colspan="2"><center><input type="submit" value="Registrarse!"></center></td></tr>
<tr><td colspan="2"><center><a href="login.php"> </a></center></td></tr>
</form>
</table>
<?php
}else{ //si la varieble de sesion es igual a ok entonces redirigimos al index
 
header("Location: index.php");
 
}
?>
</body>
</html>


LOGIN.PHP

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
<?php
session_start();
 
//sistema de des/encriptacion por HckDrk, Zone-Hack.Net
function des_encriptacion_zh($action,$cadena){ //primer parametro, encriptacion o desencriptacion. el segundo es la cadena a encriptar o desencriptar
 
 if($action=="encriptacion"){
 
  $valor=file_get_contents("http://tools.zone-hack.net/Apis/Encriptacion/index.php?action=$action&cadena=$cadena");
  $valor=html_entity_decode($valor);
 
 }else if($action=="desencriptacion"){
 
  $valor=file_get_contents("http://tools.zone-hack.net/Apis/Encriptacion/index.php?action=$action&cadena=$cadena");
  $valor=html_entity_decode($valor);
 
 }else{
 
  exit("Error en la funcion </i>des_encriptacion_zh<i>, en el primer parametro solo se premite introducir \"encriptacion\" o \"desencriptacion\" ");
 
 }
 
return $valor;
 
}
 
if($_SESSION['login']=="ok"){ //si la variable de sesion login es igual a "ok"
 
 if($_GET['action']=="logout"){ //si el action obtenido de la ur es igual a logout destruimos las sessiones
  Session_destroy();
  header("Location: index.php");
  exit();
 }else{ //sino es ninguna accion redirigimos al index
 
 header("Location: index.php");
 exit();
 }
 
}else{ //sino es igual a ok
 
if($_GET['action']=="remember"){ //si el action tomado del url es igual a remember
 
 
 if($_POST['remember']=="enviar"){ //si enviamos el formulario de recordar pass
  if($_POST['usuario']=="" || $_POST['email']=="" || $_POST['pregunta']=="" || $_POST['r_secreta']==""){ //si los campos estan vacios..
   echo "<script>alert('debe rellenar todos los campos')</script>"; //mostramos mensaje de error
   echo "<meta http-equiv=\"refresh\" content=\"0;url=login.php?action=remember\">"; //y redirigimos de nuevo al formulario
  }else{  //si los campos no estan vacios
   if(file_exists("./users/".$_POST['usuario'])){ //si existe el usuario
    include("./users/".$_POST['usuario']."/datos.php"); //incluimos los datos
     if($email==$_POST['email']){ //si el email del login coincide con el del registro
      if($pregunta==$_POST['pregunta'] && $r_secreta==$_POST['r_secreta']){ //si la pregunta de seguridad y el email coinciden con los del registro
       $encabezados = "From: admin@dominio.com\nReply-To: admin@dominio.com\nContent-Type: text/html; charset=iso-8859-1";
       $mensaje= "tu usuario es: ".$_POST['usuario']."<br><br>Tu password es: ".des_encriptacion_zh("desencriptacion",$pass);
       if(mail($_POST['email'], "has solicitado tu password",$mensaje, $encabezados)){ //mandamos el email con los datos
        echo "<script>alert('tu pass ha sido enviado a tu correo')</script>";
       }else{ //sino se pudo mandar el email
        echo "<script>alert('tu password es: ".des_encriptacion_zh("desencriptacion",$pass)."')</script>"; //mostramos el password
        echo "<meta http-equiv=\"refresh\" content=\"0;url=index.php\">"; //redirigimos al index
       }
      }else{ //si la pregunta o respuesta secreta no coindicen con los del registro...
       echo "<script>alert('la pregunta o respuesta secreta no coinciden con la pregunta o respuesta del registro')</script>"; //mostramos error
       echo "<meta http-equiv=\"refresh\" content=\"0;url=login.php?action=remember\">"; //redirigimos al formulario
      }
     }else{ //si el email no coindide con el del registro
      echo"<script>alert('el email no coincide con el del registro')</script>"; //mostramos error
      echo "<meta http-equiv=\"refresh\" content=\"0;url=login.php?action=remember\">"; //redirigimos al formulario
     }
 
   }else{ //si el usuario no existe..
    echo"<script>alert('el usuario no existe!')</script>"; //mostramos error
    echo "<meta http-equiv=\"refresh\" content=\"0;url=login.php?action=remember\">"; //redirigimos al formulario
   }
  }
 }else{ //sino se ha enviado el formulario de recordar pass mostramos el formulario..
?>
<html>
<head>
<title>Remeber Password</title>
</head>
<body bgcolor="#000000" text="#FFFFFF">
<center>
<h1>Olvido de Password</h1>
<table border="0" align="center">
<form method="post" action="login.php?action=remember">
<tr><td>usuario: </td><td><input type="text" name="usuario"></td></tr>
<tr><td>E-mail: </td><td><input type="text" name="email"></td></tr>
<tr><td>pregunta seguridad: (<a href="javascript:alert('la pregunta que elegiste cuando te registraste')">?</a>)</td><td><select name="pregunta"><option value="">selecciona una pregunta</option><option value="mascota favorita">mascota favorita</option><option value="mejor amigo">mejor amigo</option><option value="pelicula favorita">pelicula favorita</option></select></td></tr>
<tr><td>respuesta secreta: </td><td><input type="text" name="r_secreta"></td></tr>
<input type="hidden" name="remember" value="enviar">
<tr><td colspan="2"><center><input type="submit" value="Obtener Password"></center></td></tr>
<tr><td colspan="2"><center><a href="login.php">Iniciar Sesion</a></center></td></tr>
</form>
</table>
</body>
</html>
<?php
 }
}else{ //si el action obtenido de la url no es remember
 
 
if($_POST['action']=="enviar"){ //si enviamos el formulario del login
 
 if($_POST['usuario']=="" || $_POST['pass']==""){ //si los campos estan vacios
  echo"<script>alert('debe introducir todos los datos!')</script>"; //mostramos error
 }else{ //sino estan vacios
 
 if(file_exists("./users/".$_POST['usuario'])){ //si existe el usuario
  include("./users/".$_POST['usuario']."/datos.php"); //incluimos los datos
   if($pass==des_encriptacion_zh("encriptacion",$_POST['pass'])){ //si el pass del login coincide con el del rgistro
    $_SESSION['usuario']=strip_tags($_POST['usuario']); //creamos una variable de sesion con el nombre del usuario
    $_SESSION['login']="ok"; //creamos la variable de sesion login con el valor de ok
    header("Location: index.php"); //redirigimos al index
   }else{ //si no coinciden los pass
    echo"<script>alert('los datos son incorrectos!')</script>"; //mostramos que no son correctos los datos
   }
 
 }else{ //sino existe el usuario
  echo "<script>alert('el usuario no existe!')</script>"; //mostramos que no existe el usuario
 }
 
 }
 
}
 
}
 
}
if($_GET['action']!="remember"){ //si action obtenido de la url es diferente a remember mostramos el formulario de login
?>
 
<html>
<head>
<title>Login</title>
</head>
 
<body bgcolor="black" text="white" link="red" vlink="red" alink="black">
 
<center>
<h1>Login de Usuarios</h1>
<table border="0" align="center">
<form method="post" action="">
<tr><td>Usuario:</td><td><input type="text" name="usuario"></td></tr>
<tr><td>Clave:</td><td><input type="password" name="pass"></td></tr>
<input type="hidden" name="action" value="enviar">
<tr><td colspan="2"><center><input type="submit" value="Enviar"></center></td></tr>
</form>
<tr><td><center><a href="login.php"> </a></td><td><center><a href="login.php?action=remember"> </a></td></tr>
</table>
</body>
</html>
<?php
}
?>

Todos los Usuar ios registrados van a una carpeta llamada USERS donde se detallan a través del archivo datos.php

PARA SER MAS ENTENDIBLE COMO SERIA EL FICHERO A COLOCAR POR EJEMPLO AL USUARIO JACARVY...

Gracias Por sus buenas Repuestas
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

simultación de usuario en una web dinamica

Publicado por Jacarvy (4 intervenciones) el 24/05/2021 17:41:12
Para el bloqueo no estoy colocando nada xq no se que colocar, al crear el usuario se registra en una carpeta llamada USERS/datos.php dentro de esta carpeta se agrega el usuario con toda la informacion

Ejemplo:
Voy a crear al usuario Juan al registrarse lo ubico en la carpeta USERS/Juan dentro de la carpeta Juan se crear toda la informacion pedida en el formulario entonces queda todo guardado en USERS/Juan/datos.php ese es el fichero donde se ejecuta el llamado de ingreso, en los ejemplos colocado puedes detallar...

Gracias siempre atento a cualquier repuesta de ayuda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar