PHP应用之浅谈SQL注入与应对方法
SQL注入攻击是黑客攻击网站最常用的手段。如果你的站点没有使用严格的用户输入检验,那么常容易遭到SQL注入攻击。SQL注入攻击通常通过给站点数据库提交不良的数据或查询语句来实现,很可能使数据库中的纪录遭到暴露,更改或被删除。下面来谈谈SQL注入攻击是如何实现的,又如何防范。
看这个例子:
// supposed input
$name = "ilia'; DELETE FROM users;";
mysql_query("SELECT * FROM users WHERE name='{$name}'");
很明显最后数据库执行的命令是
SELECT...
CodeIgniter, PHP阅读全文
PHP导出MySQL数据到Excel
经常会碰到需要从数据库中导出数据到Excel文件,用一些开源的类库,比如PHPExcel,确实比较容易实现,但对大量数据的支持很不好,很容易到达PHP内存使用上限。这里的方法是利用fputcsv写CSV文件的方法,直接向浏览器输出Excel文件。
// 输出Excel文件头,可把user.csv换成你要的文件名
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="user.csv"');
header('Cache-Control: max-age=0');
// 从数据库中获取数据,为...
CodeIgniter, PHP阅读全文
本篇主要介绍PHP的变量、数组应用技巧和PHP的正则表达式、PHP的模板应用,以后有时间再写PHP与COM、PHP与XML的完全结合。
PHP之变量、数组||正则表达式||模板应用技巧
1、变量、数组的应用技巧
(1)很多人用得不多的数组函数。foreach、list、each。分别举几个例子,应该就能知道了。例:
<!--?php $data = array('a' =--> 'data1', 'b' => 'data2', 'c' => 'data3');
while(list($subscript, $value) = each($data))
{
echo "$subscript => $value :: ";
echo "$subscript =...
CodeIgniter, PHP阅读全文
PHP入门推荐–PHP开发禁忌规则–必备知识点
作为PHP程序员,特别是新手,对于互联网的险恶总是知道的太少,对于外部的入侵有很多时候是素手无策的,他们根本不知道黑客是如何入侵的、提交入侵、上传漏洞、sql 注入、跨脚本攻击等等。作为最基本的防范你需要注意你的外部提交,做好第一面安全机制处理防火墙。
规则 1:绝不要信任外部数据或输入
关于Web应用程序安全性,必须认识到的第一件事是不应该信任外部数据。外部数据(outside data) 包括不是由程序员在PHP代码中直接输入的任何数据。在采取措施...
CodeIgniter, PHP阅读全文
PHP生成静态html页面
php教程 SatSun Studio
1,下面使用模版的一个方法!
<?php
$fp = fopen ("templets.html","a");
if ($fp){
$fup = fread ($fp,filesize("templets.html"));
$fp2 = fopen ("html.shtml","w");
if ($fwrite ($fp2,$fup)){
$fclose ($fp);
$fcolse ($fp2);
die ("写入模板成功");
} else {
fclose ($fp);
die ("写入模板失败!");
}
}
?>
简单的将模板写进一个文件中存为html.html
2,按时间生成html文件名
<?
$content = "这是一个以日期时间为文件名的静态生成网页的测试文...
CodeIgniter, PHP阅读全文
MySql的常用命令和技巧
一、连接MYSQL:
格式: mysql -h主机地址 -u用户名 -p用户密码
1、例1:连接到本机上的MYSQL。
首先在打开DOS窗口,然后进入目录 mysqlbin,再键入命令mysql -uroot -p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:mysql>
2、例2:连接到远程主机上的MYSQL。假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入以下命令:mysql -h110.110.110.110 -uroot -pabcd123
(注:u与root可以...
PHP阅读全文
解决PHP Warning: Cannot modify header information – headers already sent by的终极方案
原因分析:在PHP里Cookie的使用是有一些限制的。
1、使用setcookie必须在标签之前
2、使用setcookie之前,不可以使用echo输入内容
3、直到网页被加载完后,cookie才会出现
4、setcookie必须放到任何资料输出浏览器前,才送出
解决方案:
1,文件开头写上ob_start();
ob_start :打开输出缓冲区
函数格式:void ob_start(void)
说明:当缓冲区激活时,所有来自PHP程序的非文件头信息均不会发送,而是保存在内部缓冲...
CodeIgniter, PHP阅读全文
PHP XML RPC中文乱码问题–解决方案
发现项目服务器上没有XMLRPC组件,又要重新编译PHP,头大…
找了很多资料发现,国外的一个叫PHPXMLRPC的开源代码很好用。直接代替XMLRPC组件。他在GOOGLE有托管。国内用的还不多,很多东西都要自己摸索着搞。
这个PHPXMLRPC写的很好,我们只要把它用到的时候加载进来,然后NEW一下就好。以下是我这里总结的相对好用的用法
//载入相关文件
require ‘xmlrpc.inc’;
$forxmlrpc = array(); //初始化数组,传输必要参数
$forxmlrpc['title'] = $content['title'];
$forxmlrpc['...
CodeIgniter, PHP阅读全文
PHP的异常处理与错误处理
异常处理:意外,是在程序运行过程中发生的意料之外的事,使用异常改变脚本正常流程。
try
{
}
catch(异常对象)
{
}
如果try中代码没问题,则执行完try中代码后就到catch后执行
如果try中代码有异常发生,则抛出一个异常对象,抛出给catch中的对象,则在try中代码就不会再继续执行下去,直接跳转到catch中去执行,catch中执行完成,在继续向下执行。
注意:提示发生了什么异常,不是我们主要做的事情,需要在catch中解决这个异常,如果解决不了,则抛出给用户。
<?php
class...
CodeIgniter, PHP阅读全文
网站地图
随便看看
热门标签
Adobe.Flex
AJAX
Android
Asterisk
Blog
callcenter
CentOS
ChromeOS
CodeIgniter
CRM
CRM功能
CRM实施
CSS_DIV
DOJO
DojoMobile
Drupal
FusionCharts
Google+
HTML5
iPad
iPhone 4
JavaScript
Jquery
Linux
MySQL
Nokia C5-03
PHP
QT.笔记
SEO
Smarty
SQlite
SVN
Ubuntu
VTIGER CRM
WiFi
Window 8
Windows
Windows Developer Preview
WorkFlowEngine
写真
幽默
房价
文昌湖
美女




