PHP经典项目案例-(一)博客管理系统2

本篇给出数据库设计,及首页界面实现,验证码实现代码。

五、数据库设计

1、数据库表结构

2、文章表

3、注册用户表

4、图片表

5、文章评论表

6、评论回复表

7、公告表

8、好友表

六、首页验证码实现(借鉴别人的)

verifycode.php

<?php
 /*
  图片验证码
   */
  session_start();
  $num=4;//验证码个数
  $width=60;//验证码宽度
  $height=18;//验证码高度
  $code=' ';
  for($i=0;$i<$num;$i++)//生成验证码
  {
   switch(rand(0,2))
   {
    case 0:$code[$i]=chr(rand(48,57));break;//数字
    case 1:$code[$i]=chr(rand(65,90));break;//大写字母
    case 2:$code[$i]=chr(rand(97,122));break;//小写字母
   }
  }
  $_SESSION["VerifyCode"]=$code;//使用session用于登陆时验证
  $image=imagecreate($width,$height);
  imagecolorallocate($image,255,255,255);
  for($i=0;$i<80;$i++)//生成干扰像素
  {
   $dis_color=imagecolorallocate($image,rand(0,255),rand(0,255),rand(0,255));
   imagesetpixel($image,rand(1,$width),rand(1,$height),$dis_color);
  }
  for($i=0;$i<$num;$i++)//打印字符到图像
  {
   $char_color=imagecolorallocate($image,rand(0,2555),rand(0,255),rand(0,255));
   imagechar($image,30,($width/$num)*$i,rand(0,5),$code[$i],$char_color);
  }
  header("Content-type:image/png");
  imagepng($image);//输出图像到浏览器
  imagedestroy($image);//释放资源
?> 

在首页登陆那一栏使用这一表单:

<form action="login.php" method="post">
<span style="white-space:pre">	</span>用户名:<input type="text" name="username" id="username" size="10" />
        密码:<input type="password" name="password" id="password" size="10" />
        验证码:<input type="text" name="chknum" id="chknum" size="10" />
        <img id="imgcode" src="VerifyCode.php" alt="验证码" align="bottom" onClick="javascript:refresh_code()"/>
        <input name="submit" type="submit" value="登陆" style="FONT-SIZE: 9pt"/>
</form>

在验证码图片上添加响应动作,刷新验证码onClick="javascript:refresh_code()"

在js文件里实现这个动作

function refresh_code()
{
	document.getElementById('imgcode').src="verifycode.php?a="+Math.random();
}

传递的a值只是为了实现刷新,也就是加载不同的验证码页面,也就实现了刷新。

时间: 2024-12-29 11:13:08

PHP经典项目案例-(一)博客管理系统2的相关文章

PHP经典项目案例-(一)博客管理系统1

在基本学习了PHP的基础知识之后,自己开始尝试一些经典的项目案例.于是我借了一本关于PHP项目开发的书,然后找到了这个博客管理系统.(最经典的是留言板,但是我考虑了一下留言板,数据库设计稍微简单一点,所以我选择了这个)我去网上下载了源代码,但是之后发现源代码很多错误,还有一些数据库的知识用的是mysql库的,这样就算程序正确,运行时也会警告.因为mysql库的函数将被逐渐被替代.所以我用了五天的时间,在他的素材基础上,将所有的后台(也就是PHP代码块)重写,前端界面只是把它里面的错误改正使程序能

Hadoop集群(第9期)_MapReduce初级案例 - 虾皮 - 博客园

body{ font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI",Tahoma,Helvetica,Sans-Serif,"Microsoft YaHei", Georgia,Helvetica,Arial,sans-serif,宋体, PMingLiU,serif; font-size: 10.5pt; line-height: 1.5;}

在线博客管理系统

本毕业设计对博客系统的操持与开拓过程进行了阐发与描写.按照系统开拓的理论操纵步伐,文章从系统概述.系统阐发.系统分析和系统实现这四大章节对系统开拓过程进行别离叙说.系统概述中主要进行了课题背景.课题含意和近况阐发:系统阐发中主要搜罗了系统操持前的需要阐发.业务流程阐发.数据流程阐发和数据字典阐发:而系统分析则是对系统琐细结构.模块.数据库结构操持等详细的系统实现过程进行阐进行示,在系统操持章节中有详细的说明并配有表图阐明.文章还列举了关头的遵命模块实现代码.本文力图博客系统开发找到到一种切实可行

PHP经典项目案例-(一)博客管理系统5

本篇实现发表博客. 八.发表博客 (1).界面实现file.php <tr>      <td colSpan=3 valign="baseline" style="BACKGROUND-IMAGE: url( images/bg.jpg); VERTICAL-ALIGN: middle; HEIGHT: 450px; TEXT-ALIGN: center">     <table width="100%" heig

iOS_CNBlog项目开发 (基于博客园api开发)

按照惯例, 先上效果图 前言 很巧, 做这个项目是因为刚好在逛博客园的时候看到一篇文章 博客园第三方客户端-i博客园正式发布App Store, 这里就帮忙贴下链接啦, 毕竟我是由此而想说做这个项目的. 然而更巧的是, 和那篇文章的作者一样, 我也是刚毕业要找实习的人了(/(ㄒoㄒ)/~~), 开发容易找工不易, 哎, 做个项目练练手吧. 然后, 整个项目做下来大概做了半个月吧, 今天算是做出1.0版本啦, 已经贴上github(https://github.com/samAroundGitHu

git bash管理项目/github个人博客

1.下载安装:http://jingyan.baidu.com/article/7f766dafba84f04101e1d0b0.html 2.验证公钥:https://git-scm.com/book/zh/v1/%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E7%9A%84-Git-%E7%94%9F%E6%88%90-SSH-%E5%85%AC%E9%92%A5 http://blog.csdn.net/hustpzb/article/details/82304

大数据技术之_05_Hadoop学习_04_MapReduce_Hadoop企业优化(重中之重)+HDFS小文件优化方法+MapReduce扩展案例+倒排索引案例(多job串联)+TopN案例+找博客共同粉丝案例+常见错误及解决方案

第6章 Hadoop企业优化(重中之重)6.1 MapReduce 跑的慢的原因6.2 MapReduce优化方法6.2.1 数据输入6.2.2 Map阶段6.2.3 Reduce阶段6.2.4 I/O传输6.2.5 数据倾斜问题6.2.6 常用的调优参数6.3 HDFS小文件优化方法6.3.1 HDFS小文件弊端6.3.2 HDFS小文件解决方案第7章 MapReduce扩展案例7.1 倒排索引案例(多job串联)7.2 TopN案例7.3 找博客共同粉丝案例第8章 常见错误及解决方案 第6章

emblog个人博客管理系统后台升级编辑kindeditor到最新版本 详细步骤

emblog一直用的简约版的kindeditor,最近下载了 第一步官方下载下载kindeditor,也可以用我整理好的直接下载覆盖就行 http://www.minxtblog.com/content/uploadfile/file/20160912/20160912144408_95359.zip 第二修改一下:admin/views/write.php 将: loadEditor('content'); loadEditor('excerpt'); 替换成 var KE,KEE; Kind

PHP经典项目案例-(一)博客管理系统4

本篇使用Ajax实现页面无刷新验证用户名是否存在. 七.注册页面实现 1.注册页面设计 register.php部分代码: <tr> <!-- 注册表 --> <td colSpan=3 valign="baseline" style="BACKGROUND-IMAGE: url( images/bg.jpg); VERTICAL-ALIGN: middle; HEIGHT: 450px; TEXT-ALIGN: center">

PHP经典项目案例-(一)博客管理系统3

本篇给出首页左侧导航栏及右部公告区的实现. 六.左侧导航栏: 1.日历: 这里单独一个php文件,在显示日历的那个地方直接引用该文件即可: cale.php <?php class calendar{ private $year,$month,$day; private $week=array("Sun","Mon","Tue","Wed","Thu","Fri","Sa