PHPMAILER, ADDSTRINGATCHMENT 및 데이터 URI 체계
문제
나는 a의 내용을 변환했다 canvas
데이터에 대한 요소 (URI Scheme)를 사용합니다 toDataURL()
($contact_image_data
) 그리고 나는 이것을 이메일로 첨부 파일로 보내고 싶습니다. 이것은 현재 Phpmailer가 설정 한 방법입니다.
$contact_image_data="data:image/png;base64,iVBORw0KGgo[...]";
$filename="test.png";
$encoding = "base64";
$type = "image/png";
$mail->AddStringAttachment($contact_image_data, $filename, $encoding, $type);
이것이 실제로 가능한지 궁금합니다. 그렇다면 어떤 단계가 누락되었는지 궁금합니다.
이메일을 보낼 수 있습니다. $contact_image_data
, 그러나 실제로 이미지를 생성하지는 않습니다.
모든 도움이 될 것입니다 많이 감사합니다.
사무엘.
해결책
예, 가능해야합니다. 'Image/Png'마임 유형으로 Todataurl ()를 호출하여 출력 방법을 알고 있습니까?
스크립트를 두 가지 구성 요소로 나누어보십시오. 실제로 PNG가 있는지 확인하십시오. 그 다음에 우편으로 보내십시오.
예를 들어, 작성 될 때 컴퓨터에서 Test.png가 열립니다.
<?php
$contact_image_data="data:image/png;base64,iVBORw0KGgo[...]";
$fp = fopen('test.png', 'w');
fwrite($fp, $contact_image_data);
fclose($fp);
?>
조금 도움이되기를 바랍니다!
다른 팁
나는 그것을 제거해야한다는 것이 밝혀졌다 data:image/png;base64,
섹션 및 base64_decode()
자료:
$contact_image_data="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA";
$data = substr($contact_image_data, strpos($contact_image_data, ","));
$filename="test.png";
$encoding = "base64";
$type = "image/png";
$mail->AddStringAttachment(base64_decode($data), $filename, $encoding, $type);
제휴하지 않습니다 StackOverflow