程序分三个板块,

现在先不用 css 和 javascript     先用纯 html  php  写吧。 所以那些 嵌入式 <font  size=....  什么的看看就算了,不推荐如此使用。

为了纪念第一个所谓的程序,遂贴上代码

PHP 对MySQL 的处理,之前一直用 过程方法描述,如$resul =  mysql_select_db($db_name);得到的一直是一堆堆警告信息,结果与数据库联系异常...

最后改成了  用面向对象的方式, $result = $conn -> select_db($db_name);  姑且可以用了....

不过用面向对象的方法还不是很熟练...要多练...

最后页面表示如此..

提交之前

提交之后

然后就是一大堆的 下一页下一页咯....

主要实现过程:

第一  :主页面   显示留言内容以及链接处理。

php 格式文件动态网页,进入时马上与数据库连接,并获取数据库中数据表对应数据。

采用分页管理,页数随数据库中留言内容数量决定。

有“ 我要留言”  与 “管理员" 两项, 前者可留言,后者可对留言板进行删除等操作。

<html>
<head>
<meta http-equiv="Conten-type" content="text/html"; charset="gb2312">
<title> 留言板..</title>
</head>
<body>
<div align="center"><font face="黑体"><h2>PHP--connect--MySQL--【留言板】</h2></font></div>
<?php
include "counter.php";
echo "<br><br><br>";
$conn = mysqli_connect("localhost","root","my_passwd");
/*
$db_name = "tools";
$db_name1 = "money";
$command = "create database man";
$command1 = "drop database if exists ".$db_name1;
$re = $conn -> query($command);
if(!$re)
{
echo "建立--失败<br>".mysqli_error($conn);
echo "<br>";
}
*/
$conn-> select_db("Guest_book");
$conn -> query("set names gb2312"); $pageSize = 2;
//@ 为了禁止此语句报错..总是出错...
@ $pageNum = $_GET['pageNum'];
if($pageNum==NULL) $pageNum = 1;
$re1 = $conn ->query("select count(*) from contents");
$re =$re1 -> fetch_row() ; // mysqli_fetch_row($re1);
$totalcount = $re[0];
$exec = "select * from contents limit ".(($pageNum -1) * $pageSize);
$result = $conn ->query($exec);
$flag = true;
while($re = $result->fetch_object())
{
$global["flag"] = false;
echo "<table><tr><td>姓名:".$re->name."</td></tr>";
echo "<tr><td>留言:".$re->content."</td></tr></table><br>";
echo "************************************************************************************";
echo "<br>";
}
if($flag==true)
echo "请点击下一页 ~~<br> <br>"; if($pageNum > 1)
{
echo "<a href=test.php?pageNum=".($pageNum-1).">前一页 &nbsp;&nbsp;</a>";
}
else
echo "前一页 &nbsp;&nbsp;";
if($pageNum < $totalcount / $pageSize)
{
echo "<a href=test.php?pageNum=".($pageNum+1).">下一页</a>";
}
else
echo "下一页";
?>
<div align="center"><a href="message_post.html" target="_blank">
<font size="+2" face="楷体"><p>我要留言</p></font></a></div>
<div align = "center"><a href="admin_login.html" target="_blank">
<font size="+1" face="楷体" >留言板管理</font></a></div>
</body>
</html>

同时网页上有计数器,可直接计算,通过本地文件读取,或者也可以数据库交换数据(用 counter.php 文件管理)

<?php
function counter1(){
$five = '00000';
$four = '0000';
$three = '000';
$two= '00';
$one = '0';
$counters = 'record.dat';
if(!file_exists($counters))
{
$counter = fopen($counters,w);
fputs($counter,0);
fclose($counter);
}
else{
$fp = fopen($counters,'r+');
$num = fgets($fp,'1024');
$num = $num + 1;
if($num <10)
print '$five'.$num;
else if($num <100)
print $four.$num;
else if($num <1000)
print $three.$num;
else if($num <10000)
print $two.$num;
else if($num <100000)
print $one.$num;
else print $num;
$fp = fopen($counters,'w');
fputs($fp,$num);
fclose($fp);
}
}
?>
<html><head><body>
<font size="6" face="楷体">
访问者之 -----
</font>
<b>
<font size="9" face="verdana" color="#aacc00">
<?php counter1() ?>
</font>
</b>
<font size="6" face="楷体"> -----</font></body>
</head></html>

二   留言  并 将数据存入数据库

其实就是简单的数据更新

<?php
$name = $_POST['user'];
$content = $_POST['post_content'];
$conn = mysqli_connect("localhost","root","Empty_");
if(!$conn) echo "连接数据库失败<br><br>";
else echo "连接数据库成功<br><br>"; $conn->query("set names gb2312");
$conn->select_db("guest_book");
$exec = "insert into contents (name,content) values ('".$_POST['user']."','".$_POST['post_content']."')";
$result = $conn->query($exec) or die ("失败 ".mysqli_error()); if($result>0)
{
echo "添加留言成功<br>";
}
else {
echo "添加失败。。";
echo "<p><a href=test.php><center> 返回主页面</center></a>";
}
?>
<html> <head><meta http-equiv="refresh" content="3;URL=test.php"></head>
<body><p> 三秒后自动返回..</p></body></html>

三 : 管理登录

也是简单的描述

<html>
<title> 后台管理</title>
<body>
<center><font face="黑体" ><h2> 管理登陆</h2></font>
<form action="#" method="post" name="form2">
管理员账号: <input type="text" name="admin_name"><br>
管理员密码: <input type="password" name="admin_password"><br> <input type="submit" value="登录">
<input type="reset" value="重置">
</form>
</center>
</body>
</html>

差不多也就这样了,程序实现功能少,但能基本体现一些后台数据的交流。

*********************************************************华丽分割线***********************************************

既之前的基础,先写个简单的PHP 与数据库 的数据交流的更多相关文章

  1. koa 基础(二十一)nodejs 操作mongodb数据库 --- 查询数据

    1.app.js /** * nodejs 操作mongodb数据库 * 1.安装 操作mongodb * cnpm install mongodb --save * 2.引入 mongodb 下面的 ...

  2. koa 基础(二十)nodejs 操作mongodb数据库 --- 新增数据

    1.app.js /** * nodejs 操作mongodb数据库 * 1.安装 操作mongodb * cnpm install mongodb --save * 2.引入 mongodb 下面的 ...

  3. 用Python写一个简单的Web框架

    一.概述 二.从demo_app开始 三.WSGI中的application 四.区分URL 五.重构 1.正则匹配URL 2.DRY 3.抽象出框架 六.参考 一.概述 在Python中,WSGI( ...

  4. 如何写一个简单的http服务器

    最近几天用C++写了一个简单的HTTP服务器,作为学习网络编程和Linux环境编程的练手项目,这篇文章记录我在写一个HTTP服务器过程中遇到的问题和学习到的知识. 服务器的源代码放在Github. H ...

  5. 分享:计算机图形学期末作业!!利用WebGL的第三方库three.js写一个简单的网页版“我的世界小游戏”

    这几天一直在忙着期末考试,所以一直没有更新我的博客,今天刚把我的期末作业完成了,心情澎湃,所以晚上不管怎么样,我也要写一篇博客纪念一下我上课都没有听,还是通过强大的度娘完成了我的作业的经历.(当然作业 ...

  6. linux设备驱动归纳总结(十一):写个简单的看门狗驱动【转】

    本文转载自:http://blog.chinaunix.net/uid-25014876-id-112879.html linux设备驱动归纳总结(十一):写个简单的看门狗驱动 xxxxxxxxxxx ...

  7. iOS开发UI基础—手写控件,frame,center和bounds属性

    iOS开发UI基础—手写控件,frame,center和bounds属性 一.手写控件 1.手写控件的步骤 (1)使用相应的控件类创建控件对象 (2)设置该控件的各种属性 (3)添加控件到视图中 (4 ...

  8. [lua]写个简单的Lua拓展-sleep函数

    这几天在做一个小项目,其中用到了一些基本的API, 例如sleep,获取当前目录等等,lua标准库中没有提供这些接口,虽然所第三方库中也都有实现,但是要用的就那么几个函数,在一个嵌入式系统中安装那么多 ...

  9. day08文件操作的三步骤,基础的读,基础的写,with...open语法,文件的操作模式,文件的操作编码问题,文件的复制,游标操作

    复习 ''' 类型转换 1.数字类型:int() | bool() | float() 2.str与int:int('10') | int('-10') | int('0') | float('-.5 ...

随机推荐

  1. python 模拟普通用户和管路员登录购物系统小程序

    程序功能描述如下:不同角色登录,普通用户可以查看商品购买商品.查看购物车和余额.退出:管理员可以充值,可以添加商品.退出 用户信息字典格式: { '', 'money': 14435.76, 'car ...

  2. 初识GitHub与Git

    在初次接触GitHub的时候,英语渣渣本渣真是深感无奈啊..... ORZ 在好友的帮助下,也算是初步入门了吧. 谨以此文作为初级使用手册记录,希望能帮助到你. 一.首先要申请一个GitHub账户 二 ...

  3. 请教如何用ASP.NET实现http://abc.com/orderID这样的URL???

    我查看了一下微信二维码的内容是:https://u.wechat.com/XXXXXXXXX这种格式. 我现在想把我们的订单URL也做成 http://abc.com/orderID这样子,做成二维码 ...

  4. 1002. Find Common Characters

    Given an array A of strings made only from lowercase letters, return a list of all characters that s ...

  5. win32 音视频相关 api

    waveInGetNumDevs waveInGetDevCaps waveInOpen waveInGetDevCaps waveInPrepareHeader waveInAddBuffer wa ...

  6. window主机和centos主机之间相互传送文件

    命令实现linux和window文件传送 一:下载配置pscp软件从http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html下载p ...

  7. elasticsearch geo_point 地理位置过滤 按经度排序

    elasticsearch 支持强大的经纬度坐标过滤. 1.首先要建立坐标类型的字段'type' ='geo_point' es存储的值是这样的: "poi": [        ...

  8. [bug]小程序弹出层滚动穿透问题修复

    如题,解决方案有两种: 1.如果弹出层没有滚动事件,就直接在蒙板和弹出层上加 catchtouchmove;(方便快捷) <template name="popup-modal&quo ...

  9. 在vue项目中安装使用Mint-UI

    一.Mint UI 是 由饿了么前端团队推出的 一个基于 Vue.js 的移动端组件库,具有以下特性:       使用文档: http://mint-ui.github.io/#!/zh-cn Mi ...

  10. POJ 1032

    #include<iostream> using namespace std; int main() { int n; int num; ; int i,j; cin>>num ...