Hola amigos, tengo un script para enviar la contraseña de un usuario por mail, la lee de MySQL y luego la envía.
Ejecuté el script en localhost y me funcionó, me envía el dato que necesito. El problema es que al querer adaptarlo a mi sitio web ya no me funciona. No sé que estaré haciendo mal.
Ojalá puedan ayudarme, por favor, les agradezco su atención y valiosa ayuda.
Los scripts originales son:
Formulario:
<div align="center">Si ha olvidado su contraseña:</div>
<table width="80%" border="0" cellpadding="3" cellspacing="1" align="center">
<tr>
<td width="50%" align="right" valign="top"><strong>Ingrese su email : </strong></td>
<td width="50%" align="left" valign="top"><form name="form1" method="post" action="enviar_pass.php">
<input name="email_to" type="text" id="mail_to" size="25">
<input type="submit" name="Submit" value="Enviar">
</form>
</td>
</tr>
</table>
Archivo enviar_pass.php
<?
// Receiving variables
@$pfw_ip= $_SERVER['REMOTE_ADDR'];
@$email = addslashes($_POST['email_to']);
include("conn.php");
// table name
$tbl_name=members;
// retrieve password from table where e-mail = $email_to([email protected])
$sql="SELECT password FROM $tbl_name WHERE email='$email'";
$result=mysql_query($sql);
// if found this e-mail address, row must be 1 row
// keep value in variable name "$count"
$count=mysql_num_rows($result);
// compare if $count =1 row
if($count==1){
$rows=mysql_fetch_array($result);
// keep password in $your_password
$your_password=$rows['password'];
// ---------------- SEND MAIL FORM ----------------
//Sending auto respond Email to visitor
$pfw_header = "From: [email protected]\n"
. "Reply-To: [email protected]\n";
$pfw_subject = "Su contraseña";
$pfw_email_to = "$email";
$pfw_message = "Su contraseña es \n $your_password";
@mail($pfw_email_to, $pfw_subject ,$pfw_message ,$pfw_header ) ;
echo("<br /><br /><p align='center'><font face='Verdana' size='4' color='#008000'>Se ha enviado su password a <br /> $email</font></p>");
}
// else if $count not equal 1
else {
echo "No fue encontrada su direccion de E-mail en nuestra Base de Datos<br />
<a href='javascript:history.back()'> Regresar</a>";
}
?>
Ahora bien este es el script que trato de colocar en mi sitio, con los valores necesarios para mi base de datos:
El formulario.html es igual al anterior
<!--Inicia Formulario para contraseña olvidada-->
<div align="center">Si has olvidado tu contraseña:<br /><br />
</div>
<table width="80%" border="0" cellpadding="3" cellspacing="1" align="center">
<tr>
<td width="50%" align="right" valign="top"><strong>Ingresá tu email : </strong></td>
<td width="50%" align="left" valign="top"><form name="form1" method="post" action="enviar_pass.php">
<input name="email_to" type="text" id="mail_to" size="25">
<input type="submit" name="Submit" value="Enviar">
</form>
</td>
</tr>
</table>
<!--Termina Formulario para contraseña olvidada-->
Este es el archivo enviar_pass.php
<!--Inicia Enviar contraseña olvidada-->
<?
// Receiving variables
@$pfw_ip= $_SERVER['REMOTE_ADDR'];
@$email = addslashes($_POST['email_to']);
require_once('Connections/conn1.php');
// Recuperando la contraseña
$sql="SELECT contrase FROM amigos WHERE email='$email'";
$result=mysql_query($sql);
// if found this e-mail address, row must be 1 row
// keep value in variable name "$count"
$count = mysql_num_rows($result);
// compare if $count =1 row
if($count==1){
$rows=mysql_fetch_array($result);
// keep password in $your_password
$your_password=$rows['contrase'];
// ---------------- SEND MAIL FORM ----------------
//Sending auto respond Email to visitor
$pfw_header = "From: [email protected]\n"
. "Reply-To: [email protected]\n";
$pfw_subject = "Su contraseña";
$pfw_email_to = "$email";
$pfw_message = "Su contraseña es \n $your_password";
@mail($pfw_email_to, $pfw_subject ,$pfw_message ,$pfw_header ) ;
echo("<br /><br /><p align='center'><font face='Verdana' size='4' color='#008000'>Se ha enviado su password a <br /> $email</font></p>");
}
// else if $count not equal 1
else {
echo "No fue encontrada su direccion de E-mail en nuestra Base de Datos<br />
<a href='javascript:history.back()'> Regresar</a>";
}
?>
<!--Termina Enviar contraseña olvidada-->
El error que me sale es:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\xampp\htdocs\misitio_v2\enviar_pass.php on line 73
No fue encontrada su direccion de E-mail en nuestra Base de Datos
Regresar
Me olvidaba, la contraseña no está encriptada.
Bueno espero me ayuden. Gracias.