Comunidad de diseño web y desarrollo en internet online

Consulta de datos sql y envio por mail php

Citar            
MensajeEscrito el 24 Ago 2011 10:57 pm
Hola.

Tengo una pagina con gestion de usuarios.

Cuando olvidan su pasword, el php que tengo le envia un link al correo del usuario en donde pueden cambiar su contraseña.

Lo que yo deseo es que no me envie el link, si no que me envie tal cual el pasword y el usuario.

mi codigo es el siguiente

Código PHP :

<?
// Configura los datos de tu cuenta
include('us_config.php');

if($_POST['button']){
   if($_POST['mail']){
      
      $mail = htmlentities($_POST['mail']);
      
      $link = mysql_connect ($dbhost, $dbusername, $dbuserpass);
        mysql_select_db($dbname,$link);
      
      $queEmp = "SELECT * FROM usuarios WHERE email='$mail'";
      $resEmp = mysql_query($queEmp, $link) or die(mysql_error());
      $totEmp = mysql_num_rows($resEmp);
      if($totEmp == 0){
      echo "El mail ingresado no existe";
      exit();
      }      
      
      $row = mysql_fetch_assoc($resEmp);
      $hash = md5(md5($row['username']).md5($row['password']));

      $headers .= "From:Recuperar password <[email protected]>\r\n";  
      $message = "Para recuperar tu contrasenia dar click en la url de abajo.
      http://www.mypage.com.mx/us_pass.php?id=".$hash."&mail=".$mail."";
      
      if (mail($mail,"Recuperar password",$message,$headers)){
      $msg = "Se te envio un link a tu mail para cambiar la password";
      }
   }
}
?>
<em><?=$msg?></em>
<form id="form1" name="form1" method="post" action="us_recuperar.php">
  Tu email<br />
  <input type="text" name="mail" id="mail" />
  <br />
  <br />
<input type="submit" name="button" id="button" value="Recuperar" />
</form>


Se que puede ser algo muy simple, le estuve moviendo a los codigos, pero no tuve exito. por cierto ya en us_config.php estan todos los datos de la base parar la conexion a sql

Por dex_ter88

20 de clabLevel



 

safari
Citar            
MensajeEscrito el 26 Ago 2011 02:37 pm
Mira lo que según yo podrias hacer es a la variable mensaje adjuntarle los datos devueltos de la base de datos $row['username'] y $row['password'] lo que pasa con el password es que si está encriptado con md5 no se puede descodificar, tendrías que usar algo como base64 que puedes hacer decode o encode.

Cualquier consulta o sugerencia estoy a la orden =)

Por danmoracr

Claber

128 de clabLevel

1 tutorial

Genero:Masculino  

Web application developer

firefox
Citar            
MensajeEscrito el 26 Ago 2011 05:47 pm
si, tienes razon, los resultados ya me lo envia, pero em envia toda la cadena de la contraseña encriptada, logré hacer que al registrarme no me la encripte, pero tuve problemas con la validacion, de verdad ya vi muchas maneras y no ahi solucion... yo creo lo dejaré asi =(

Por dex_ter88

20 de clabLevel



 

safari
Citar            
MensajeEscrito el 26 Ago 2011 06:11 pm
cuando quiero accesar, me busca la contraseña encriptada y resulta lo mismo, lo que respecta a mi codigo de validacion ya le borre todo lo que tenga que ver con md5

pero el problema persiste, no se que tenga mi codigo que me siga requiriendo una contraseña encriptada

Código :

[code][php]// Conectar a la base de datos
mysql_connect ($dbhost, $dbusername, $dbuserpass);
mysql_select_db($dbname) or die('No se puede seleccionar la base de datos');

if ($_POST['username']) {
//Comprobacion del envio del nombre de usuario y password
$username=htmlentities($_POST['username']);
$password=($_POST['password']);
if ($password==NULL) {
echo "No capturo contraseña";
exit();
}else{
$query = mysql_query("SELECT username,password FROM usuarios WHERE username = '$username'") or die(mysql_error());
$data = mysql_fetch_array($query);
if($data['password'] != $password) {
echo "Contraseña Incorrecta";
exit();
}else{
$query = mysql_query("SELECT username,password FROM usuarios WHERE username = '$username'") or die(mysql_error());
$row = mysql_fetch_array($query);
$_SESSION["s_username"] = $row['username'];
$_SESSION["logeado"] = "SI";[/php][/code]

Por dex_ter88

20 de clabLevel



 

safari
Citar            
MensajeEscrito el 26 Ago 2011 10:23 pm
Eso sucede cuando el campo donde guardas el pass en la base de datos esta configurado para que encripte la password automaticamente. Setea el campo de la tabla como char o text y se resuelve. El problema que veo es que si lo haces tendrias que guardar todas las contraseñas nuevamente pero sin encriptar. Saludos

Por nethost_cl

36 de clabLevel



Genero:Masculino  

CHILE

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.