Buenas!! gracias por sus comentarios al respecto, yo habia pensado en un sistema como ustedes lo indica, algo asi de preguntar los datos y enviar un link al correo para validar y despues que regresen a certificar y guardar los datos pero no, el cliente quiere algo mas "sencillo" y que no me parece tan seguro. Lo que se requiere hacer es lo siguiente:
1.- pedir los datos generales como nombre de usuario
2.- Codigo
3.- Fecha de cumpleaños
4.- Correo electronico
5.- Si desea recuperar su contraseña o cambiarla (con un radio button)
6.- Si desea recuperarla al darle enviar se enviara la contraseña segun los datos recogidos o si desea cambiarla digitar la contraseña anterior y cambiarla por una nueva.
Relativamente es seguro porque el ID (codigos) no es autoincrement, todos los ID (codigos) son generados manualmente y bastante diferentes.
ahora mi pregunta es: como puedo hacer esto? yo tenia pensado algo asi:
Código PHP :
<?php
include("conexion con la BD.php");
if(isset($_POST['nick'])){ //nick en este caso es mi nombre de usuario
$nick=$_POST['nick'];
$id=$_POST['ID']; //codigo
$nacimiento=$_POST['nacimiento'];
$correo=$_POST['correo'];
$contrasenavieja=$_POST['contrasenavieja'];
$contrasenanueva=$_POST['contrasenanueva'];
$datos=mysql_query("SELECT * FROM clientes,mascotas WHERE nick = '$nick', ID='$ID'")or die (mysql_error());
$renglon=mysql_fetch_object($datos);
$sql = "UPDATE clientes SET contasenanueva='$contrasena'";
$result = mysql_query($sql);
}
?>
y dentro del mismo PHP algo asi como esto:
Código PHP :
<table width="724" align="center" cellpadding="0" cellspacing="10">
<tr>
<th width="336" align="left" valign="top" scope="col"><span class="titulos">* Nombre de Usuario:</span></th>
<th width="356" align="left" scope="col"><span class="textos">
<input nombre="contrasena" type="text" class="box" id="contrasena" size="50" value="<?=$nick;?>" />
</span></th>
</tr>
<tr>
<td align="left" valign="top"><span class="titulos"><span class="textos">* Código:</span></span></td>
<td align="left"><span class="textos">
<input nombre="nombre" type="text" class="box" id="nombre" size="50" value="<?=$id;?>" />
</span></td>
</tr>
<tr>
<td align="left" valign="top" class="titulos"><span class="textos">* Tu Fecha de Cumpleaños:</span></td>
<td align="left"><span class="textos">
<input nombre="nacimiento" type="text" class="box" id="nacimiento" size="50" value="<?=$nacimiento;?>" />
</span></td>
</tr>
<tr>
<td align="left" valign="top" class="titulos"><span class="textos">* Tu Correo Electrónico:</span></td>
<td align="left"><span class="textos">
<input nombre="correo" type="text" class="box" id="correo" size="50" value="<?=$correo;?>" />
</span></td>
</tr>
<tr>
<td class="titulos"> </td>
<td align="left"> </td>
</tr>
<tr>
<td valign="top" class="titulos"><label>
<input type="radio" nombre="recuperar" id="recuperar" value="<?=$modificar;?>">
Recuperar Contraseña</label></td>
<td align="left"><label class="titulos">
<input type="radio" nombre="cambiar" id="cambiar" value="<?=$cambiar;?>">
Cambiar Contraseña</label></td>
</tr>
<tr>
<td class="titulos"> </td>
<td align="left"><span class="titulos"><span class="textos">* Actual contraseña</span></span></td>
</tr>
<tr>
<td valign="top" class="titulos"> </td>
<td align="left"><span class="textos">
<input nombre="actual" type="text" class="box" id="actual" size="50" value="<?=$contrasenavieja;?>" />
</span></td>
</tr>
<tr>
<td> </td>
<td align="left"><span class="titulos"><span class="textos">* Nueva contraseña</span></span></td>
</tr>
<tr>
<td> </td>
<td align="left"><span class="textos">
<input nombre="nueva" type="text" class="box" id="nueva" size="50" value="<?=$contrasenanueva;?>" />
</span></td>
</tr>
<tr>
<td> </td>
<td align="center"><label><span class="titulos">* Control spam: </span></label>
<span class="textos">
<label><b>2 + 3=</b></label>
<input nombre="spamcheck" type="text" class="box" id="spamcheck" size="4" value="<?=$spamcheck;?>" />
</span></td>
</tr>
</table>
<br />
<!-- Submit Button-->
<input nombre="send" type="submit" class="button" id="send" value="ENVIAR" />
</form>
<!-- Verificacion de E-mail -->
<?php
}
function isEmail($correo)
{
return(preg_match("/^[-_.[:alnum:]]+@((([[:alnum:]]|[[:alnum:]][[:alnum:]-]*[[:alnum:]])\.)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|biz|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|nombre|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)$|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i"
,$correo));
}
?>
Obviamente todavia no se como realizarlo bien, Alguien tiene alguna idea?
Como pueden ver no soy muy experto en esto de PHP.