搜索
博主信息
博文 34
粉丝 1
评论 1
访问量 47652
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
用数据库管理网站内容,PHP写一个网站小案例——2019年7月25日23时38分
嘿哈的博客
原创
1462人浏览过

1.用database.php return数据库信息;

2.用connect.php 导入database.php文件,PDO连接数据库;

3.在公共头文件header.php导入connect.php文件连接数据库,获取来自数据表的网站内容

4.用select来查询数据表的网站内容,然后进行fetch或fetchAll遍历

效果看这个网站 pc.wenbus.cn/0725/index.php  二级域名,老师批改的时候直接复制下域名

博客会屏蔽掉我们发的链接 pc.wenbus.cn/0725/index.php

database.php代码:

<?php
return [    
'type' => 'mysql',    
'host' => '127.0.0.1',    
'dbname' => 'php1',
'username' => 'root',    
'password' => 'root'
];

connect.php连接数据库代码

<?php
$db = require __DIR__ .'/database.php';
$dsn = "{$db['type']:host={$db['host];dbname={$db['dbname']}";
$username = $db['username'];
$password = $db['password'];
try{
$pdo -> prepare($dsn,$username,$password);
}catch(PDOException $e){
    echo '连接失败'.$e -> getMessage();
}


header公共头文件(获取数据表的网站内容)


实例

<?php
    // 获取数据库连接文件
    require __DIR__ . '/connect.php';
//    系统内容设置参数
    $stmt = $pdo->prepare('SELECT * FROM `system` LIMIT 1');
    $stmt ->execute();
    $system = $stmt ->fetch(PDO::FETCH_ASSOC);
//    栏目数据
    $sql = 'SELECT `cate_id`, `name`,`alias`  FROM `cagegory`';
    $stmt = $pdo-> prepare($sql);
    $stmt->execute();
    $cates=$stmt->fetchAll(PDO::FETCH_ASSOC);
    $cate_count = count($cates);
//    内容数据
    $stmt = $pdo->prepare('SELECT `detail_id`,`name`,`image`,`detail`,`cate_id` FROM `details`');
    $stmt -> execute();
    $details = $stmt -> fetchAll(PDO::FETCH_ASSOC);
?>
<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="description" content="<?php echo $system['desc']; ?>">
    <meta name="key" content="<?php echo $system['key']; ?>">
    <link rel="stylesheet" href="inc/style.css">
    <title><?php echo $system['title'] ?></title>
</head>
<body>
<!--头部导航-->
<div class="header">
    <ul class="nav">
        <li><a href="index.php">首页</a></li>
        <?php
        foreach ($cates as $cate): ?>
            <li><a href="list.php?cate_id=<?php echo $cate['cate_id'] ?>"><?php echo $cate['alias'] ?></a></li>
        <?php endforeach; ?>
    </ul>
</div>

运行实例 »

点击 "运行实例" 按钮查看在线实例


这是首页index.php代码实例

<?php
//    头部公共组件
    include __DIR__ .'/inc/header.php';

//    网页内容区

//遍历栏目
    foreach ($cates as $cate){

        echo "<h3> {$cate['alias']} </h3>";

        echo '<ol>';

//            遍历内容数据
            foreach ($details as $detail){
//                print_r($detail['cate_id']);
//                当栏目的cate_id与数据的cate_id对应,显示内部数据,类似分类
                if ($cate['cate_id'] === $detail['cate_id']){
                    echo "<li><a href='detail.php?detail_id=".$detail['detail_id']."'>{$detail['name']}</a></li>";
                }
            }

        echo '</ol>';
    }

//    尾部公共组件
    include __DIR__ .'/inc/footer.php';

运行实例 »

点击 "运行实例" 按钮查看在线实例


这是列表页模板list.php代码实例

<?php
//    头部公共组件
include __DIR__ .'/inc/header.php';

//获取栏目id
$cate_id = $_GET['cate_id'];

//函数转换
//$cate_id = intval($cate_id);  
//这里intval处理ID后,是int整数类型,在foreach遍历时,$cate['cate_id']用dump获取是字符串类型

//var_dump($cate_id); 是int整数类型

//遍历栏目

foreach ($cates as $cate){

//    var_dump($cate['cate_id']); 这里dump获取到数据是字符串string类型

//    用获取的栏目cate_id来判断 输出于获取到的栏目id相同的栏目数据
    if($cate['cate_id'] === $cate_id){
        echo "<h3> {$cate['alias']} </h3>";
        echo '<ol>';
        
//        遍历内容数据区
        foreach ($details as $detail){
        
//        用获取的栏目cate_id与内容数据中的cate_id进行判断 输出等同的内容数据
        if ($cate['cate_id'] === $detail['cate_id']){
        echo "<li><a href='detail.php?detail_id=".$detail['detail_id']."'>{$detail['name']}</a></li>";
            }
        }

        echo '</ol>';
    }

}

//    尾部公共组件
include __DIR__ .'/inc/footer.php';

运行实例 »

点击 "运行实例" 按钮查看在线实例

数据表

1.jpg

2.png


批改状态:合格

老师批语:这个案例主要是考察php与html代码的混写与模板语法 , 还有就是http请求中的get, 是如果将多个页面之间串在一起的
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学