从数据库获取数据

// 服务器连接文件引入并连接

require_once 'config.php';

mysqli_connect参数:主机,用户名,密码,数据库名

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

// 下面这段是联表查询

$sql = "select p.title,p.created,p.content,p.views,p.likes,p.feature,c.`name`,u.nickname,

// 查找评论条数 count()可以获取总长数、数据条数,

// 获取comments中符合post_id = p.id条件的数据的总条数并生成一个单元头为commentsCount的单元格

(SELECT COUNT(id) from comments WHERE post_id = p.id) as commentsCount

from posts p

// posts是数据库名,后面加一个字母p是别名,方便写。

//LEFT JOIN  表名 on              连表查询语句。

LEFT JOIN categories c ON c.id = p. category_id

LEFT JOIN users u ON u.id = p.user_id

WHERE c.id != 1

// order by 排序,desc是倒叙

ORDER BY p.created DESC

//  LIMIT  只展示5条数据

LIMIT 5";

// 执行查找sql语句并转化为数组  添加到普通数组中方便获取数据(固定格式);

$postRequest = mysqli_query($conn,$sql);

$res1 = [];

while($row = mysqli_fetch_assoc($postRequest)){

  // 数组名后面加上中括号表示将数据往数组中叠加

  $res1[] = $row;

}

print_r($res1);

?>


此时获取的数据格式为数组,就可以直接渲染了:

Array

(

    [0] => Array

        (

            [title] => 第三篇示例文章

            [created] => 2017-07-01 14:00:00

            [content] => 欢迎使用阿里百秀。这是一篇示例文章

            [views] => 40

            [likes] => 100

            [feature] => http://dummyimage.com/800x600/79a2f2&text=zce.me

            [name] => 会生活

            [nickname] => 管理员

            [commentsCount] => 52

        )

    [1] => Array

        (

            [title] => 第二篇示例文章

            [created] => 2017-07-01 12:00:00

            [content] => 欢迎使用阿里百秀。这是一篇示例文章

            [views] => 20

            [likes] => 120

            [feature] => http://dummyimage.com/800x600/79a2f2&text=zce.me

            [name] => 奇趣事

            [nickname] => 管理员

            [commentsCount] => 62

        )

    [2] => Array

        (

            [title] => 适万长

            [created] => 2017-06-22 12:09:32

            [content] => 来儿南为开阶展头少技理声。是战火例多发价以况引机身西速识两连。置养后红和那带矿部门其交。认万建毛美了命平走断命高要反。学出走除据号可空力应基南状准除习。连感动证极只查应选周对天在空布按。日二江向农使门下八期住较边水交放较。构龙把种数术对会年政值价但例却题。要文根信七清划共界广深要指来导。包头然大东过联安与重度加农全带成后。可系说交自或上委构要意金性构习党。数时名史然话气张可少应石列结特示。

            [views] => 189

            [likes] => 170

            [feature] => http://dummyimage.com/800x600/f2c379&text=zce.me

            [name] => 会生活

            [nickname] => 汪磊

            [commentsCount] => 0

        )


按需加载数据(点击加载更多一次显示N条):

// 处理页面按需加载的功能:SQL语句规律分析

// 假设一次加载10条 : 第一次  LIMIT 10

//                    第二次  LIMIT 10, 10

//                    第三次  LIMIT 20, 10

// 总结规律: 语句第一个参数等于 (当前次数 - 1)* 要加载的条数

 //   完整语句:LIMIT (当前次数 - 1)* 要加载的条数  要加载的条数

你可能感兴趣的:(从数据库获取数据)