例子
代码如下 | 复制代码 |
function encodeConvert($str,$fromCode,$toCode) if(is_string($str)){ } |
例子
代码如下 | 复制代码 |
/************************************************************** |
测试例子
代码如下 | 复制代码 |
$arr = array ( array ( 'catid' => '4', 'catname' => '一聚教程网', 'meta_title' => '一聚教程网2' ), array ( 'catid' => '55', 'catname' => 'php教程', 'meta_title' => 'http://www.111cn.net', ) );
|
输出结果如下
[{"catid":"4","catname":"一聚教程网","meta_title":"一聚教程网2"},{"catid":"55","catname":"php教程","meta_title":"http://www.111cn.net"}]
[{"catid":"4","catname":"\u4e00\u805a\u6559\u7a0b\u7f51","meta_title":"\u4e00\u805a\u6559\u7a0b\u7f512"},{"catid":"55","catname":"php\u6559\u7a0b","meta_title":"http:\/\/www.111cn.net"}]
下面是一个简单的留言板例子,包括创建mysql数据表与连接mysql数据库然后对数据表的查询,提交保存数据与数据删除功能,这其实就是一个最基本的留言板功能了,下面直接上例子。首先数据库的SQL如下:
代码如下 | 复制代码 |
-- -- 表的结构 `message` -- CREATE TABLE `message` ( `id` int(10) NOT NULL auto_increment, `user` varchar(25) character set utf8 NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=gbk AUTO_INCREMENT=11 ; |
程序代码如下:
首先创建config.php,代码如下:
代码如下 | 复制代码 |
<?php $conn = @mysql_connect("localhost","root","") or die("数据库连接出错!"); |
然后创建index.php,代码如下:
代码如下 | 复制代码 |
<form action="index.php" method="post"> <table border="1" align="center" > 用 www.111cn.net 户:<input type="text" name="user" /><br> <input type="submit" name="submit" value="php教程" /></table> </form> |
接受提交数据保存到数据表中
代码如下 | 复制代码 |
<?php include("config.php"); if($_POST['submit'] && !empty($_POST['title'])&& !empty($_POST['user'])&& !empty($_POST['content'])) { $sql="insert into message (id,user,title,content,lastdate) values ('','$_POST[user]','$_POST[title]','$_POST[content]',now())"; mysql_query($sql); //echo "成功"; }?> |
查询留言记录
代码如下 | 复制代码 |
<table width=500 border="1" align="left" cellpadding="5" cellspacing="1" bgcolor="#add3ef"> <?php $sql="select * from message order by id desc"; $query=mysql_query($sql); while($row=mysql_fetch_array($query)){ ?> <tr bgcolor="#eff3ff"> <td>标题:<?php echo $row[title];?> 用户:<?php echo $row[user];?></td> </tr> <tr bgColor="#ffffff"> <td>内容:<?php echo $row[content];?></td> </tr> <?php } ?> |
原理分析
先来看看入库吧,这个就是最基础的没有进行任何数据判断处理了
代码如下 | 复制代码 |
if($_POST['submit'] && !empty($_POST['title'])&& !empty($_POST['user'])&& !empty($_POST['content'])) { $sql="insert into message (id,user,title,content,lastdate) values ('','$_POST[user]','$_POST[title]','$_POST[content]',now())"; mysql_query($sql); //echo "成功"; }?> |
判断用户提交过来的数据是不是不为空
$_POST['submit'] && !empty($_POST['title'] && !empty($_POST['user'])&& !empty($_POST['content'] (这里主要是介绍到所有需要填写的不为空了)
安全分析,这个很容易给大家实现sql注入了,因为没进行任何过滤处理了哦,只要网随便搜索一段注入代码就可以成功注入了,同时可以重复无限提交数据
代码如下 | 复制代码 |
{ $sql="insert into message (id,user,title,content,lastdate) values ('','$_POST[user]','$_POST[title]','$_POST[content]',now())"; |
这一是保存到数据库,但没进行任何安全处理,一般情况我们不提倡直接把$_POST[user]入库的,是需要经过处理之后再进入变量传递进行入库哦,
查询数据库
代码如下 | 复制代码 |
$sql="select * from message order by id desc"; |
这三句代码实现了数据库查询了,其实也是非常的简单的,我们只是处理了查询并没有任务一些技术处理,如判断是否有值或一次读取多少条记录。
下面整理了一些关于PHP计算两个时间差的例子,希望这些例子能帮助你解决你在日期时间差之间的一些困扰哦,下面我们一起来看看吧。例子1
代码如下 | 复制代码 |
<?php $startdate="2011-3-15 11:50:00"; |
例子2
代码如下 | 复制代码 |
<?php /* 这个只是提示 echo "两个时间相差 $d 天 $h 小时 $m 分" |
总结,两个例子都使用到了strtotime函数把日期转换在时间戳之后再除以86400等操作来算出两个日期之间相差多少时间,从天数据到秒都计算机出来了。
下面转一站长写的PHP mysql备份与恢复的类实例了,这里面主要用到的是一个数据备份类与一个文件上传类了,我们结合它们两个就可以实现数据备份与文件恢复上传功能了,具体方法如下图所示。今天推荐的精品PHP代码就是mysql备份与恢复的类了,在一般的PHP网站中都会有在线mysql备份与恢复,这样做的好处是不用每次备份都要使用 phpmyadmin 或者是客户端的工具了,使用时将备份恢复的类 dbback.class.php 进行实例化就可以使用了。
这里直接附上该类作者的说明了:该类适用于小型的网站的数据库备份,内置MYSQL连接,只需要简单的配置数据库连接及存贮备份的位置即可,类实例化并且连接数据库以后可执行以下操作:
代码如下 | 复制代码 |
* get_db_table($database) 取得所有数据表 * export_sql($table,$subsection=0)) 生成sql文件,注意生成sql文件只保存到服务器目录,不提供下载 * import_sql($dir) 恢复数据只导入服务器目录下的sql文件 |
包里作者文件的说明如下:
一、之前有发过一个mysql的备份类,但是只有备份功能,今天花了点时间,对该类进行重写, 1.新增读取数据库内所有表格 2.新增mysql在线恢复 3.修改了mysql的下载试为保存到服务器,该类具有很强的灵活性与易用性,附上两张实际开发中的应用效果.
二、另外附加前几天写的一个文件上传类,类中有附说明
代码如下 | 复制代码 |
<?php /** /** /** /** /**
$fileInfo['file_name'] = date('ymdhms').'.'.$fileInfo['file_suffix']; }else{ $fileInfo[$i]['file_suffix'] = $this->get_suffix($putFile['name'][$i]); $fileInfo[$i]['file_name'] = date('ymdhms').rand().'.'.$fileInfo[$i]['file_suffix']; ?> |
备份类
代码如下 | 复制代码 |
<?php class data { /** /** $tableDom .= $create[1].";n"; $rows = mysql_query("SELECT * FROM $table"); /** /** /** } //$d = new data(); //连接数据库 //查找数据库内所有数据表 //备份并生成sql文件 //恢复导入sql文件夹 |
检查一个用户是否输入了一个有效的email地址,最简单的方法就是使用PHP的内建函数filter_var(),它能够检验email地址。
代码如下 | 复制代码 |
<?php filter_var('sgamgee@example.com', FILTER_VALIDATE_EMAIL); // Returns "sgamgee@example.com". This is a valid email address. filter_var('sauron@mordor', FILTER_VALIDATE_EMAIL); // Returns boolean false! This is *not* a valid email address. ?> |