Smarty模板实现时事信息并通过MIME mail发送
下面将用Smarty产生一个时事信息程序,并用MIME mail发送,过程:
newsletter.tpl:模板文件,处理表现层的内容。
1. <table width="90%" border="0" align="center" cellspacing="5">
2. <tr>
3. <td bgcolor="#FFFFFF"><img src="1.jpg" width="30" height="30" /></td>
4. <td><div align="right">
5. <h3>时事信息 {$month}, {$year} </h3>
6. </div></td>
7. </tr>
8. <tr>
9. <td width="31%" bgcolor="#999999"><table width="100%" border="0" cellpadding="0" cellspacing="1">
10. <tr>
11. <td bgcolor="#999999"><div align="center"><strong>推荐: </strong></div></td>
12. </tr>
13. {section name=id loop=$books}
14. <tr>
15. <td bgcolor="#FFFFFF"><div align="center"><b>{$books[id]}</b>
16. <img src='{$images[id]}' vspace="2" height="200" /><br />
17. </div></td>
18. </tr>
19. {/section}
20. </table></td>
21. <td width="69%" valign="top">
22. <p>
23. <b>{$reviews.title}</b><br/>
24. {$reviews.description}<br/>
25. More : <a href='{$reviews.link}'>Click Here</a>
26. </p> </td>
27. </tr>
28. <tr>
29. <td colspan="2"><div align="center"> ©
30. </div></td>
31. </tr>
32. </table>
newsletter.php:php脚本文件,逻辑层的处理,处理程序逻辑部分。
1. <?php
2. include ("libs/Smarty.class.php");
3. $smarty = new Smarty();
4.
5. $smarty->assign("month","4");
6. $smarty->assign("year", 2012);
7. $books = array("JavaScript高级程序设计","Linux\Unix设计思想");
8. $images = array("2.jpg","1.jpg");
9. $smarty->assign("books", $books);
10. $smarty->assign("images", $images);
11. $review = <<< END
12. 《JavaScript高级程序设计(第3版)》是JavaScript超级畅销书的最新版。ECMAScript 5和HTML5在标准之争中双双胜出,
13. 使大量专有实现和客户端扩展正式进入规范,同时也为JavaScript增添了很多适应未来发展的新特性。
14. 《JavaScript高级程序设计》这一版除增加5章全新内容外,其他章节也有较大幅度的增补和修订,新内容篇幅约占三分之一。
15. 全书从JavaScript语言实现的各个组成部分——语言核心、DOM、BOM、事件模型讲起,深入浅出地探讨了面向对象编程、Ajax与Comet服务器端通信,
16. HTML5表单、媒体、Canvas(包括WebGL)及Web Workers、地理定位、跨文档传递消息、客户端存储(包括IndexedDB)等新API,
17. 还介绍了离线应用和与维护、性能、部署相关的最佳开发实践。《JavaScript高级程序设计(第3版)》附录展望了未来的API和ECMAScript Harmony规范。
18. 《JavaScript高级程序设计(第3版)》适合有一定编程经验的Web应用开发人员阅读,也可作为高校及社会实用技术培训相关专业课程的教材。
19. END;
20. $link = "#";
21. $title = "JavaScript高级程序设计(第3版)";
22. $reviews = array("title"=>$title,
23. "description"=>$review,
24. "link"=>$link);
25. $smarty->assign("reviews", $reviews);
26. $out = $smarty->fetch("newsletter.tpl");
27.
28. $user = "someuser@somedomain.com";
29. $headers = "MIME-Version: 1.0 \n" ;
30. $headers .= "Content-Type: text/html; charset=iso-8859-1 \n";
31. $headers .= "From: newsletter@my_domain.com \n";
32. mail($user, "Newsletter", $out, $headers);
33. ?>
效果图:
摘自 沙漠的蜗牛80
补充:Web开发 , 其他 ,