Buenos días amigos: Tengo un acertijo para finalizar mi proyecto:
Resulta que tengo un archivo php cuyo código pongo debajo: Ese script hace que a mi correo me llegue un LINK para cambiar mi clave de acceso en mi web.
Ese link, llega con un "https" a mi bandeja outlook.com, como lo muestro aquí:
A mi sitio no se accede a través de https ni mucho menos. Lo raro es que cuando hago la prueba de enviar el link a un correo google, por ejemplo no pasa eso, simplemente sigue la ruta del dominio y las carpetas que están especificadas en este script que hay debajo en php, es decir, como debería ser.
Revisé todos estos archivos que estoy usando y no hay una referencia a https declarada, ni nada. Por lo visto se trata de cómo gestiona cada gestor de correos los mensajes, pero alguien tiene idea de cómo puedo evitar esto?
De antemano gracias.
Código PHP:
<?php
function generarLinkTemporal($idusuario, $usuario){
$cadena = $idusuario.$usuario.rand(1,9999999).date('Y-m-d');
$token = sha1($cadena);
$conexion = new mysqli('ipagemysql.com', 'XXX', 'XXX#', 'XXXX');
$sql = "INSERT INTO tblreseteopass (idusuario, usuario, token, creado) VALUES($idusuario,'$usuario','$token',NOW());";
$resultado = $conexion->query($sql);
if($resultado){
$enlace = $_SERVER["SERVER_NAME"].'/CLAVE/restablecer.php?idusuario='.sha1($idusuario).'&token='.$token;
return $enlace;
}
else
return FALSE;
}
function enviarEmail( $email, $link ){
$mensaje = '<html>
<head>
<title>Tu Clave - Sitio</title>
</head>
<body>
<img src="http://xxxxxxxxxx/img/logo_web.jpg" width="450" height="116" alt="Medina y Rivera" />
<p>Apreciado compañero (a) hemos recibido una petición para restablecer la clave de tu cuenta.</p>
<p>Si hiciste esta petición, haz clic en el siguiente enlace, si no hiciste esta petición puedes ignorar este correo.</p>
<p>
<strong>Sigue el enlace para restablecer tu clave</strong><br>
<a href="'.$link.'"> Restablecer tu Clave </a>
</p>
</body>
</html>';
$cabeceras = 'MIME-Version: 1.0' . "\r\n";
$cabeceras .= 'Content-type: text/html; charset=utf-8' . "\r\n";
$cabeceras .= 'From: Sitio Web MyR <[email protected]>' . "\r\n";
mail($email, "Recuperar Clave - Sitio", $mensaje, $cabeceras);
}
$email = $_POST['email'];
$respuesta = new stdClass();
if( $email != "" ){
$conexion = new mysqli('ipagemysql.com', 'myr2014', 'Myr2014#', 'myr2014');
$sql = " SELECT * FROM XXXXXXX WHERE email = '$email' ";
$resultado = $conexion->query($sql);
if($resultado->num_rows > 0){
$usuario = $resultado->fetch_assoc();
$linkTemporal = generarLinkTemporal( $usuario['id'], $usuario['usuario'] );
if($linkTemporal){
enviarEmail( $email, $linkTemporal );
$respuesta->mensaje = '<div class="alert alert-info"> Un correo ha sido enviado a tu cuenta de email con las instrucciones para restablecer la contraseña, tardará de 30 a 50 segundos. </div>';
}
}
else
$respuesta->mensaje = '<div class="alert alert-warning"> No existe una cuenta asociada a ese correo. </div>';
}
else
$respuesta->mensaje= "Debes introducir el email de la cuenta";
echo json_encode( $respuesta );
?>