auda por favor
necesito hacer una pagina que tenga un usuario y una contreseña, mis problemas son dos: uno como necesito solo hacer esto no creo que sea necesario un bd, entonces donde guardo los usuarios y las contraseñas ( son como 7 )
y segundo como hago esto con php, es decir guardo una sesion, hago un archivo, etc
por favor si alguin me puede audar
se lo agradezco muchoooooo
y segundo como hago esto con php, es decir guardo una sesion, hago un archivo, etc
por favor si alguin me puede audar
se lo agradezco muchoooooo
Lo mejor es hacerlo con base de datos y encripatación de usuario y contraseña ! si dices que solo son 7 o "como 7", podrÃas hacer un fichero php para guardar estas contraseñas y el nombre de usuario correspondiente, bien podrÃa ser por medio de un array dividiendo al usuario y contraseña por un carácter especial, es importante recalcar que el tema de la seguridad de una página es lo más importante, y no se puede tomar tan a la ligera, si querés algo simple,
fichero de contraseñas
<?php
# lista de usuarios, y bla bla bla
$contrasenias=array("mi_user/mi_contraseña","mi_otro_user/su_contraseña");
?>
validar usuario
<?php
session_start();
include("config.php");
$validado=false;
if($_POST['user'){
$user=$_POST['user'];
$pass=$_POST['pass'];
$count=count($contrasenias);
for($i=0;$i<$count;$i++)
{
list($us,$pa)=split("/",$contrasenias[$i]);
if($user=$us && $pass==$pa)
{
$validado=true;
$_SESSION['mi_sesion']['es_usuario']=$us;
}
}
}
if(isset($_SESSION['mi_session']['es_usuario'])){$validado=true;}
if($validado===true)
{
echo "Bienvenido ". $_SESSION['mi_sesion']['es_usuario'];
}
?>
Es sencillo, se genera un array con el nombre de los usuarios y sus contraseñas, el contenido de este array no tiene lÃmite por lo que pueden ser 10, 20 1000 o más,
Se Inicializa la variable $validado=false; esto para evitar que un usuario use algo como index.php?validado=1
ya que uno tiene un valor darÃa como resultado $validado=true; en caso de register_globals=On,
se realiza un bucle de control interante for, en el que se lista a dos variables, usuario y contraseña que son separadas por una diagonal con la función split, y posteriormente se valida, con la sentencia if , si hay que dejar muy en claro que NO es una forma adecuada de manejar datos importantes pero sà puede servir en casos simples. Suerte si por ahà me falló algo es pq no vi su funcionamiento, lo hize acá, Saludos y Suerte..!! :D
fichero de contraseñas
<?php
# lista de usuarios, y bla bla bla
$contrasenias=array("mi_user/mi_contraseña","mi_otro_user/su_contraseña");
?>
validar usuario
<?php
session_start();
include("config.php");
$validado=false;
if($_POST['user'){
$user=$_POST['user'];
$pass=$_POST['pass'];
$count=count($contrasenias);
for($i=0;$i<$count;$i++)
{
list($us,$pa)=split("/",$contrasenias[$i]);
if($user=$us && $pass==$pa)
{
$validado=true;
$_SESSION['mi_sesion']['es_usuario']=$us;
}
}
}
if(isset($_SESSION['mi_session']['es_usuario'])){$validado=true;}
if($validado===true)
{
echo "Bienvenido ". $_SESSION['mi_sesion']['es_usuario'];
}
?>
Es sencillo, se genera un array con el nombre de los usuarios y sus contraseñas, el contenido de este array no tiene lÃmite por lo que pueden ser 10, 20 1000 o más,
Se Inicializa la variable $validado=false; esto para evitar que un usuario use algo como index.php?validado=1
ya que uno tiene un valor darÃa como resultado $validado=true; en caso de register_globals=On,
se realiza un bucle de control interante for, en el que se lista a dos variables, usuario y contraseña que son separadas por una diagonal con la función split, y posteriormente se valida, con la sentencia if , si hay que dejar muy en claro que NO es una forma adecuada de manejar datos importantes pero sà puede servir en casos simples. Suerte si por ahà me falló algo es pq no vi su funcionamiento, lo hize acá, Saludos y Suerte..!! :D
Perdón , la segunda parte del código tiene tres errores de sintaxis. ok olvida todo lo que puse de código aquà está más sencillo =P ( sin espacios en blanco ni lÃneas en blanco antes de este código .....
<?php
session_start();
$contrasenias=array("mi_user/mi_contraseña","mi_otro_user/su_contraseña");
$validado=false;
if($_POST['user']){
$user=$_POST['user'];
$pass=$_POST['pass'];
$count=count($contrasenias);
for($i=0;$i<$count;$i++)
{
list($us,$pa)=split("/",$contrasenias[$i]);
if($user==$us && $pass==$pa)
{
$validado=true;
$_SESSION['mi_sesion']['es_usuario']=$us;
}
}
}
if(isset($_SESSION['mi_sesion']['es_usuario'])){$validado=true;}
if($validado===true)
{
echo "Bienvenido ". $_SESSION['mi_sesion']['es_usuario'];
}
else
{
?>
<form method="post" action="<?=$_SERVER['PHP_SELF'];?>">
<input type="text" name="user" />
<input type="password" name="pass" />
<input type="submit" value="entrar" />
</form>
<? } ?>
Ahora sà lo prové y anda ok :p suerte
<?php
session_start();
$contrasenias=array("mi_user/mi_contraseña","mi_otro_user/su_contraseña");
$validado=false;
if($_POST['user']){
$user=$_POST['user'];
$pass=$_POST['pass'];
$count=count($contrasenias);
for($i=0;$i<$count;$i++)
{
list($us,$pa)=split("/",$contrasenias[$i]);
if($user==$us && $pass==$pa)
{
$validado=true;
$_SESSION['mi_sesion']['es_usuario']=$us;
}
}
}
if(isset($_SESSION['mi_sesion']['es_usuario'])){$validado=true;}
if($validado===true)
{
echo "Bienvenido ". $_SESSION['mi_sesion']['es_usuario'];
}
else
{
?>
<form method="post" action="<?=$_SERVER['PHP_SELF'];?>">
<input type="text" name="user" />
<input type="password" name="pass" />
<input type="submit" value="entrar" />
</form>
<? } ?>
Ahora sà lo prové y anda ok :p suerte
gracias por la info, pero te hago una pregunta
este php, esta en la misma pagina que el fomr??
porque de ser asi me pasaria lo mismo que me pasa ahora con javascrip, con el boton derecho vez el codigo y sacas los usuarios y contraseñas, es asi??
y otra cosa que no se ya qeu soy nueva en php, que es lo que pusiste en action =, disculpame pero yo la unica vez que hice algo ahi llame al php que validad, y desconozco que es lo uqe hace esa instruccion
nuevamente muchas gracias
y espero tu respuesta
este php, esta en la misma pagina que el fomr??
porque de ser asi me pasaria lo mismo que me pasa ahora con javascrip, con el boton derecho vez el codigo y sacas los usuarios y contraseñas, es asi??
y otra cosa que no se ya qeu soy nueva en php, que es lo que pusiste en action =, disculpame pero yo la unica vez que hice algo ahi llame al php que validad, y desconozco que es lo uqe hace esa instruccion
nuevamente muchas gracias
y espero tu respuesta
No php se ejecuta en el servidor no en la máquina del usuario,
el usuario accede a una página, haciendo el requerimiento,
el servidor "ve" qué tipo de información es la que se desea ejecutar si el archivo tiene extención ".php" manda el archivo al intérprete php y éste a su vez regresa al servidor como simple código HTML en este caso, es decir que jamás podrá un usuario dar clic con el botón derecho del mouse y ver el source php de la página , jejejeje para nada, de tal forma que deja de preocuparte que el código es 99% seguro.
En lo que te refieres a el "action" del formulario, am, en palabras sencillas :
si tú al código lo guardas como "mi_pagina.php"
el formulario tendrá como destino "mi_pagina.php"
De igual manera que si lo llámases de otra forma,
Sencillamente es para eso.
Y te recomiendo que descarges el manual de php CHM que está disponible en español en la siguiente dirección viene muy explicativo el formato es (html help)
http://mx.php.net/get/php_manual_es.chm/from/a/mirror
Saludos y suerte... !
el usuario accede a una página, haciendo el requerimiento,
el servidor "ve" qué tipo de información es la que se desea ejecutar si el archivo tiene extención ".php" manda el archivo al intérprete php y éste a su vez regresa al servidor como simple código HTML en este caso, es decir que jamás podrá un usuario dar clic con el botón derecho del mouse y ver el source php de la página , jejejeje para nada, de tal forma que deja de preocuparte que el código es 99% seguro.
En lo que te refieres a el "action" del formulario, am, en palabras sencillas :
si tú al código lo guardas como "mi_pagina.php"
el formulario tendrá como destino "mi_pagina.php"
De igual manera que si lo llámases de otra forma,
Sencillamente es para eso.
Y te recomiendo que descarges el manual de php CHM que está disponible en español en la siguiente dirección viene muy explicativo el formato es (html help)
http://mx.php.net/get/php_manual_es.chm/from/a/mirror
Saludos y suerte... !
tenes razon mi pregunta fue bastante tonta, pero decime
por un lado hago un archivo php, que se llama clave.php y ese va a tener los usuarios y claves, ok??
y por otro hago la pagina que tiene el form, tambien php, que tiene el codigo php que me mandaste en el segundo mail, si??
ahora bien,eso es lo que hice y me da el siguiente error:
Warning: session_start(): Cannot send session cookie - headers already sent by (output started at c:appservwwwlistas.php:120) in c:appservwwwlistas.php on line 157
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:appservwwwlistas.php:120) in c:appservwwwlistas.php on line 157
sabes qeu puede ser, donde inicio la sesion
muchas gracias nuevamente, y tengo que sacar esto hoy, tengo un manual en mis manos, pero bueno me explica lo de sesion , pero solo eso; y no se bien como aplicarlo
por un lado hago un archivo php, que se llama clave.php y ese va a tener los usuarios y claves, ok??
y por otro hago la pagina que tiene el form, tambien php, que tiene el codigo php que me mandaste en el segundo mail, si??
ahora bien,eso es lo que hice y me da el siguiente error:
Warning: session_start(): Cannot send session cookie - headers already sent by (output started at c:appservwwwlistas.php:120) in c:appservwwwlistas.php on line 157
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:appservwwwlistas.php:120) in c:appservwwwlistas.php on line 157
sabes qeu puede ser, donde inicio la sesion
muchas gracias nuevamente, y tengo que sacar esto hoy, tengo un manual en mis manos, pero bueno me explica lo de sesion , pero solo eso; y no se bien como aplicarlo
Como te lo dije desde un principio, debes insertar el código al inicio del sript sin una sola lÃnea de código HTML antes de,
session_start(); debe de ser llamada ANTES de que se produzca una salida al navegador no tiene que existir nada html antes de esto para que funcione, presisamente por eso te manda el error "headers already sent", que indica que ya fueron enviadas las cabeceras, por lo que esta variable ahora es inservible...
session_start(); debe de ser llamada ANTES de que se produzca una salida al navegador no tiene que existir nada html antes de esto para que funcione, presisamente por eso te manda el error "headers already sent", que indica que ya fueron enviadas las cabeceras, por lo que esta variable ahora es inservible...
Mejor agrégame a tus contactos de msn, :S [email protected] por allá te digo qué onda !!
