Blogger Information
Blog 145
fans 7
comment 7
visits 164458
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
01月10日作业:运用已学的php制作动态网站
李东亚¹⁸⁰³⁹⁵⁴⁰¹²⁰
Original
1044 people have browsed it

一、代码:

1、css代码:(所页面代码均在里面)

  1. /*公共样式*/
  2. * {
  3. margin: 0;
  4. padding: 0;
  5. font-size: 14px;
  6. font-family: "Adobe 宋体 Std L";
  7. /*background-color: #969896;*/
  8. /*outline:3px dashed #ff0000;*/
  9. color: #333333;
  10. }
  11. a {
  12. text-decoration: none;
  13. }
  14. ul {
  15. list-style: none;
  16. }
  17. i {
  18. font-style: normal;
  19. }
  20. /*整体flex布局*/
  21. body {
  22. display: flex;
  23. flex-direction: column;
  24. }
  25. /*头部导航样式*/
  26. header {
  27. height: 80px;
  28. width: 100%;
  29. background-color: #63a35c;
  30. box-sizing: border-box;
  31. display: flex;
  32. padding: 5px 120px;
  33. align-items: center;
  34. justify-content:space-between;
  35. }
  36. header > .navs {
  37. width: 600px;
  38. align-self: flex-end;
  39. display: flex;
  40. justify-content: space-evenly;
  41. }
  42. header > .navs > span > a {
  43. font-size: 20px;
  44. }
  45. header > .navs > span > a:hover {
  46. color:#ffffff;
  47. }
  48. /*主体内容样式*/
  49. main {
  50. width: 1200px;
  51. min-height: 600px;
  52. margin: 0 auto;
  53. /*display: flex;*/
  54. /*flex-flow: column nowrap;*/
  55. padding: 10px 0;
  56. }
  57. main > div {
  58. margin: 10px 0;
  59. }
  60. main > div > span {
  61. font-size: 22px;
  62. font-weight: bold;
  63. padding-bottom: 4px;
  64. border-bottom: 2px solid #ff0000;
  65. margin-left: 20px;
  66. }
  67. /*行业新闻布局*/
  68. main > .news {
  69. display: flex;
  70. flex-flow: row nowrap;
  71. }
  72. main > .news > a > img {
  73. width: 750px;
  74. height: 400px;
  75. display: block;
  76. padding:1px;
  77. box-sizing: border-box;
  78. }
  79. main > .news > .news-list {
  80. width: 400px;
  81. display: flex;
  82. flex-flow: column;
  83. margin-left: 20px;
  84. }
  85. main > .news > .news-list > span {
  86. font-size: 18px;
  87. font-weight: bolder;
  88. color:#666666;
  89. margin-bottom: 10px;
  90. padding-bottom: 5px;
  91. border-bottom: 1px solid #ff0000;
  92. }
  93. main > .news > .news-list > ul {
  94. display: flex;
  95. flex-direction: column;
  96. justify-content: space-evenly;
  97. margin-left: 15px;
  98. }
  99. main > .news > .news-list > ul > li {
  100. height: 40px;
  101. display: flex;
  102. align-items: center;
  103. line-height: 40px;
  104. }
  105. main > .news > .news-list > ul > li > i {
  106. font-style: normal;
  107. font-size: 15px;
  108. background-color: #63a35c;
  109. color: white;
  110. width: 36px;
  111. height: 20px;
  112. text-align: center;
  113. line-height: 20px;
  114. border-radius: 4px;
  115. margin-right: 5px;
  116. }
  117. /*商品布局*/
  118. main > div > div {
  119. width: 1200px;
  120. margin: 10px auto;
  121. display: grid;
  122. grid-template-columns: repeat(4,1fr);
  123. }
  124. main > div:hover{
  125. box-shadow: 0 0 5px #404040;
  126. }
  127. main > div > div> div img {
  128. width: 200px;
  129. height: 160px;
  130. }
  131. main > div > div > div {
  132. display: flex;
  133. flex-direction: column;
  134. align-items: center;
  135. }
  136. main > div > div > div > span > i {
  137. font-style: normal;
  138. color: #ff0000;
  139. }
  140. /*底部样式*/
  141. footer {
  142. height: 120px;
  143. width: 100%;
  144. background-color: #63a35c;
  145. box-sizing: border-box;
  146. padding: 5px 120px;
  147. display: flex;
  148. flex-direction: row;
  149. justify-content: space-between;
  150. align-items: center;
  151. }
  152. footer > .info {
  153. width: 600px;
  154. height: 80px;
  155. }
  156. /*detail详情页css*/
  157. .details > span > a > i {
  158. font-style: normal;
  159. font-size: 14px ;
  160. font-weight: bold;
  161. }
  162. .details > span > a >i:hover {
  163. color:#63a35c;
  164. }
  165. .details > .good {
  166. display: flex;
  167. }
  168. .details > .good > a >img {
  169. width: 400px;
  170. height: 320px;
  171. }
  172. .details > .good > .detail {
  173. display: flex;
  174. flex-direction: column;
  175. justify-content: space-evenly;
  176. }
  177. /*page页样式*/
  178. .pages {
  179. width: 1200px;
  180. margin: 10px auto;
  181. }
  182. .pages > span > a > i {
  183. font-style: normal;
  184. font-size: 14px ;
  185. font-weight: bold;
  186. }
  187. .pages > span > a >i:hover {
  188. color:#63a35c;
  189. }
  190. .pages > .page {
  191. width: 1000px;
  192. margin: 10px auto;
  193. min-height: 550px;
  194. }
  195. .pages > .page > div {
  196. width: 400px;
  197. margin: 10px auto;
  198. font-size: 24px;
  199. text-align: center;
  200. }
  201. .pages > .page > p {
  202. margin: 20px 0;
  203. font-size: 16px;
  204. font-family: "Adobe 楷体 Std R";
  205. }

2、html:页面代码大多雷同仅传部分页面代码:

配置页代码(数据):

  1. <?php
  2. //网站名称
  3. $site='种业圈';
  4. //导航目录
  5. $navs=[
  6. ['cid'=>1,'name'=>'首页','url'=>'index.php'],
  7. ['cid'=>2,'name'=>'最新上架','url'=>'goods-list.php?cid=2'],
  8. ['cid'=>3,'name'=>'产品推荐','url'=>'goods-list.php?cid=3'],
  9. ['cid'=>4,'name'=>'行业新闻','url'=>'news-list.php'],
  10. ['cid'=>5,'name'=>'关于我们','url'=>'page.php?id=1']
  11. ];
  12. //产品信息
  13. $goods=[
  14. ['id'=>1,'src'=>'images/2%20(1).gif','name'=>'潍玉6号','pic'=>'51','detail'=>'产品介绍1','url'=>'details.php?id=1'],
  15. ['id'=>2,'src'=>'images/2%20(2).gif','name'=>'农玉16','pic'=>'52','detail'=>'产品介绍2','url'=>'details.php?id=2'],
  16. ['id'=>3,'src'=>'images/2%20(3).gif','name'=>'新玉158','pic'=>'53','detail'=>'产品介绍3','url'=>'details.php?id=3'],
  17. ['id'=>4,'src'=>'images/2%20(4).gif','name'=>'大成168','pic'=>'54','detail'=>'产品介绍4','url'=>'details.php?id=4'],
  18. ['id'=>5,'src'=>'images/2%20(5).gif','name'=>'成玉888','pic'=>'55','detail'=>'产品介绍5','url'=>'details.php?id=5'],
  19. ['id'=>6,'src'=>'images/2%20(6).gif','name'=>'成玉909','pic'=>'40','detail'=>'产品介绍6','url'=>'details.php?id=6'],
  20. ['id'=>7,'src'=>'images/2%20(7).gif','name'=>'郑单958','pic'=>'45','detail'=>'产品介绍7','url'=>'details.php?id=7'],
  21. ['id'=>8,'src'=>'images/2%20(8).gif','name'=>'郑单958','pic'=>'46','detail'=>'产品介绍8','url'=>'details.php?id=8']
  22. ];
  23. //行业新闻
  24. $news=[
  25. ['nid'=>1,'title'=>'大成种业介绍','url'=>'page.php?id=1','content'=>"河南大成种业有限公司成立于2005年,注册资本3500万元。公司是以玉米、小麦、大豆、粮油等主要农作物种子的选育、生产、加工、销售和技术服务为主的育繁推一体化企业。
  26. 2015年开始重组,至2017年3月重组完成。原秋乐种业总经理李继军博士出任大成种业董事长、宋新敏任副董事长、首席育种家、焦宏廷任总经理,标志着大成种业的组织管理机构、高管团队和育种团队正式构建完成。
  27. 公司拥有强大的科研队伍和机构。以郑州市新育农作物研究所、黄河玉米新品种创新联盟玉米新品种测试联合体、河南玉成玉米新品种创新联盟、华夏小麦新品种测试联合体、河南丰收小麦品种试验联合体、河南炎黄小麦新品种测试联合体为依托,以合作的多家科研机构为辅助,在强化自主研发的同时,加强深度合作。
  28. 公司在甘肃、海南、河南拥有稳定的制(繁)种基地。在河南荥阳建立了科研试验站,占地212亩;在新乡市平原示范区建有大型现代化种子加工储运中心。同时,配套建设有覆盖种子生产、加工、销售全流程的质量监控体系。
  29. 公司坚持“以人为本、质量优先、服务跟进”的经营理念,以农业增产、农民增收为己任,逐步健全营销网络和技术服务体系,努力把河南大成种业打造成国内外知名的育繁推一体化种子企业。"],
  30. ['nid'=>2,'title'=>'种业圈介绍','url'=>'page.php?id=2','content'=>"种业圈公众号
  31. 种业圈始建于2014年,是依托于微信公众号平台建立的,旨于借助互联网平台建立一个农资人自己的交流平台,形成一个公司、销售、代理商循环交流沟通方式。服务农业、服务种子、提供相应的信息和技术支持!"],
  32. ['nid'=>3,'title'=>'种业圈介绍2','url'=>'page.php?id=3','content'=>"种业圈公众号222222222222
  33. 种业圈始建于2014年,是依托于微信公众号平台建立的,旨于借助互联网平台建立一个农资人自己的交流平台,形成一个公司、销售、代理商循环交流沟通方式。服务农业、服务种子、提供相应的信息和技术支持!"],
  34. ['nid'=>4,'title'=>'种业圈介绍3','url'=>'page.php?id=4','content'=>"种业圈公众号3333333333333
  35. 种业圈始建于2014年,是依托于微信公众号平台建立的,旨于借助互联网平台建立一个农资人自己的交流平台,形成一个公司、销售、代理商循环交流沟通方式。服务农业、服务种子、提供相应的信息和技术支持!"],
  36. ];
  37. //最新产品,调用函数
  38. function get_hot_goods($a) {
  39. $hot_good=[];
  40. for ($num=0;$num<4;$num++){
  41. $hot_good[]=$a[$num];
  42. }
  43. return ($hot_good);
  44. };
  45. $hot_good=get_hot_goods($goods);

公共头部代码:

  1. <?php include 'config.php'?>
  2. <!doctype html>
  3. <html lang="en">
  4. <head>
  5. <meta charset="UTF-8">
  6. <title><?php echo $site; ?></title>
  7. <link rel="stylesheet" href="css/index.css">
  8. </head>
  9. <body>
  10. <header>
  11. <a href="index.php"><img src="images/logo.png" alt="logo"></a>
  12. <div class="navs">
  13. <?php foreach($navs as $nav):?>
  14. <span><a href="<?php echo $nav['url'] ?>"><?php echo $nav['name']?></a></span>
  15. <?php endforeach; ?>
  16. </div>
  17. </header>

公共底部代码:

  1. <footer>
  2. <a href=""><img src="images/logo.png" alt="logo" style="height: 80px;width: 200px;"></a>
  3. <div class="info">
  4. <p>种业圈公众号</p>
  5. <p>种业圈始建于2014年,是依托于微信公众号平台建立的,旨于借助互联网平台建立一个农资人自己的交流平台,形成一个公司、销售、代理商循环交流沟通方式。服务农业、服务种子、提供相应的信息和技术支持!</p>
  6. </div>
  7. <img src="images/种业圈.jpg" alt="" style="width: 80px;height: 80px;">
  8. </footer>
  9. </body>
  10. </html>

首页代码:

  1. <?php include 'public/public_header.php'?>
  2. <main>
  3. <div class="news">
  4. <div class="news-list">
  5. <span>行业新闻</span>
  6. <ul>
  7. <?php foreach($news as $new):?>
  8. <li><i>分类</i><a href="<?php echo $new['url']?>"><?php echo $new['title']?></a></li>
  9. <?php endforeach; ?>
  10. </ul>
  11. </div>
  12. <a href="">
  13. <img src="images/show1.png" alt="">
  14. </a>
  15. </div>
  16. <div class="new-goods">
  17. <span>最新上架</span>
  18. <div>
  19. <?php foreach ($hot_good as $good):?>
  20. <div class="good">
  21. <a href="<?php echo $good['url']?>"><img src="<?php echo $good['src']?>" alt=""></a>
  22. <span><?php echo $good['name']?></span>
  23. <span>价格:<i>&yen;<?php echo $good['pic']?></i></span>
  24. </div>
  25. <?php endforeach;?>
  26. </div>
  27. </div>
  28. <div class="hot-goods">
  29. <span>产品推荐</span>
  30. <div>
  31. <?php foreach ($goods as $good):?>
  32. <div class="good">
  33. <a href="<?php echo $good['url']?>"><img src="<?php echo $good['src']?>" alt=""></a>
  34. <span><?php echo $good['name']?></span>
  35. <span>价格:<i>&yen;<?php echo $good['pic']?></i></span>
  36. </div>
  37. <?php endforeach;?>
  38. </div>
  39. </div>
  40. </main>
  41. <?php include 'public/public_footer.php'?>

效果图:

产品列表页:

  1. <?php include 'public/public_header.php'?>
  2. <?php //echo $_GET['cid'];
  3. $class='';
  4. if(intval($_GET['cid'])===2) {
  5. $h_goods=get_hot_goods($goods);
  6. $class='最新上架';
  7. } elseif (intval($_GET['cid'])===3){
  8. $h_goods=$goods;
  9. $class='产品推荐';
  10. }
  11. ?>
  12. <main>
  13. <div class="new-goods">
  14. <span><?php echo $class ?></span>
  15. <div>
  16. <?php foreach ($h_goods as $good):?>
  17. <div class="good">
  18. <a href="<?php echo $good['url']?>"><img src="<?php echo $good['src']?>" alt=""></a>
  19. <span><?php echo $good['name']?></span>
  20. <span>价格:<i>&yen;<?php echo $good['pic']?></i></span>
  21. </div>
  22. <?php endforeach;?>
  23. </div>
  24. </div>
  25. </main>
  26. <?php include 'public/public_footer.php'?>

效果图:

产品详情页和文章详情页:

1、产品详情页

  1. <?php include 'public/public_header.php'?>
  2. <?php
  3. function get_food_id($goods) {
  4. foreach ($goods as $good) {
  5. if (intval($_GET['id'])===$good['id']) {
  6. return $good;
  7. }
  8. }
  9. }
  10. $good=get_food_id($goods);
  11. ?>
  12. <main class="details">
  13. <span><a href=""><i>最新上架</i></a>&nbsp;&nbsp;》产品详情</span>
  14. <div class="good">
  15. <a href="<?php echo $good['url']?>"><img src="<?php echo $good['src']?>" alt=""></a>
  16. <div class="detail">
  17. <span><?php echo $good['name']?></span>
  18. <span>价格:<i>&yen;<?php echo $good['pic']?></i></span>
  19. <p><?php echo $good['detail']?></p>
  20. </div>
  21. </div>
  22. </main>
  23. <?php include 'public/public_footer.php'?>

效果:

文章详情页

  1. <?php include 'public/public_header.php'?>
  2. <?php
  3. function get_new_id($news){
  4. foreach ($news as $new) {
  5. if ($new['nid']===intval($_GET['id'])){
  6. return $new;
  7. }
  8. }
  9. }
  10. $new=get_new_id($news);
  11. ?>
  12. <div class="pages">
  13. <span><a href="news-list.php"><i>行业新闻</i></a>&nbsp;&nbsp;》内容详情</span>
  14. <div class="page">
  15. <div><?php echo $new['title']?></div>
  16. <p><?php echo $new['content']?></p>
  17. </div>
  18. </div>
  19. <?php include 'public/public_footer.php'?>

效果图:

作业总结:

1、网站网页规划不好,没能很好的利用组件效果。网页布局有些凌乱:
特别是在写CSS的时候,不同页面没有很好的区分class属性,在写首页是直接用标签选择器(没有用类),忽略了其他的面布局,造成不同页面相同结构的标签属性一直,有些页面无法调整css属性,
可重复利用的css属性和单个页面的css不能很好的区分;
2、数据已经可以动态化实现
3、网站:先写首页(先不考虑数据动态化)——在拆分头部和底部以及栏目分类等,组件化;——在写其他页面——然后捉个页面,修改元素内容(利用php实现数据动态化)。
4、php和html混编时:php分支语句和循环语句的简写:大括号以:代替,结尾以类似end开头endif结尾
5、css导入外部样式文件:@import();
php导入外部php文件:include ();或者require();(两者区别在于,include导入失败,依旧执行后面代码,require则不执行);
6、array_rand($arr,int);随机获取数组中int个键名
7、__DIR__获取文件所在文件的绝对路径
8、利用php输出函数echoprint_r产看输出结果调试

Correcting teacher:天蓬老师天蓬老师

Correction status:qualified

Teacher's comments:以后调试, 可以直接用var_dump()+die;或者直接xdebug.... 前端写得不完美, 没关系的, 以后可以借助框架解决, 重要放在编程思维和业务逻辑上
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post