elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Problema con php para web con usuer y password.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Problema con php para web con usuer y password.  (Leído 5,115 veces)
Yeshua


Desconectado Desconectado

Mensajes: 373


Continuamente aprendiendo


Ver Perfil
Problema con php para web con usuer y password.
« en: 28 Septiembre 2008, 19:14 pm »

Hola estoy empezandon con php. Tengo algunos conocimientos de html, y tambien hice algun programita con vb.
Tengo una web creada ahora y necesito lo siguiente:

Que cada usuario tenga una contraseña asignada y esto le direccione a su pagina  personal (muy simpre). He leido bastante sobre esto, hacerla con scripts, con bases de datos, o con php. Los scrips no me parece buena idea. Lo de la base de datos, he leido pero no me queda muy calaro, tengo creada una tabla y eso pero estoy algo perdido. Y lo de php es donde estoy metido, espero que se pueda mediante este metodo. Mi web es en .php donde le tengo metido este codigo

Código
  1. <form action="control.php" method="POST">
  2. <table align="center" width="194" cellspacing="2" cellpadding="2" border="0">
  3. <tr>
  4. <td colspan="2" align="center"
  5. <?if ($_GET["errorusuario"]=="si"){?>
  6. bgcolor=red><span style="color:ffffff"><b>Datos incorrectos</b></span>
  7. <?}else{?>
  8. bgcolor=>Introduce tu clave<?}?></td>
  9. </tr>
  10. <tr>
  11. <td width="67" align="right">USER:</td>
  12. <td width="144"><input type="Text" name="usuario" size="8" maxlength="50"></td>
  13. </tr>
  14. <tr>
  15. <td align="right">PASSWD:</td>
  16. <td><input type="password" name="contrasena" size="8" maxlength="50"></td>
  17. </tr>
  18. <tr>
  19. <td colspan="2" align="center"><input type="Submit" value="ENTRAR"></td>
  20. </tr>
  21. </table>
  22. </form>
  23.  

Con el original (este de mas abajo), situado en control.php me direcciona a una sola web con clave, que si me fuinciona a la perfección, lo que pasa es que yo necesito usuarios y páginas personaizadas.

Código
  1. <?
  2. //vemos si el usuario y contraseña es váildo
  3. if ($_POST["usuario"]=="carlosruiz" && $_POST["contrasena"]=="industriales"){
  4.    //usuario y contraseña válidos
  5.    //defino una sesion y guardo datos
  6.    session_start();
  7.    $_SESSION["autentificado"]= "SI";
  8.    header ("Location: asdas.html");
  9. }else {
  10.    //si no existe le mando otra vez a la portada
  11.    header("Location: asdas.php?errorusuario=si");
  12.  
  13. }
  14. ?>
  15.  

Por lo que le he intentado hacer unos arreglillos para conseguir mi proposito, lo que ocurre es que el unico usuario y contraseña que me funciona es el último que pongo. Resultandome si pongo algunos de los primero el error que tengo programado "asdas.php?errorusuario=si".

Código
  1. <?
  2. if ($_POST["usuario"]=="carlos" && $_POST["contrasena"]=="xxxx") {
  3. //usuario y contraseña válidos
  4.    //defino una sesion y guardo datos
  5.    session_start();
  6.    $_SESSION["autentificado"]= "SI";
  7.    header ("Location: 312.html");
  8. }else {
  9.    //si no existe le mando otra vez a la portada
  10.    header("Location: asdas.php?errorusuario=si");
  11. };
  12. if ($_POST["usuario"]=="angel" && $_POST["contrasena"]=="atleti") {
  13. //usuario y contraseña válidos
  14.    //defino una sesion y guardo datos
  15.    session_start();
  16.    $_SESSION["autentificado"]= "SI";
  17.    header ("Location: 233.html");  
  18. }else {
  19.    //si no existe le mando otra vez a la portada
  20.    header("Location: asdas.php?errorusuario=si");
  21. };
  22. if ($_POST["usuario"]=="jluis" && $_POST["contrasena"]=="holaa") {
  23. //usuario y contraseña válidos
  24.    //defino una sesion y guardo datos
  25.    session_start();
  26.    $_SESSION["autentificado"]= "SI";
  27.    header ("Location: 234.html");  
  28. }else {
  29.    //si no existe le mando otra vez a la portada
  30.    header("Location: asdas.php?errorusuario=si");
  31. };
  32. ?>
  33.  

Espero que me duedan orientar sobre este tema. Gracias de antemano.


En línea


WHK
Moderador Global
***
Desconectado Desconectado

Mensajes: 6.589


Sin conocimiento no hay espíritu


Ver Perfil WWW
Re: Problema con php para web con usuer y password.
« Respuesta #1 en: 28 Septiembre 2008, 19:29 pm »

Prueba con esto:
Código
  1. <?php
  2.  
  3. $user = $_POST["usuario"].":".$_POST["contraseña"];
  4.  
  5. switch($user){
  6. case "carlos:xxxx" :
  7.  $_SESSION["autentificado"]= "SI"; break;
  8. case "angel:atleti" :
  9.  $_SESSION["autentificado"]= "SI"; break;
  10. case "jluis:holaa" :
  11.  $_SESSION["autentificado"]= "SI"; break;  
  12. default :
  13.  $_SESSION["autentificado"]= "NO"; break;  
  14. }
  15.  
  16. if($_SESSION["autentificado"] == "SI"){
  17. header ("Location: 312.html");
  18. }else{
  19. header("Location: asdas.php?errorusuario=si");
  20. }
  21.  
  22. ?>

De todas formas te recomiendo no usar la variable "contraseña" debido a la letra "ñ" ya que es un carácter especial y a veces da problemas al momento de programar.


En línea

Yeshua


Desconectado Desconectado

Mensajes: 373


Continuamente aprendiendo


Ver Perfil
Re: Problema con php para web con usuer y password.
« Respuesta #2 en: 28 Septiembre 2008, 19:42 pm »

joo muchas gracias por tu rapidez y eficacia. ahora mismo lo veo.

--

Me acabo de dar cuenta... esto me manda solo a una página 312.html. Esto es lo que hace mi primer codigo pero sin ponerle usuarios y contraseñas distintos, es decir, con el primero lo hago con una contraseña y normbre global.

Yo lo que intento con mi último codigo es que cada usuario tenga una página diferente. No se si me explico. Este código solo reconoce el último de los usuarios por lo que necesito arreglarlo para que funcionen todos.

Gracias.

--

Por favor ayuda con este código, solo necesito esto para publicar la web y darla a conocer.

Código
  1. <?
  2. if ($_POST["usuario"]=="carlos" && $_POST["contraseña"]=="xxxx") {
  3. //usuario y contraseña válidos    
  4. //defino una sesion y guardo datos    
  5.   $_SESSION["autentificado"]= "SI";  
  6.   header ("Location: 312.html");
  7. }else {    
  8. //si no existe le mando otra vez a la portada  
  9.   header("Location: asdas.php?errorusuario=si");
  10. };
  11. if ($_POST["usuario"]=="angel" && $_POST["contraseña"]=="atleti") {
  12. //usuario y contraseña válidos    
  13. //defino una sesion y guardo datos  
  14.  session_start();  
  15.   $_SESSION["autentificado"]= "SI";  
  16.  header ("Location: 233.html");
  17. }else {    
  18. //si no existe le mando otra vez a la portada  
  19.  header("Location: asdas.php?errorusuario=si");
  20. };
  21. if ($_POST["usuario"]=="jluis" && $_POST["contraseña"]=="holaa") {
  22. //usuario y contraseña válidos    
  23. //defino una sesion y guardo datos  
  24.    $_SESSION["autentificado"]= "SI";  
  25.   header ("Location: 234.html");
  26. }else {    
  27. //si no existe le mando otra vez a la portada  
  28.  header("Location: asdas.php?errorusuario=si");
  29. };
  30. ?>
  31.  
« Última modificación: 29 Septiembre 2008, 16:40 pm por Yeshua » En línea


luisag

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: Problema con php para web con usuer y password.
« Respuesta #3 en: 30 Septiembre 2008, 01:35 am »

primero crea formulario
segundo crea base de datos
tercero depues tu codigo

por lo que veo no tiens base de dato y es mejor usar una base datos ya que  es mas seguro y eficaz
En línea

Yeshua


Desconectado Desconectado

Mensajes: 373


Continuamente aprendiendo


Ver Perfil
Re: Problema con php para web con usuer y password.
« Respuesta #4 en: 30 Septiembre 2008, 01:46 am »

Gracias, ahora estoy leyendo sobre esto. La verdad que no me queria meter ahora en base de datos, de momento, ya que me corria prisa y no es tan fácil.
Por lo que intenté hacerla solo mediante página donde se introducen los datos, archivo de control y página privada con seguridad . Ahora como la tengo funciona perfecta, lo que pasa que solo me acepta un user y pass hacia una web privada, tambien lo hice con varios usuarios y contraseñas hacia una sola web privada, pero no encuentro la forma de mandarlos a diferentes páginas privadas personales.
La web es de un club de atletismo por lo que tampoco creo que nadie le interese la zona restringida. jeje.

Saludos

------


TEMA RESUELTO!!!

Esta noche duermo como un tronco jajaja, aquí está las solución:

Una web con usuarios y contraseñas asignados con su propia pagina personal


<?
//vemos si el usuario y contraseña es váildo
if ($_POST["usuario"]=="carlosruiz" && $_POST["contraseña"]=="ssss"){
    //usuario y contraseña válidos
    //defino una sesion y guardo datos
    session_start();
    $_SESSION["autentificado"]= "SI";
    header ("Location: asdas.html");


}else {
    //si no existe le mando otra vez a la portada
    header("Location: asdas.php?errorusuario=si");



if ($_POST["usuario"]=="1111" && $_POST["contraseña"]=="xxxx"){
    //usuario y contraseña válidos
    //defino una sesion y guardo datos
    session_start();
    $_SESSION["autentificado"]= "SI";
    header ("Location: asdas.html");


}else {
    //si no existe le mando otra vez a la portada
    header("Location: asdas.php?errorusuario=si");

if ($_POST["usuario"]=="jesus" && $_POST["contraseña"]=="4444"){
    //usuario y contraseña válidos
    //defino una sesion y guardo datos
    session_start();
    $_SESSION["autentificado"]= "SI";
    header ("Location: asdas.html");


}else {
    //si no existe le mando otra vez a la portada
    header("Location: asdas.php?errorusuario=si");

}

}

}

?>



Espero que esto le sirva también a alguien que estubiese como yo, pues aqui tiene el codigo. Yo por mas que busque no encontre nada para esto.

Saludos
« Última modificación: 30 Septiembre 2008, 02:52 am por Yeshua » En línea


JammDesigner

Desconectado Desconectado

Mensajes: 62



Ver Perfil WWW
Re: Problema con php para web con usuer y password.
« Respuesta #5 en: 3 Octubre 2008, 12:11 pm »

Gracias, ahora estoy leyendo sobre esto. La verdad que no me queria meter ahora en base de datos, de momento, ya que me corria prisa y no es tan fácil.
Por lo que intenté hacerla solo mediante página donde se introducen los datos, archivo de control y página privada con seguridad . Ahora como la tengo funciona perfecta, lo que pasa que solo me acepta un user y pass hacia una web privada, tambien lo hice con varios usuarios y contraseñas hacia una sola web privada, pero no encuentro la forma de mandarlos a diferentes páginas privadas personales.
La web es de un club de atletismo por lo que tampoco creo que nadie le interese la zona restringida. jeje.

Saludos

------


TEMA RESUELTO!!!

Esta noche duermo como un tronco jajaja, aquí está las solución:

Una web con usuarios y contraseñas asignados con su propia pagina personal


<?
//vemos si el usuario y contraseña es váildo
if ($_POST["usuario"]=="carlosruiz" && $_POST["contraseña"]=="ssss"){
    //usuario y contraseña válidos
    //defino una sesion y guardo datos
    session_start();
    $_SESSION["autentificado"]= "SI";
    header ("Location: asdas.html");


}else {
    //si no existe le mando otra vez a la portada
    header("Location: asdas.php?errorusuario=si");



if ($_POST["usuario"]=="1111" && $_POST["contraseña"]=="xxxx"){
    //usuario y contraseña válidos
    //defino una sesion y guardo datos
    session_start();
    $_SESSION["autentificado"]= "SI";
    header ("Location: asdas.html");


}else {
    //si no existe le mando otra vez a la portada
    header("Location: asdas.php?errorusuario=si");

if ($_POST["usuario"]=="jesus" && $_POST["contraseña"]=="4444"){
    //usuario y contraseña válidos
    //defino una sesion y guardo datos
    session_start();
    $_SESSION["autentificado"]= "SI";
    header ("Location: asdas.html");


}else {
    //si no existe le mando otra vez a la portada
    header("Location: asdas.php?errorusuario=si");

}

}

}

?>



Espero que esto le sirva también a alguien que estubiese como yo, pues aqui tiene el codigo. Yo por mas que busque no encontre nada para esto.

Saludos
Hola una cosilla, yo necesito algo asi...
Pero tengo una duda ¿si pongo la URL directa de la pagina HTML donde me REDIRECCIONA me deja entrar o me OBLIGA  a meter las claves?
En línea

"Empty Your Mind Be Forms Shapples, Like Water, You Put Water Into A Bottle And Becomes The Bottle, You Put In A Teapot And Becomes The Teapot, Water Can Flow Or It Can Crash, Be Water My Friend"
Yeshua


Desconectado Desconectado

Mensajes: 373


Continuamente aprendiendo


Ver Perfil
Re: Problema con php para web con usuer y password.
« Respuesta #6 en: 3 Octubre 2008, 13:15 pm »

Hola, primero he de decirte que con html no se puede hacer. Respecto a lo de poner la pagina directamente en el buscador, no, no se puede, te obliga a pasar necesariamente por la página de ingreso como medida de seguridad. Dos temas mas abajo de esté aparece un tutorial que yo hice con todo explicado

http://foro.elhacker.net/php/tutorial_crear_area_restringida_con_php_en_nuestra_web-t229893.0.html

Saludos y Suerte.
En línea


JammDesigner

Desconectado Desconectado

Mensajes: 62



Ver Perfil WWW
Re: Problema con php para web con usuer y password.
« Respuesta #7 en: 3 Octubre 2008, 14:34 pm »

Hola, primero he de decirte que con html no se puede hacer. Respecto a lo de poner la pagina directamente en el buscador, no, no se puede, te obliga a pasar necesariamente por la página de ingreso como medida de seguridad. Dos temas mas abajo de esté aparece un tutorial que yo hice con todo explicado

http://foro.elhacker.net/php/tutorial_crear_area_restringida_con_php_en_nuestra_web-t229893.0.html

Saludos y Suerte.
Lo vi tu tema pero este código no me funciona:

<?php 
if(!($_SERVER["HTTP_REFERER"]==" ingreso.php")){ 
echo 
"No puedes entrar, debes registrarte"
exit(); 
}
?>

Lo pongo en las paginas HTML donde me envía cuando pongo las claves pero puedo acceder si escribo la URL completa
En línea

"Empty Your Mind Be Forms Shapples, Like Water, You Put Water Into A Bottle And Becomes The Bottle, You Put In A Teapot And Becomes The Teapot, Water Can Flow Or It Can Crash, Be Water My Friend"
Yeshua


Desconectado Desconectado

Mensajes: 373


Continuamente aprendiendo


Ver Perfil
Re: Problema con php para web con usuer y password.
« Respuesta #8 en: 3 Octubre 2008, 15:51 pm »

Si lo pones en páginas html claro qe no te va a funcionar, ese código es php. Por lo que cambiale la extrensio y ya debe de ir.
En línea


alone-in-the-chat


Desconectado Desconectado

Mensajes: 587


Ver Perfil
Re: Problema con php para web con usuer y password.
« Respuesta #9 en: 3 Octubre 2008, 17:22 pm »

Si lo pones en páginas html claro qe no te va a funcionar, ese código es php. Por lo que cambiale la extrensio y ya debe de ir.


Si colocas en el archivo .htaccess estas lineas , si que las paginas con extension html interpretarian ese codigo.

Código
  1. AddHandler application/x-httpd-php5 .php .htm .html
  2.  

Por otro lado confiar en la variable $_SERVER["HTTP_REFERER"] no es muy seguro ese valor puede ser falseado facilmente.


http://www.php.net/manual/es/function.curl-setopt.php
Código
  1. CURLOPT_REFERER   El contenido de la cabecera "Referer: " empleada en la peticion HTTP.
  2.  


Saludos¡¡
En línea

Because maybe
You're gonna be the one that saves me
And after all
You're my wonderwall
d[n_n]b
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines