• HTML+PHP+MySQL实现新闻列表模块(1+X Web前端开发中级 例题)——初稿


     📄题目要求 

    • 阅读下列说明、效果图、MySQL数据库操作和代码,进行动态网页开发,填写(1)至(15)代码。

    🧩说明

    • 该程序为一个html和php混合的新闻列表模块,使用PHP语言,采用MySQL数据库和mysqli扩展。项目名称为itwang,包括web目录,config目录,class目录,public目录。
    • 其中web目录存放information.php文件。public目录存放图片资源。config目录存放配置文件,class目录存放各种类。

    • 进行动态网页开发,补全代码,在(1)至(15)处填入正确的内容。

    🧩效果图

    💻HTML+PHP代码

    1. // 在(1)处补齐代码,开启session
    2. (1);
    3. // 在(2)处补齐代码,使用相对路径,以../开头,导入config.php文件
    4. require_once"(2)";
    5. //自动加载类
    6. spl_autoload_register(function($name){
    7. require_once"../class/{$name}.class.php";
    8. });
    9. ?>
    10. html>
    11. <html lang="zh-cn">
    12. <head>
    13. <meta charset="UTF-8">
    14. <meta name="viewport" content="width=device-width, initial-scale=1,maximum-scale=1, user-scalable=no">
    15. <title>项目实战title>
    16. <link rel="stylesheet" href="./dist/css/bootstrap.min.css">
    17. <link rel="stylesheet" type="text/css" href="css/common.css" />
    18. <link rel="stylesheet" href="css/style.css">
    19. head>
    20. <body>
    21. <div id="information">
    22. <div class="container">
    23. <div class="row">
    24. <div class="col-md-8">
    25. <div class="container-fluid" style="padding:0;">
    26. //连接数据库遍历数据
    27. // 在(3),(4),(5),(6)位置根据配置文件中常量分别填写域名,用户名,密码,数据库
    28. $mysqli=new mysqli((3),(4),(5),(6));
    29. if ($mysqli->connect_errno) {
    30. die('连接失败: ' . $mysqli->connect_error);
    31. }
    32. // 设置字符编码
    33. $mysqli->query("set names utf8");
    34. //在(7)处补全代码,计算数据表中数据总数
    35. $total=$mysqli->query("select id from information where status=1")->(7);
    36. //根据上下文,在(8)处补全代码,设置每页条数的变量
    37. (8)=5;
    38. //在(9)处补全代码,向上取整
    39. $maxpage=(9)($total/$showrow);
    40. //当前页面,如果从前端通过get方法获取了当前页,就给$currentP,否则就是1
    41. $currentP=empty($_GET['page']) ? 1 : ($_GET['page']>$maxpage?$maxpage:$_GET['page']);
    42. // mysqli预处理语句
    43. // 在(10)处填写当前页变量,在(11)处填写每页条数变量
    44. if($stmt=$mysqli->prepare("select * from information where status=1 limit ".(( (10)-1)* $showrow)." , {(11)}")){
    45. $stmt->execute(); //执行语句
    46. $stmt->bind_result($id,$title,$content,$author,$image,$time,$status); //绑定字段
    47. // 在(12)处填写条件循环关键字
    48. (12) ($stmt->fetch()) {
    49. ?>
    50. <div class="row info-content">
    51. <div class="col-md-5 col-sm-5 col-xs-5">
    52. <img src="../public/" class="img-responsive" alt="" style='width:300px;height:150px;'>
    53. div>
    54. <div class="col-md-7 col-sm-7 col-xs-7">
    55. <h4>h4>
    56. <p class="hidden-xs">[阅读全文]"; ?>p>
    57. <p>
    58. echo "    ".date("Y/m/d",$time); ?>p>
    59. div>
    60. div>
    61. }
    62. $stmt->close();
    63. }
    64. ?>
    65. div>
    66. <div>
    67. if($total>$showrow){
    68. // 在(13)处补全代码,实例一个分页类,在(14)处填写数据总数的变量名
    69. $page=new (13)((14),$showrow);
    70. // 根据page类,分析并填写(15)处调用方法
    71. echo $page->(15)(3,4,5,6,7);
    72. }
    73. ?>
    74. div>
    75. div>
    76. <div class="col-md-4 info-right hidden-xs hidden-sm">
    77. <blockquote>
    78. <h2>热门资讯h2>
    79. blockquote>
    80. <div class="container-fluid">
    81. $res=$mysqli->query("select inforid from hot group by inforid order by count(inforid) desc limit 5;");
    82. while ($row=$res->fetch_array()) {
    83. //查询最热门 的资讯的详情
    84. $re=$mysqli->query("select * from information where id=".$row[0]);
    85. $rows=$re->fetch_array(1);
    86. ?>
    87. <div class="row">
    88. <div class="col-md-5 col-sm-5 col-xs-5" style="margin: 12px 0; padding: 0">
    89. <img src="/project/public/image"] ;?>" class="img-responsive" alt="">
    90. div>
    91. <div class="col-md-7 col-sm-7 col-xs-7" style="padding-right: 0">
    92. <h4>h4>
    93. <p>p>
    94. div>
    95. div>
    96. };
    97. ?>
    98. div>
    99. div>
    100. div>
    101. div>
    102. div>
    103. $mysqli->close();
    104. require_once"common/footer.html";
    105. ?>
    106. <script src="js/jquery.min.js">script>
    107. <script src="js/bootstrap.min.js">script>
    108. body>
    109. html>

    🎯实现效果

    📰完整答案

    试题二(30分)

    【问题】(30分)
    (1)session_start()
    (2)../config/config.php
    (3)HOST   (必须大写)
    (4)USER   (必须大写)
    (5)PSW    (必须大写)
    (6)DB    (必须大写)
    (7)num_rows
    (8)$showrow
    (9)ceil
    (10)$currentP
    (11)$showrow
    (12)while
    (13)Page
    (14)$total
    (15)fpage
    (每空2分,共30分)


    🎯点赞收藏,防止迷路🔥 


  • 相关阅读:
    javascirpt封装xhr上传多张图片,以及解决formdata后端只接受一张图片问题,用原型链来封装减少资源浪费和提高性能
    vue之diff算法
    由于找不到vcruntime140_1.dll怎么修复,详细修复步骤分享
    [云原生案例2.4 ] Kubernetes的部署安装 【通过Kubeadm部署Kubernetes高可用集群】
    ARM发布Cortex-X3和Cortex-A715
    【agora】get 一个 agora_refptr 对象的用法示例
    表格文字识别易语言代码
    CSS的语法规则——基础选择器
    【强化学习】贝尔曼公式 - bellman equation
    神经网络应用场景——自然语言处理
  • 原文地址:https://blog.csdn.net/weixin_53231455/article/details/127974324