交互项目思路

第一步

1.  怎么一次性修改引入项目文件的路径(可以将项目文件的地址拆分进行部分修改)

        方法1:ctrl+shift+E -->find (内容/地址)-->replace(修改后的内容/地址)-->save All / 保存全部-->esc退出

        方法2:点击文件单击--->find & replace..-->find (内容/地址)-->replace(修改后的内容/地址)-->esc退出

2. 怎么一次性把项目中的html文件改成php

         win+R-->打开CMD文件-->打开项目所在的盘(C:)-->enter-->输入项目所在的地址(C:\project\baixiu)-->enter-->ren *.html *.php-->enter     // 修改那个文件夹下的html就复制那个文件夹的地址

         修改整个文件夹中所有文件中a标签指向的html文件为php文件   打开sublime-->ctrl+shift+E-->点击右下角三个小点点。。。-->选定对应文件夹-->进行find , replace的修改-->save All / 保存全部-->esc退出

          修改单个页面中的选定的所有字段名/文件的后缀名 ctrl+H -->进行find replace的修改 -->save All /保存全部-->esc退出

第二步

     1)抽离公共类 ,将所有公共类存储在一个文件夹中,在对应页面中引入公共文件。

<?php include 'public/header.php' ?>  //载入文件失败时(即没有找到该文件),报一个“提示错误”,然后继续执行后续代码, 重复载入    
<?php include_once 'public/header.php' ?>  载入文件失败时,报错,继续执行后续代码,只载入一次 不重复载入
<?php require 'public/header.php' ?>  //载入文件失败时,报错并立即终止执行。重复载入
<?php require_once 'public/header.php' ?> 载入文件失败时,报错并立即终止执行。只载入一次

      2)建立公共类页面和数据库的关系

<?php
// 连接数据库
$connect=mysqli_connect(DB_HOST,DB_USER,DB_PWD,DB_NAME);
// 写sql
$sql="select * from categories where id!=1";
// 执行sql
$result=mysqli_query($connect,$sql);//查询获取的是结果集 还不能直接用 需要while循环拿出来
// var_dump($result);
$arr=[];//空数组
while($row=mysqli_fetch_assoc($result)){
    // print_r($row);//循环一次拿出一行 是一个数组
    $arr[]=$row;//把数据放入$arr数组
}

   3)动态渲染到页面,数据动态的进行更改

 <?php foreach($arr as $value) : ?>
            <li><a href="list.php?categoryId=<?php echo $value['id'] ?>"><i class="fa <?php echo $value['classname'] ?>"></i><?php echo $value['name'] ?></a></li>
        <?php endforeach ?> //<a href="list.php?categoryId=<?php echo $value['id'] ?>">跳转到下一层页面,并带着对应的id值

第三步

1)根据数据库中的数据动态生成结构

     1>书写配置文件:新建一个php文件-->书写php的配置文件 config.php(建立数据库跟服务器之间的关联)

<?php 
//$localhost='localhost';//变量 可以随便更改
//数据库的主机//如果不是自己电脑作为服务器进行传输,不可以使用localhost,指的是本机的的地址
//define('名字',值);常量 一旦定义好了值就永远是那个不能修改了,修改就报错、
//数据库主机
	define('DB_HOST','localhost');
//数据库的用户名
	define('DB_USER','root');
//数据库的密码
	define('DB_PWD','root');
//数据库的名字
	define('DB_NAME','db_baixiu');
?>

2>引入配置文件

        1)引入配置文件到所有需要数据更新的网页php文件中(浏览器端展示的网页需要引入配置文件,抽离出来的公共类文件不需要引入配置文件)。

require_once 'config.php';

2)连接数据库(建立当前php页面和数据库之间的连接) /(所有需要数据库传输数据的页面都有要连接数据库)

$connect=mysqli_connect(DB_HOST,DB_USER,DB_PWD,DB_NAME);

3)准备sql语句,进行数据的查询(先在数据库中进行查询)

公共类样式中数据查询:
$sql="select * from categories where id!=1";
页面中:$sql="select p.title,p.feature,p.content,p.created,p.views,p.likes,u.nickname,c.name,(select count(id) from comments where post_id=p.id ) as commentsCount
       from posts p
       left join categories c on c.id=p.category_id
       left join users u on u.id=p.user_id
       where p.category_id={$categoryId}
       limit 10";

4)执行查询操作(得到的是一个数据集)

$result=mysqli_query($connect,$sql);

5)把数据集转化成二维数组(网页和公共类中都需要将结果转换成二维数组)

<code class="language-php">// mysql_fetch_assoc() -- 从结果集中取得一行作为关联数组    
// mysql_fetch_row()   --从结果集中获取索引数组    
//mysql_fetch_array()  -- 两者皆有  
$postArr=[];    
while($row=mysqli_fetch_assoc($postResult)){  
    $postArr[]=$row;  
}

6)封装数据库连接(并且对应的引入对应的文件,并且调用文件中自己所需要的函数)(index/list)文件均需要以此方法进行遍历引入

<?php
// 连接数据库
function connect(){
    $connect=mysqli_connect(DB_HOST,DB_USER,DB_PWD,DB_NAME);
    return $connect;
}
// 查询  调用函数的地方就得到了 那个函数的返回值
// query()
function query($connect,$sql){
    $result=mysqli_query($connect,$sql);//结果集
    return fetch( $result );
}
// 转成成二维数组
function fetch($result){
    $arr=[];
    while($row=mysqli_fetch_assoc($result)){
        $arr[]=$row;
    }
    return $arr;
}
?>

7)遍历二维数组(所有动态需要更新的文档都需要进行数组的遍历动态生成)(index/list)文件均需要以此方法进行遍历引入

  <h3><?php  echo $postArr[0]['name']  ?></h3>
  <?php  foreach($postArr as $value) :  ?>
    <div class="entry">
      <div class="head">
        <a href="detail.php"> <?php  echo $value['title']  ?></a>
      </div>
      <div class="main">
        <p class="info"><?php  echo $value['nickname']  ?> 发表于 <?php  echo $value['created']  ?></p>
        <p class="brief"> <?php  echo $value['content']  ?></p>
        <p class="extra">
          <span class="reading">阅读(<?php  echo $value['views']  ?>)</span>
          <span class="comment">评论(<?php  echo $value['commentsCount']  ?>)</span>
          <a href="detail.php" class="like">
            <i class="fa fa-thumbs-up"></i>
            <span>赞(<?php  echo $value['likes']  ?>)</span>
          </a>
          <a href="javascript:;" class="tags">
            分类:<span><?php  echo $value['name']  ?></span>
          </a>
        </p>
        <a href="javascript:;" class="thumb">
          <img src="static/uploads/hots_2.jpg" alt="">
        </a>
      </div>
    </div>
  <?php  endforeach  ?>


        











































 

猜你喜欢

转载自blog.csdn.net/weixin_42663701/article/details/80993646