VeneHosting.com :: Tu Hosting en Venezuela

Autor Tema: Script para recuperacion de clave de usuario (SOLUCIONADO)  (Leído 695 veces)

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

Desconectado annadiaz

  • Usuario Dedicado
  • ***
  • Mensajes: 104
  • Puntuación: 0
  • Sexo: Femenino
    • Ver Perfil
Script para recuperacion de clave de usuario (SOLUCIONADO)
« : 02 de agosto de 2011, 01:36:01 pm »
Aporte al Foro de PHP Venezuela:

aqui les dejo una forma de recuperar la clave de usuario registrado desde una Tabla llamada XXXXX de una BD
Aqui tenemos el formulario
Código: [Seleccionar]
<form id="recupera" name="recupera" method="post" action="recuperar.php">
      <table width="290" height="106" border="0">
        <tr>
          <td height="30" colspan="2">Olvido su clave?</td>
        </tr>
        <tr>
          <td height="14">Nombres:</td>
          <td><input name="nombres" type="text" id="nombres" value="" size="30" /></td>
        </tr>
        <tr>
          <td height="14">E-Mail:</td>
          <td height="14"><input name="email" type="text" id="email" maxlength="45" /></td>
        </tr>
        <tr>
          <td colspan="2"><input type="submit" value="Enviar" name="Submit" id="Submit" /></td>
        </tr>
      </table>
    </form>

Aqui el archivo que lo llamamos recupercion, este es el quele indica si el correo que se escribio en nuestro formulario se encuentra o no en nuestra tabla, luego si exite nos envia a dicho correo registrado la clave que inicialmente escribimos al registrarnos.  de lo contrario nos devuelve al formulario, ya sea para registrarno o volver a escribir nuestro correo para la recuperacion de la clave.

 
Código: [Seleccionar]
<!--Author: Anna Carolina Diaz Riera-->
<?php
$data_root 
$_SERVER[DOCUMENT_ROOT];
$nombreusuario=$_POST[&#39;nombres&#39;]; 
$emailusuario=$_POST[&#39;email&#39;]; 
include ($data_root "/site/sec/funciones.php");//Llamada de la BD
$res mysql_query("SELECT * FROM registro WHERE nombres=&#39;$nombreusuario&#39; AND email=&#39;$emailusuario&#39;");

if (
mysql_num_rows($res)==0) { 
 
 
header("Location:registro2.php"); 

else { 

 
$res=mysql_query("SELECT * FROM registro WHERE nombres=&#39;$nombreusuario&#39; AND email=&#39;$emailusuario&#39;");
$row=mysql_fetch_assoc($res); 
$claveusuario=$row[&#39;password&#39;]; 

foreach ($_POST as $campo=>$str){
$valor_campo strip_tags("$str");
$valor_campo trim("$valor_campo");
$
$campo =  $valor_campo ;
//echo "$campo<br>";
if ($valor_campo == ""){
$mensaje_error .= "El campo <b>$campo</b> es de uso obligatorio<br />";
$error 1;
}
}

if (!empty(
$emailusuario)){
## advertir que 2,4 --> para aceptar nuevos dominios (.info, etc)
$control_mail="^[a-z0-9\._-]+@+[a-z0-9\._-]+\.+[a-z]{2,4}$";
if(!
eregi($control_mail,$emailusuario)){
$mensaje_error .= "La <b>sintáxis de tu email</b> no es válida<br />\n";
$error 1;
}
}

if (
$error == 1){
$salida_errores= <<< HTML
Se han producido los siguientes errores:<br /><br />
$mensaje_error
<br />

HTML;
echo 
$salida_errores;
exit;
}else{

$texto strip_tags("$comentario");
// enviamos el email de recuperacion 
$header = &#39;From: xxxxx@nombredominio.com&#39; ."\r\n";
$header .= &#39;Reply-to: noresponder@cross-home.com&#39; ."\r\n";
$header .= "X-Mailer:PHP" .phpversion ()."\r\n";
$header .= "Mime-Version:1.0 \r\n";
$header .= "Content-type: text/html; charset=iso-8859-1\r\n"

$asunto "Recuperación de la Clave" ;
$contenido "
Estimado(a) cliente 
$nombreusuario, su clave es: $claveusuario

Motivo de la recomendación
$texto

**********************************************************************

Porfavor no respondas este mensaje, si no conoces el origen.
La administración de www.nombredominio.com
"
;
$mail mail($email,$asunto,$contenido,$header);
if(
$email){ 
echo 
"Gracias. $nombres";
}
else
{
echo 
"Error al envia. Podría haber problemas con el servidor, intente más tarde por favor";
 } 
  
 } 
}
?>


<script type="text/javascript">
              location.href="http://www.nombredominio.com/registro2.php";
</script>
« Última Modificación: 03 de agosto de 2011, 08:21:13 am por annadiaz »

Desconectado el_santo

  • Usuario Dedicado
  • ***
  • Mensajes: 192
  • Puntuación: 7
  • Sexo: Masculino
    • Ver Perfil
Re:Script para recuperacion de clave de usuario
« Respuesta #1 : 03 de agosto de 2011, 07:58:11 am »
El problema esta en el header del email ke intentas enviar, esta mal formado.

Cheka aki http://www.php.net/manual/es/function.mail.php para ke veas los parametros minimos de un encabezado.

Al faltar el "FROM" tu smtp agrega el standar del servidor....

Por otra parte veo tu script no esta limpiando las variables $nombreusuario=$_POST['nombres']; $emailusuario=$_POST['email']; tu script es muy inseguro. corrige eso ya ke estas publicando tu source y algun malintencionado puede hacerte una maldad.
Yo hablo php........!!!

Desconectado annadiaz

  • Usuario Dedicado
  • ***
  • Mensajes: 104
  • Puntuación: 0
  • Sexo: Femenino
    • Ver Perfil
Re:Script para recuperacion de clave de usuario
« Respuesta #2 : 03 de agosto de 2011, 08:11:30 am »
Gracias EL_Santo, ya lo hice, y mas bien lo que hice fue , colocarlo como una colaboracion.

Lo que no entiendo la puntuacion -1   :-X

Desconectado el_santo

  • Usuario Dedicado
  • ***
  • Mensajes: 192
  • Puntuación: 7
  • Sexo: Masculino
    • Ver Perfil
Re:Script para recuperacion de clave de usuario
« Respuesta #3 : 03 de agosto de 2011, 08:20:50 am »
Gracias EL_Santo, ya lo hice, y mas bien lo que hice fue , colocarlo como una colaboracion.

Lo que no entiendo la puntuacion -1   :-X

Bueno hoy al momento de responder era una solicitud de ayuda :-P lo del -1 pudo haber sido hasta por otro post :-S
Yo hablo php........!!!

PHP de Venezuela

Re:Script para recuperacion de clave de usuario
« Respuesta #3 : 03 de agosto de 2011, 08:20:50 am »

 

PHP de Venezuela on Facebook