将附件 (jpg) 添加到此 PHP 邮件脚本


Adding a attachment (jpg) to this PHP mail Script

我正在尝试添加一个代码,它允许我通过php发送附件(jpg)!

我目前的脚本:

<?php
$input = array("@[XXXX:0]", "@[XXXX:0]", "@[XXX:0]", "@[XXX:0]", "@[XXX:0]", "@[XXX:0]",                 "@[XXX:0]", "@[XXX:0]", "@[XXX:0]", "@[XXX:0]", "@[XXX:0]", "@[XXX:0]");
$rand_keys = array_rand($input, 2);
echo $input[$rand_keys[0]];
?>
<?php
 $to = "XXX@XXX.com";
 $subject = "Wuensche euch allen ein schoenes Wochenende.
Sehn uns hier: @[XXXXXXXXXXXX:0]!
Shouts heute gehen an ". $input[$rand_keys[0]]." <3.
Kuss, XXX.";
 $body = "bacon";
 if (mail($to, $subject, $body)) {
   echo("<p>Message to Facebook successfully sent!</p>");
  } else {
   echo("<p>Message to Facebook failed!</p>");
  }
 ?>

所以像这样:

$file = picture.jpg

(在同一个目录中!

如果可行:

我们可以做一些类似的事情吗

$file = $random_picture

$random_picture = 1.jpg 2.jpg 3.jpg 4.jpg etc.

这样脚本就会画出一个随机数.jpg并在每次加载时发送它?

谢谢!:)

您可以获取帮助表单 带有 JPEG 附件的 HTML 电子邮件教程。

你需要像这样改变你的身体部位:

$pics = array('1.jpg', '2.jpg', '3.jpg', '4.jpg');
//Pick key of the random image
$random_key = array_rand($pics,1);
$file = file_get_contents("YOUR_ABSOLUTE_URL".$pics[$random_key]);
$body.= "Content-Type: image/jpg; name='"".$pics[$random_key]."'"'r'n"
."Content-Transfer-Encoding: base64'r'n"
."Content-disposition: attachment; file='"".$pics[$random_key]."'"'r'n"
."'r'n"
.chunk_split(base64_encode($file)); 

然后,您像现在发送的那样发送电子邮件。

注意:

看看array_rand。

编辑:

完整代码如下:

<?php
$to = "XXX@XXX.com";
$subject = "YOUR_SUBJECT";
$body = "bacon";
$pics = array('1.jpg', '2.jpg', '3.jpg', '4.jpg');
//Pick key of the random image
$random_key = array_rand($pics,1);
$file = file_get_contents($pics[$random_key]);
$body.= "Content-Type: image/jpg; name='"".$pics[$random_key]."'"'r'n"
."Content-Transfer-Encoding: base64'r'n"
."Content-disposition: attachment; file='"".$pics[$random_key]."'"'r'n"
."'r'n"
.chunk_split(base64_encode($file));
if (mail($to, $subject, $body)) {
    echo("<p>Message to Facebook successfully sent!</p>");
} else {
    echo("<p>Message to Facebook failed!</p>");
}
?>

我猜像下面这样的东西(没有测试);

$randomPicArr = array('a.jpg','b.jpg','c.jpg','d.jpg','e.jpg');
$randomNum = rand(0,5);
$random_picture = $randomPicArr[$randomNum];