Ayudenme a comprobar pass de los usuarios (soy aprendiz)

Iniciado por Pazador, 16 Junio 2009, 04:08 AM

0 Miembros y 1 Visitante están viendo este tema.

Pazador

Hola a todos soy nuevo y a la vez aprendiz en PHP  :-[

intento practicar haciendo un sistema con logueo de usuarios, hice casi todo pero el problema esque no se como comprobar el password de un usuario hacia la DB, mi script es el sgte:
Código (php) [Seleccionar]
<html>
<head>
<title>usuarios :D</title>
</head>
<body><div align="center">
<form method="post" action="<?php $_SERVER['PHP_SELF']; ?>">
Nombre: <input type="text" name="nombre" /><br />
Clave: <input type="password" name="pass" /><br />
<input type="submit" value="Enviar" /> <input type="reset" value="Cancelar" />
</form>
<?php 
extract
($_REQUEST);
if(isset(
$nombre) && isset($pass)){
 
//conectamos
 
$cn=mysql_connect("localhost","root","123")or die("No se puede conectar a la DB");
 
mysql_select_db("libro",$cn)or die("No se encuentra la DB");
  
 if(
$nombre==mysql_query("SELECT usuario FROM users WHERE usuario='$nombre'") && $pass==mysql_query("SELECT usuario FROM users WHERE pass='$pass'")){
 
session_start(); 
 
$_SESSION['si'] ='entraste';
 
header("Location: adm_mensajes.php");
 }
 else{
 echo 
"<font color=red>Usuario o Clave incorrecto</font>";
 }
}
?>

</div>
</body>
</html>


lo que me falta es comprobar el nombre y el password que sean correctos a los de la bd del usuario, intente hacer esto porque fue lo primero que se me ocurrio   :-(
Código (php) [Seleccionar]
if($nombre==mysql_query("SELECT usuario FROM users WHERE usuario='$nombre'") && $pass==mysql_query("SELECT usuario FROM users WHERE pass='$pass'")) y al parecer no funciona alguien podria darme una mano  :laugh:
por si les sirve de algo mis tablas son estas  :P
Código (sql) [Seleccionar]
create table users(
id int(11) auto_increment primary key not null,
usuario char(30) not null,
pass char(20) not null
);

hasta aqui termina mi primera pregunta  :rolleyes:

la segunda duda que tengo y no tengo idea de como se hace... resulta que quiero editar los mensajes de un libro de visitas que intento hacer, logre poder editar dichos mensajes creando una interfaz grafica de un admin pero mi gran problema esque yo quiero que.. cada vez que quiera editar un mensaje, el mensaje antiguo se muestre en los campos de texto del formulario para editarlo osea como cuando editas un post, el texto sigue ahi y listo para corregirlo, logre poder hacer que se editen los mensajes pero, cuando se edita no aparece el mensaje que estaba  :-(  mi codigo es este:

Código (php) [Seleccionar]
<?php 
session_start
();
if(!isset(
$_SESSION['si']) || $_SESSION['si']!='entraste'){
header("Location: admin.php");
exit();
}
?>

<html>
<head>
<title>editor del admin :D</title>
</head>

<body>
<?php 
$cn
=mysql_connect("localhost","root","123") or die ("No se pudo conectar a la DB");
mysql_select_db("libro",$cn)or die(mysql_error());

extract($_REQUEST);
if (isset(
$action) && $action="editar"){
$modifica=mysql_query("update mensajes set nombre='$nombre',tema='$tema',mensaje='$mensaje' where id='$id'");
}
echo 
"<a href=\"mensajes.php\">Regresar</a>";
?>

<form action="<?php $_SERVER['PHP_SELF']; ?>" method="post">
Nombre: <input type="text" name="nombre" /><br />
Tema: <input type="text" name="tema" /><br />
Mensaje: <br /><textarea name="mensaje" cols="30" rows="5"></textarea><br />
<input type="submit" value="Enviar" /> <input type="reset" />
</form>

</body>
</html>

aqui si estoy completamente seguro que logre que edite los mensajes de la peor manera que se pueda hacer  :xD recuerden que estoy aprendiendo PHP  :laugh:
espero respuestas y mejor aun... ayuda  ;-)
La vida es un juego
Mario Bross

Erik#

Código (php) [Seleccionar]
$query = mysql_query("SELECT * FROM `users` WHERE usuario='$_POST[usuario]'");
$datos = mysql_fetch_array($query);
if($datos['password'] == $_POST['contrasena']){
// contenido
}else{
// contenido erroneo
}


Prueba haber :)

Pazador

Cita de: Erik# en 16 Junio 2009, 21:28 PM
Código (php) [Seleccionar]
$query = mysql_query("SELECT * FROM `users` WHERE usuario='$_POST[usuario]'");
$datos = mysql_fetch_array($query);
if($datos['password'] == $_POST['contraseña']){
// contenido
}else{
// contenido erroneo
}


Prueba haber :)

gracias por responder, intente hacerlo como dices pero tengo el mismo problema  :-\ se que deberia funcionar pero no se porque no funciona  :-(
La vida es un juego
Mario Bross