Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/09/2012, 23:11
luis123123
(Desactivado)
 
Fecha de Ingreso: septiembre-2012
Ubicación: Peru Villa Maria
Mensajes: 29
Antigüedad: 11 años, 7 meses
Puntos: 0
Introducir php dentro de mensaje de correo electronico

Estoy haciendo un login, estoy en la parte de si el user olvido su contraseña, que la nueva contraseña se la envien a su bandeja de entrada, todo me anda perfecto, pero hay un problema al enviar el mensaje, parece que no capta el php metido dentro del html, que ala vez es el cuerpo del mensaje; osea usa comillas simples, Para mejor explicacion les muestro el codigo que me envia el mensaje:
Código PHP:
<?php
include_once "conexion.php";
include_once 
"function_login.php";
    
$id $_POST['email'];
    
$n 1;
    
$user strtolower($id{$n 1});
switch (
$user)
    {    
        case  
"e":
        if(
verificar_email_e($_POST['email'],$result) == 1)
        {
                
$destinatario $result->email;
                
$asunto "Cambio de contraseña";
                
$cuerpo '
                <html>
                <head>
                   <title>SOLICITUD DE CAMBIO DE CONTRASEÑA</title>
                </head>
                <body>
                <h1>SOLICITUD DE CAMBIO DE CONTRASEÑA</h1>
                <p>
                Ud acaba de solicitar el cambio de su contraseña el cual ha sido cambiado y ahora es el siguiente
                <br>
                <b>PASS:
                <? 
                    $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890";
                    $cad = "";
                    for($i=0;$i<12;$i++) {
                    $cad .= substr($str,rand(0,62),1);
                    }
                    echo $cad;
                ?>
                </b>
                <br>
.                CORREO DE PRUEBA
                </p>
                </body>
                </html>
                '
;
                
                
//para el envío en formato HTML
                
$headers "MIME-Version: 1.0\r\n";
                
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
                
                
//dirección del remitente
                
$headers .= "From: AREA DE SISTEMAS - UPS <[email protected]>\r\n";
                
                
//dirección de respuesta, si queremos que sea distinta que la del remitente
                
$headers .= "Reply-To: AREA DE SISTEMAS - UPS <[email protected]>\r\n";
                
                
mail($destinatario,$asunto,$cuerpo,$headers);
                echo 
'<script language = javascript>alert("Correo enviado correctamente,Fijese su bandeja")
                location.href="index.php"
                </script>'
;
        }
        else
        {
            echo 
'<script language = javascript>alert("ID incorrecto, vuelva introducir ID")
            location.href="index.php"
            </script>'
;
        }
        break;

    }
?>
La parte del problema es esta:
Código PHP:
<body>
                <h1>SOLICITUD DE CAMBIO DE CONTRASEÑA</h1>
                <p>
                Ud acaba de solicitar el cambio de su contraseña el cual ha sido cambiado y ahora es el siguiente
                <br>
                <b>PASS:
                <? 
                    $str 
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890";
                    
$cad "";
                    for(
$i=0;$i<12;$i++) {
                    
$cad .= substr($str,rand(0,62),1);
                    }
                    echo 
$cad;
                
?>
                </b>
                <br>
.                CORREO DE PRUEBA
                </p>
                </body>
                </html>
Ese codigo php que inserto es para que me genere una contraseña aleatoria y cuando pruebo, me envia a mi correo el mensaje de esta manera:

osea no me lee el php, ayuden please Gracias anticipadamente xD