He leido el FAQ pero esa no es la solucion, es que los datos ya llegan sin HTML
Estoy modificando el codigo fuente del PhpLinkDirectory, y este usa Smarty y las librerias Prototype.
archivo : sendmail.tpl
Código PHP:
{* Error and confirmation messages *}
{include file="messages.tpl"}
{strip}
<div class="block">
<form method="post" action="" >
<table class="formPage">
<tbody>
<tr>
<td class="label required"><label for="TITLE">{l}Name{/l}:</label></td>
<td class="smallDesc">
{$name} </td>
</tr>
<tr>
<td class="label {if $smarty.const.REQUIRE_URL}required{/if}"><label for="URL">{l}Mail{/l}:</label></td>
<td class="smallDesc">{$email}
</td>
</tr>
<tr>
<td class="label"><label for="DESCRIPTION">{l}HTML{/l}:</label></td>
<td class="smallDesc"><textarea name="html" id="html" rows="6" cols="50" class="text">{$html}</textarea></td>
</tr>
</tbody>
<tfoot>
<tr>
<td> </td>
<td>
<input type="button" id="submit" name="Submit" value="Send" class="button" onClick="sendMailAjax();">
<div id="mensaje">
</div>
</td>
</tr>
</tfoot>
</table>
</form>
</div>
{/strip}
sendmail.js
Código PHP:
function sendMailAjax(){
//capturo el textarea que tiene el html
var html = $F("html");
var url = "sendmailajax.php";
var params = 'html='+html;
//envía datos por Ajax
var ajx = new Ajax.Updater("mensaje",
url,
{method:"post",
parameters:params}
);
}
sendmailajax.php
Código PHP:
session_start();
//el body es el HTML
$body = $_POST['html'];
$maildestino = $_SESSION['EMAIL'];
$subject = $_SESSION['subject'];
///mail del editor o administrador, en este caso he eligo que siempre del administrador
$mailadmin = $_SESSION['mailadmin'];
$headers = "From: ".$mailadmin."\r\nContent-type: text/html\r\n";
$headers .= "MIME-version: 1.0\n";
$m = mail($maildestino,$subject,$body,$headers);
if ($m){
echo " mail enviado";
}else{
echo "el mail no se pudo enviar";
}
Y este es el HTML que se muestra en el textarea:
Código PHP:
Tu web ha sido agregada nuestro directorio
Ahora agrega este codigo a tu web:
<br/>
<a href="www.eldirectorio.com/Ocio/Musica/Cantautores/">tu web en topbloglatinos</a>
Al correo solo llega este texto :Tu web ha sido agregada nuestro directorio
Ahora agrega este codigo a tu web:
pero no llega el HTML.
Ya hice la prueba imprimiendo el $_POST['html']; y solo llega ese texto. creo que la solucion seria poner una propiedades al formulario, pero lo malo es que estoy usando AJAX con protototype, creo que debo buscar unas propiedades del prototype que me permitan enviar correctamente el formulario.
Pueden ayudarme?