PHP创建我的服务器端jpg文件而不是发送它

时间:2014-01-16 10:28:40

标签: php email

我的画布图像正确保存但是我需要将它发送到预设的电子邮件,我的PHP技能让我这么远,但我尝试过的其他一切都失败了。

这是我的工作代码。

<?

// set error reporting level
if (version_compare(phpversion(), '5.3.0', '>=') == 1)
error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED);
else
error_reporting(E_ALL & ~E_NOTICE);

// save file
if ($_POST['data'] != '') {

$sRand = rand(100000, 999999);
$sOrigPath = 'cache/result'.$sRand.'.jpg';
@unlink($sOrigPath);

$img = $_POST['data'];
$img = str_replace('data:image/png;base64,', '', $img);
$img = str_replace('data:image/jpeg;base64,', '', $img);
$img = strip_tags($img);
$img = str_replace(' ', '+', $img);
$decodedData = base64_decode($img);

file_put_contents($sOrigPath, $decodedData);
echo $sOrigPath;

``}

这完美无缺,但我知道我错过了这么简单的东西,但我无法通过电子邮件获取。如果有人可以帮助,那将是惊人的。

谢谢你们的帮助。我最终管理它,但是我使用这个代码进行了一些自定义。 http://www.litfuel.net/tutorials/mail2.htm我希望这可以帮助有类似问题的人。

2 个答案:

答案 0 :(得分:0)

您需要发送电子邮件,其中包含电子邮件中的图片。如果设置了正确的标头,电子邮件会接受HTML。请参阅mail功能以供参考。

$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
mail("someemail@google.com", "Some subject", "<img src='path/to/your/saved/image.jpg'/>", $headers);

要使其正常工作,您必须安装SMTP服务器。如果在Linux上,您可以轻松安装postfix,它开箱即用。

答案 1 :(得分:0)

在php中使用'mail'功能 在“消息”字段中输入

$msg = "<img src='". $sOrigPath."'>";