尝试在其他类似线程中发布多个解决方案,但似乎没有任何帮助。
我正在尝试使用html2canvas创建当前页面的屏幕截图,并使用php将其发送到用户指定的电子邮件地址。
我如何处理画布创建和ajax帖子:
$("#submit").click(function() {
values = $('#email').val();
html2canvas($("#blob"), {
background: '#fff',
onrendered: function(canvas) {
theCanvas = canvas.toDataURL("image/jpeg", 1.0);
$.ajax({
url: "email.php",
type: 'POST',
data: {
'canvas': theCanvas
},
contentType: "application/x-www-form-urlencoded; charset=UTF-8",
}).done(function(response) {
alert('success');
}).fail(function(jqXHR, textStatus, errorThrown) {
alert('FAILED! ERROR: ' + errorThrown);
});
}
});
});
使用
查看email.php中的结果
print "CONTENT_TYPE: " . $_SERVER['CONTENT_TYPE'] . "<BR />";
$data = file_get_contents('php://input');
print "DATA: <pre>";
var_dump($data);
var_dump($_POST);
结果:
CONTENT_TYPE: 数据: string(0)“” array(0){ }
这意味着$ _POST ['canvas']也是空的。 如何正确发送数据以便将图像通过电子邮件发送给用户?