PHP学习与评论区制作
为了更好地了解web,这一周我重新学习了一下php、html、css等。
为了有更好的效果,我通过做一个评论区作品来学习。
最终效果如下:
输入:小智:我是真新镇的小智,今年10岁,我的梦想是成为神奇宝贝大师。
结果成功,如下
收获
:通过这个过程我更加了解从网页到代码,从网页到数据库这样一个过程,还有POST与GET请求。
对于PHP,CSS,HTML也更加熟悉,更能理解每一行代码的作用了。
*
#代码
*(文件一)boosrtap.php://网页布局等
<?php
include('db.php');
$sql="select *from msg order by id desc;";
$sth=$pdo->prepare($sql);
$sth->execute();
$rows=$sth->fetchAll();
?>
<!doctype html>
<html lang="en">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!-- Bootstrap CSS -->
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" >
<title>评论区</title>
</head>
<body>
<div class="container">
<div class="jumbotron">
<h1 class="display-4">Pokemmo社区</h1>
<p class="lead">为学习php做<p>
</div>
<form action='save.php' method='POST'>
<div class='row'>
<div class='col-12'>
<div class="form-group">
<textarea name='content' class="form-control" rows='5'></textarea>
</div>
</div>
<div class='col-1'>
<div class="form-group">
<div>用户名:</div>
</div>
</div>
<div class='col-3 d-flex'>
<div class="form-group mr-auto">
<input name='username'class="form-control" type='text'/>
</div>
</div>
<div class='col-8 d-flex'>
<div class="form-group ml-auto">
<input class='btn btn-primary' type='submit' value='提交'/>
</div>
</div>
</div>
<form>
<div class='row'>
<div class='col-12'>
<?php
foreach($rows as $key=>$msg){
?>
<div class='border rounded p-2 mb-2'>
<div class='text-primary'>用户名:<?php echo $msg['username'];?></div>
<div>评论内容:</div>
<p><?php echo $msg['content'];?><p>
</div>
<?php
}
?>
</div>
</div>
</div>
</body>
</html>
(文件二)save.php:完成POST提交请求
<?php
$username=$_POST['username'];
$content=$_POST['content'];
//var_dump($username,$content);
if(trim($username)==''||trim($content)==''){
echo '用户名与留言不能为空';
exit;
}
if($username=='admin'||$username=='root'){
echo '用户名与留言不能为敏感字';
exit;
}
include('db.php');
//输入
$sql="insert into msg (username,content) values('{$username}','{$content}');";
$sth=$pdo->prepare($sql);
$sth->execute();
//输入后跳转index
header('location: boostrap.php');
?>
(文件三)db.php://连接数据库
<?php
/**
* 1.连接数据库
* 2.编写SQL
* 3.执行SQL
*/
$dsn='mysql:dbname=test;host=127.0.0.1;';
$pdo=new PDO($dsn,'root','',array(PDO::MYSQL_ATTR_INIT_COMMAND => "set names utf8"));
**
数据库
**:极其简单数据库