Foros del Web » Programando para Internet » PHP »

Usuario con passwords en mi web

Estas en el tema de Usuario con passwords en mi web en el foro de PHP en Foros del Web. Hola, Tengo mi web site en un hosting que permite usar php, me gustaria saber como hago para que personas que yo quiera puedan ver ...
  #1 (permalink)  
Antiguo 24/11/2004, 13:15
 
Fecha de Ingreso: abril-2003
Mensajes: 139
Antigüedad: 14 años, 8 meses
Puntos: 0
Usuario con passwords en mi web

Hola,

Tengo mi web site en un hosting que permite usar php, me gustaria saber como hago para que personas que yo quiera puedan ver informacion exclusiva para ellos, o sea, con nombre de usuario y password para ellos, como lo puedo hacer?.

Habra por ahi algun template o algo para empezar de ahi?, ayudenme por favor.

Gracias
  #2 (permalink)  
Antiguo 24/11/2004, 19:48
 
Fecha de Ingreso: abril-2003
Mensajes: 139
Antigüedad: 14 años, 8 meses
Puntos: 0
Esto es lo que quiero, pero en php, sencillo y al grano, alguien sabe donde y como?

http://www.jmcweb.org/asp01.asp
  #3 (permalink)  
Antiguo 24/11/2004, 20:02
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 13 años
Puntos: 34
Te traduzco eso. El formulario (ahora llamado formulariotres.php) queda igual, lo unico que el action del mismo debe apuntar a este archivo y no al asp, el php (formulariocuatro.php ) seria este:
Código PHP:
<?php
#si las dos expresiones no son verdaderas el metodo redirect nos envia al fichero formulariotres.php
$usr =isset($_POST["strLogin"])?$_POST["strLogin"]:'';
$pass =isset($_POST["strPassword"])?$_POST["strPassword"]:'';
if(
$usr!="pedro" && $pass !="1234"){
echo 
"<script>window.location ='formulariotres.php'</script>";
exit;
}
?> 
<html> 
<head> 
<title>Ejemplo de PHP</title> 
</head> 
<body> 
Bienvenido a esta web
</body> 
</html>
__________________
Mi punto de partida es Que Bueno Lo Nuevo

Última edición por nicolaspar; 24/11/2004 a las 20:03
  #4 (permalink)  
Antiguo 24/11/2004, 20:15
 
Fecha de Ingreso: julio-2004
Mensajes: 64
Antigüedad: 13 años, 5 meses
Puntos: 0
Hola,

No quiero complicarte con mi respuesta por el contrario, pero te digo algunas cosas importantes:

1) Necesitas una tabla en MySql o un archivo que puedas asignar el usuario y clave, es mejor una Base de Datos pq la puedes administrar mejor.
2) Necesitas un formulario y despues que haces el submit pase los datos a un programa. De preferencia en POST para evitar pasarlos por pantalla.
3) El programa debe de validar si ha ingresado usuario y clave, si el usuario existe y si la clave es correcta.
4) Debes de validar en cada una de las paginas siguientes despues que haces el redireccionamiento que las variables de sesion esten inicializadas, esto es muy util pq asi no podran ver las paginas alguien sin haber iniciado una sesion.
  #5 (permalink)  
Antiguo 25/11/2004, 10:43
 
Fecha de Ingreso: abril-2003
Mensajes: 139
Antigüedad: 14 años, 8 meses
Puntos: 0
una pregunta nicolaspar.

Haciendo lo que me has dicho esta bueno, funciona...pero mi pregunta ahora como hago eso para darle nombres de usuario y passwors a varias personas y no solo a una.

Gracias, espero que me puedas responder pronto o quien sea que lo sepa
  #6 (permalink)  
Antiguo 25/11/2004, 10:57
Avatar de lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 16 años, 4 meses
Puntos: 9
Necesitas crear una web para registrar a los usuarios, ya sea que lo hagas tu o los propios usuarios. Si los mregistras tu, necesitas que esa url no esté apta para que lo vean todos.

Checa bien: http://www.maestrosdelweb.com/editorial/phpreusr/
  #7 (permalink)  
Antiguo 25/11/2004, 11:10
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 13 años
Puntos: 34
Bueno, vos me pediste eso, eso ni siquiera te mantiene la comprovacion entre paginas. Si queres dar mas user y pass lo correcto es usar una base de datos, hacer un abm para estos, y usar variables de sessiones como menciono rlinaresp. Sino tenes dos soluciones. La primera es crear un vector con los nombres de los usuarios, y usar in_array() para verificar si esta correcto. Lo unico que esto compartiria el mismo password.
La otra es hacer un vector asociativo y comprobarlo:
Código PHP:
<?
$usr 
=isset($_POST["strLogin"])?$_POST["strLogin"]:''
$pass =isset($_POST["strPassword"])?$_POST["strPassword"]:''
$fuera 1;
//Aca pone todas las claves y usuarios que quieras
$vec = array(
            
"ususario1"=>"pass1",
            
"usuario2"=>"pass2",
            
"usuario3"=>"pass3",
            );


foreach(
$vec as $clave => $valor){
    if(
$user==$clave && $pass==$valor){
        
$fuera 0;
    }
}
 
//Si fuera es 1 no entra:
if($fuera==1){ 
echo 
"<script>window.location ='formulariotres.php'</script>"
exit; 

?>
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #8 (permalink)  
Antiguo 25/11/2004, 11:15
Avatar de lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 16 años, 4 meses
Puntos: 9
nicolaspar, es correcta tu afirmación, pero lo mas recomendable es usar una base de datos, ya sea por MySQL o Acces, en el manual oficial de PHP se encuentra mucha documentación al respecto.

http://www.php.net/manual
  #9 (permalink)  
Antiguo 26/11/2004, 08:34
 
Fecha de Ingreso: abril-2003
Mensajes: 139
Antigüedad: 14 años, 8 meses
Puntos: 0
Nicolaspar estaba probando con el codigo que me diste y no me funciona, cuando lo hago con el de primeras:

<?php
#si las dos expresiones no son verdaderas el metodo redirect nos envia al fichero formulariotres.php
$usr =isset($_POST["strLogin"])?$_POST["strLogin"]:'';
$pass =isset($_POST["strPassword"])?$_POST["strPassword"]:'';
if($usr!="pedro" && $pass !="1234"){
echo "<script>window.location ='formulariotres.php'</script>";
exit;
}
?>

ese va bien pero el tuyo ahora donde pone usuario1 como user name y pass1 lo pongo en mi web y no pasa nada no entra como en el primero. Que sera lo que esta mal?, saludos y gracias por tu tiempo
  #10 (permalink)  
Antiguo 26/11/2004, 11:31
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 13 años
Puntos: 34
Un error mio, fijate que en laprimer linea dice:
$usr =isset($_POST["strLogin"])?$_POST["strLogin"]:'';

Y la var es $user, por lo que seria:
$user =isset($_POST["strLogin"])?$_POST["strLogin"]:'';
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #11 (permalink)  
Antiguo 26/11/2004, 12:46
 
Fecha de Ingreso: abril-2003
Mensajes: 139
Antigüedad: 14 años, 8 meses
Puntos: 0
Muchas gracias nicolaspar, perdona por el tiempo que te estoy robando pero...mi ultima pregunta seria, ahora que todo funciona, como hago por ejemplo que "usuario1" vaya a una pagina que yo quiera para el, pero que "usuario2" vaya a otra diferente asignada para el y asi sucesivamente.

Muchas gracias
  #12 (permalink)  
Antiguo 26/11/2004, 20:46
 
Fecha de Ingreso: abril-2003
Mensajes: 139
Antigüedad: 14 años, 8 meses
Puntos: 0
alguien sabe la respuestas?, es que me urge por favor
  #13 (permalink)  
Antiguo 27/11/2004, 18:58
 
Fecha de Ingreso: noviembre-2004
Ubicación: NULL
Mensajes: 555
Antigüedad: 13 años
Puntos: 4
Cita:
Iniciado por lado2mx
Necesitas crear una web para registrar a los usuarios, ya sea que lo hagas tu o los propios usuarios. Si los mregistras tu, necesitas que esa url no esté apta para que lo vean todos.

Checa bien: http://www.maestrosdelweb.com/editorial/phpreusr/

Hola yo baje eso y no pasa nada no funciona sale muchos errores, de donde descargo uno bueno para que los usuarios se registren en mi web por favor
  #14 (permalink)  
Antiguo 27/11/2004, 20:00
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 13 años
Puntos: 34
Cita:
Iniciado por luisote
Muchas gracias nicolaspar, perdona por el tiempo que te estoy robando pero...mi ultima pregunta seria, ahora que todo funciona, como hago por ejemplo que "usuario1" vaya a una pagina que yo quiera para el, pero que "usuario2" vaya a otra diferente asignada para el y asi sucesivamente.

Muchas gracias
Es que si vos redirigis a usario1 a la pagina usuario1.php, deberas valiar esta pagina tambien, para que no entren a manopla.
La solucion "rapida" que se me ocurre es hacer un switch, siguiendo el ejemplo seria algo asi:

Código PHP:
<? 
$user 
=isset($_POST["strLogin"])?$_POST["strLogin"]:''
$pass =isset($_POST["strPassword"])?$_POST["strPassword"]:''
$fuera 1
//Aca pone todas las claves y usuarios que quieras 
$vec = array( 
            
"ususario1"=>"pass1"
            
"usuario2"=>"pass2"
            
"usuario3"=>"pass3"
            ); 


foreach(
$vec as $clave => $valor){ 
    if(
$user==$clave && $pass==$valor){ 
        
$fuera 0
    } 

//Si fuera es 1 no entra: 
if($fuera==0){

 switch(
$user){
   case 
"usuario1":
    echo 
"<script>window.location ='usuario1.php'</script>";exit;
   break;

   case 
"usuario2":
    echo 
"<script>window.location ='usuario2.php'</script>";exit;
   break;

   case 
"usuario3":
    echo 
"<script>window.location ='usuario3.php'</script>";exit;
   break;
 
 } 


} else{
    echo 
"<script>window.location ='formulariotres.php'</script>";
    exit;
}
?>
En la pagina usuarioX.php deveras validar de alguna manera esto.
Esto no es para nada lo correcto, a principios no te respondi por que la respuesta era extensa, y es lo que esta pasando ahora.
Yo no se que manejo de php y mysql tenes, pero deverias implementar una db y permisos para cada usuario, o algun sistema similar.
Si manejas algo de php, lo que tendrias que hacer es escribir al menos una var de session para usarla de llave para las paginas a las que queres derle acceso a los usuarios.
Pero te repito, esto ya no es practico y correcto, mas si estamos hablando de que vas a tener mas de tres usuarios en futuro, y que las paginas para estos puede variar.
Asi que mi consejo es que hagas un registro de usuarios por medio de una base de datos, y asignes permisos bit a bit con php.
__________________
Mi punto de partida es Que Bueno Lo Nuevo
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 04:19.