PHP基础知识总结(四) 留言板例子 知识应用
1、留言板显示页面:note.php
<?php $host = "127.0.0.1";
$user = "root";
$pwd = "zst@123";
$dbname = "php10";
$db = new mysqli($host, $user, $pwd, $dbname);
if($db->errno <> 0){
echo "数据库连接失败";
exit;
}
$sql = "select * from msg where id>15 order by id desc";
$mysqli_result = $db->query($sql);
if($mysqli_result == false){
echo "查询语句执行失败";
exit;
} $rows = [];
while($row = $mysqli_result->fetch_array(MYSQLI_ASSOC)){
$rows[] = $row;
}
//var_dump($rows); ?>
<html>
<head>
<meta charset="UTF-8"/>
<title>留言本</title>
<!--<link rel="stylesheet" type="text/css" href="test.css"> -->
<style type="text/css">
.wrap{
width: 800px;
margin: 0px auto;
}
.add{
overflow:hidden; <!--消除float-->
}
.add .content{
width: 798px;
margin: 0px;
padding: 0px;
}
.add .user{
float: left;
}
.add .btn{
float: right;
}
.msg{
margin: 20px 0px;
background: #ccc;
padding: 5px;
}
.msg .info{
overflow: hidden;
}
.msg .user{
float:left;
color: blue;
}
.msg .time{
float: right;
color:999;
}
.msg .content{
width: 100%;
} </style>
</head>
<body>
<div class="wrap">
<!--发表留言-->
<div class="add">
<form action="messageboard_class.php" method="post">
<textarea name="content" class="content" cols="50" rows="5"></textarea>
<br/>
<input name="user" class="user" type="text"/>
<input class="btn" type="submit" value="发表留言"/>
</form>
</div>
<!--查看留言 -->
<?php
//设置日期时区,否则会少7小时
date_default_timezone_set("Asia/Shanghai");
foreach ($rows as $key => $record) { ?>
<div class="msg">
<div class="info">
<span class="user"><?php echo $record["user"]; ?></span>
<span class="time"><?php echo date('Y-m-d H:i:s', $record["intime"]); ?></span>
</div>
<div class="content">
<?php echo $record["content"]; ?>
</div>
</div>
<?php
}
?>
</div>
</body>
</html>
2、提交留言后台处理:messageboard_class.php
<?php
include("messageboard_class_import.php"); //过滤留言名称的类
include("connect.php"); //数据库连接工具类 //var_dump($_POST);
$content = $_POST['content'];
$user = $_POST['user']; //使用包含文件中的类,初始化input类对象
$input = new input(); if($input -> valid($content) == false){
die("输入的内容不能为空!"); //die方法:停止程序,在页面上显示内容
}
if($input -> valid($user) == false){
die("输入的用户名为空或不合法!");
} //var_dump($_POST); /* 插入语句 */
//设置日期时区,否则会少7小时
date_default_timezone_set("Asia/Shanghai");
$time = time();
echo date("Y-m-d H:i:s", $time);
$sql = "insert into msg(content, user, intime) values('{$content}', '{$user}', '{$time}')";
$connectClass = new conClass();
$db = $connectClass->getDB();
$is = $db->query($sql);
if($is == true){
echo "执行成功";
}else{
echo "执行失败";
} //重定向浏览器访问
header("Location:note.php"); /*
//查询语句
$sql = "select * from msg where id > 15 order by id desc";
$con = new conClass();
$db = $con -> getDB();
$mysqli_result = $db ->query($sql);
if($mysqli_result == false){
echo "SQL 错误";
exit;
} //定义一个数组
$rows = [];
while($row = $mysqli_result->fetch_array(MYSQLI_ASSOC)){
$rows[] = $row; //rows 数组不写下标,意思是从0开始;
}
var_dump($rows); //可以看出是一个二维数组,键从0开始,值是每一行的数据(一维数组表示)
*/
?>
过滤留言名称的类 messageboard_class_import.php
<?php class input{
public function valid($info){
if($info == ""){
return false;
} //禁止使用某个用户名留言
$note = ['张三', '李四', '王乐'];
foreach($note as $name => $value){
//echo $name;
if($info == $value){
return false;
}
} return true;
}
} ?>
数据库连接工具类connect.php
<?php class conClass{
//写入数据库 public function getDB(){
$host = "127.0.0.1";
$dbuser = "root";
$passwd = "zst@123";
$dbname = "php10";
$db = new mysqli($host, $dbuser, $passwd, $dbname);
if($db->errno <> 0){
return null;
}
return $db;
} } ?>
PHP基础知识总结(四) 留言板例子 知识应用的更多相关文章
- ajax练习四留言板
留言界面 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...
- thinkphp留言板例子(多条件查询)
登录: login.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "htt ...
- IM开发基础知识补课(四):正确理解HTTP短连接中的Cookie、Session和Token
本文引用了简书作者“骑小猪看流星”技术文章“Cookie.Session.Token那点事儿”的部分内容,感谢原作者. 1.前言 众所周之,IM是个典型的快速数据流交换系统,当今主流IM系统(尤其移动 ...
- JavaWeb 例子 JDBC+JSP登陆注册留言板
注册页面: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEnc ...
- Django web框架开发基础-django实现留言板功能
1.创建项目 cmd django-admin startpoject cloudms 2.创建APP cmd django-admin startapp msgapp 3.修改settings,T ...
- [js高手之路] vue系列教程 - 实现留言板todolist(3)
通过前面两篇文章的的学习,我们掌握了vue的基本用法. 本文,就利用这些基础知识来实现一个留言板, 老外把他称之为todolist. 第一步.使用bootstrap做好布局 <!DOCTYPE ...
- JSP简易留言板
写在前面 在上篇博文JSP内置对象中介绍JSP的9个内置对象的含义和常用方法,但都是比较理论的知识.今天为大家带来一个小应用,用application制作的简易留言板. 包括三个功能模块:留言提交.留 ...
- Repeater+AspNetPager+Ajax留言板
最近想要巩固下基础知识,于是写了一个比较简单易懂实用的留言板. 部分样式参考了CSDN(貌似最近一直很火),部分源码参照了Alexis. 主要结构: 1.前期准备 2.Repeater+AspNetP ...
- html的留言板制作(js)
这次留言板运用到了最基础的localstorage的本地存储,展现的效果主要有: 1.编写留言2.留言前可以编辑自己的留言昵称.不足之处: 1.未能做出我喜欢的类似于网易的叠楼功能. 2.未能显示评论 ...
随机推荐
- 剑指offer---4、序列化二叉树
剑指offer---4.序列化二叉树 一.总结 一句话总结: 1. 对于序列化:使用前序遍历,递归的将二叉树的值转化为字符,并且在每次二叉树的结点不为空时,在转化val所得的字符之后添加一个' , ' ...
- python input() 与raw_input()
使用input和raw_input都可以读取控制台的输入,但是input和raw_input在处理数字时是有区别的1:纯数字输入 当输入为纯数字时 input返回的是数值类型,如int,float ...
- C++ win32 dll 引用外部CLR,加载托管程序集异常-Error 10 error LNK2019: unresolved external symbol _CLRCreateInstancet
异常: Error 10 error LNK2019: unresolved external symbol _CLRCreateInstance@12 referenced in function ...
- Ionic4 入门
1.搭建环境 1.电脑安装node.js,安装后电脑会自动安装npm 2.通过cmd命令,安装cnpm npm install -g cnpm -registry=https://regist ...
- code for QTP and ALM
'==========================================================================' Name: connectALM' Summa ...
- BPT(Business Process Testing)
- ThinkPHP3.2.3 目录介绍
ThinkPHP3.2.3 目录介绍,在开发中主要操作的目录就是在入口文件www/index.php中定义的www/application/文件目录了. www WEB部署目录 ├─index.ph ...
- python基础--二分查找
# 二分查找 def sort_search(lst,key): """ 二分查找 :param lst: 有序数列 :param key: 要查找的关键值 :retur ...
- how to prevent lowmemorykiller from killing processes
Hi there, I've upgraded a number of test systems to the latest Saucy beta. I've seen quite a few cas ...
- 【UR #5】怎样跑得更快
题目 给定\(n,c,d\)和序列\(\{b_i\}\),求一个序列\(\{x_i\}\)满足 \[\sum_{j=1}^n\gcd(i,j)^c\times \rm{lcm(i,j)^d}\time ...