windows下两个很有用的dns刷新命令
首先过往command提示符下:
先运行:ipconfig/displaydns这个命令,查看一下本机已经缓存了那些的dns信息的,然后输入下面的命令
ipconfig/flushdns
这时本机的dns缓存信息已经清空了,我们可以再次输入第一次输入的命令来看一下,
ipconfig/displaydns
By admin
read more首先过往command提示符下:
先运行:ipconfig/displaydns这个命令,查看一下本机已经缓存了那些的dns信息的,然后输入下面的命令
ipconfig/flushdns
这时本机的dns缓存信息已经清空了,我们可以再次输入第一次输入的命令来看一下,
ipconfig/displaydns
By admin
read more如果给div元素设置了宽度时,比如width:100%,此时div在IE中(IE6,IE7)将占据物理空间,而在FF中不占据物理空间(正确理解)。为了表述直观,将样式直接写在元素标签内:
此时在IE中到底是什么在影响着最终的显示,又是如何解析的呢?
可能的影响因素:字体大小(font-size),字体行高(line-height),高度(height),溢出(overflow)
我们对上面的代码逐一添加过滤属性(具体的过程有兴趣的朋友,可以私下里实验一下,“自己动手,丰衣足食”!)
在测试的过程中,你会发现IE6和IE7的解析也不尽相同,比如在给div设置了line-height:0; height:0; 的样式后,IE7中显示正常了,不再占据物理空间了,而IE6却依然我行我素,亦或是悲!
最终的测试结果,最简单的方法是,给div设置高度(height)和溢出(overflow)属性:
By admin
read moreOutput Control 函数可以让你自由控制脚本中数据的输出。它非常地有用,特别是对于:当你想在数据已经输出后,再输出文件头的情况。输出控制函数不对使用 header() 或 setcookie(), 发送的文件头信息产生影响,只对那些类似于 echo() 和 PHP 代码的数据块有作用。
我们先举一个简单的例子,让大家对Output Control有一个大致的印象: Example 1.
ob_start(); //打开缓冲区
echo “Hellon”; //输出
header(“location:index.php”); //把浏览器重定向到index.php
ob_end_flush();//输出全部内容到浏览器
?>
所有对header()函数有了解的人都知道,这个函数会发送一段文件头给浏览器,但是如果在使用这个函数之前已经有了任何输出(包括空输出,比如空格,回车和换行)就会提示出错。如果我们去掉第一行的ob_start(),再执行此程序,我们会发现得到了一条错误提示:”Header had all ready send by”!但是加上ob_start,就不会提示出错,原因是当打开了缓冲区,echo后面的字符不会输出到浏览器,而是保留在服务器,直到你使用flush或者ob_end_flush才会输出,所以并不会有任何文件头输出的错误!
一、 相关函数简介: 1、Flush:刷新缓冲区的内容,输出。 函数格式:flush() 说明:这个函数经常使用,效率很高。 2、ob_start :打开输出缓冲区 函数格式:void ob_start(void) 说明:当缓冲区激活时,所有来自PHP程序的非文件头信息均不会发送,而是保存在内部缓冲区。为了输出缓冲区的内容,可以使用ob_end_flush()或flush()输出缓冲区的内容。 3 、ob_get_contents :返回内部缓冲区的内容。 使用方法:string ob_get_contents(void) 说明:这个函数会返回当前缓冲区中的内容,如果输出缓冲区没有激活,则返回 FALSE 。 4、ob_get_length:返回内部缓冲区的长度。 使用方法:int ob_get_length(void) 说明:这个函数会返回当前缓冲区中的长度;和ob_get_contents一样,如果输出缓冲区没有激活。则返回 FALSE。 5、ob_end_flush :发送内部缓冲区的内容到浏览器,并且关闭输出缓冲区。 使用方法:void ob_end_flush(void) 说明:这个函数发送输出缓冲区的内容(如果有的话)。 6、ob_end_clean:删除内部缓冲区的内容,并且关闭内部缓冲区 使用方法:void ob_end_clean(void) 说明:这个函数不会输出内部缓冲区的内容而是把它删除! 7、ob_implicit_flush:打开或关闭绝对刷新 使用方法:void ob_implicit_flush ([int flag]) 说明:使用过Perl的人都知道$|=x的意义,这个字符串可以打开/关闭缓冲区,而ob_implicit_flush函数也和那个一样,默认为关闭缓冲区,打开绝对输出后,每个脚本输出都直接发送到浏览器,不再需要调用 flush()
二、深入了解:
for($i = 1; $i <= 300; $i++ ) print(” “);
// 这一句话非常关键,cache的结构使得它的内容只有达到一定的大小才能从浏览器里输出
// 换言之,如果cache的内容不达到一定的大小,它是不会在程序执行完毕前输出的。经
// 过测试,我发现这个大小的底限是256个字符长。这意味着cache以后接收的内容都会
// 源源不断的被发送出去。
For($j = 1; $j <= 20; $j++) {
echo $j.”
“;
flush(); //这一部会使cache新增的内容被挤出去,显示到浏览器上
sleep(1); //让程序”睡”一秒钟,会让你把效果看得更清楚
}
?>
具体效果你可以到这里看看 http://www.php2000.com/~uchinaboy/out.php PHP2000的最新的PHP聊天室就是用的这个技术,可惜的是源代码未公开 L 注:如果在程序的首部加入ob_implicit_flush()打开绝对刷新,就可以在程序中不再使用flush(),这样做的好处是:提高效率!
By admin
read moreheader("Expires: ".gmdate("D, d M Y H:i:s",time()-1)." GMT");
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
By admin
read more1。创建ajax 对象, 可以用以下通用代码, 此代码适合各种浏览器
function newXMLHttpRequest()
{
var xmlreq = false;
if (window.XMLHttpRequest)
{
xmlreq = new XMLHttpRequest();
}
else
{ if (window.ActiveXObject)
{ try
{ xmlreq = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e1)
{
try
{
xmlreq = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e2)
{ }
}
}
}
return xmlreq;
}
2。发送数据,ajax有2种方处理数据,同步和异步
同步:
function get_xmlhttp()
{ var method=“GET”;//method=“post”;
var url=ajax.php; //接收数据后台页面
var data=“msg1=34&msg2=34”;//要发送的数据,如果用GET 发送 直接把要发送的数据跟在url 后面就行了, 例如:
url=ajax.php?msg1=34&msg2=34;
var req = newXMLHttpRequest(); //创建ajax对象
By admin
read more如果你用的是linux,首先可以考虑用locate方法,一般够用了,而且速度很快,当然在用这个命令之前要生成文件数据库[execute updatedb in console],下面的是关于find的用法,具有通用性,在unix下也可以用 每一种操作系统都是由成千上万个不同种类的文件所组成的。其中有系统本身自带的文件,用户自己的文件,还有共享文件等等。我们有时候经常忘记某份文件放在硬盘中的哪个地方。在微软的WINDOWS操作系统中要查找一份文件是相当简单的事情,只要在桌面上点击“开始”-“搜索”中就能按照各种方式在本地硬盘上,局域网络,甚至在INTERNET上查找各种文件,文档。
可是使用Linux的用户就没有那么幸运了,在Linux上查找某个文件确实是一件比较麻烦的事情。毕竟在Linux中需要我们使用专用的“查找”命令来寻找在硬盘上的文件。Linux下的文件表达格式非常复杂,不象WINDOWS,DOS下都是统一的AAAAAAA.BBB格式那么方便查找,在WINDOWS中,只要知道要查找的文件的文件名或者后缀就非常容易查找到。Linux中查找文件的命令通常为“find”命令,“find”命令能帮助我们在使用,管理Linux的日常事务中方便的查找出我们需要的文件。对于Linux新手来说,“find”命令也是了解和学习Linux文件特点的方法。因为Linux发行版本繁多,版本升级很快,在Linux书籍上往往写明某个配置文件的所在位置,往往Linux新手按图索骥还是不能找到。比如说REDHAT Linux 7.O和REDHAT Linux 7.1中有些重要的配置文件所在的硬盘位置和文件目录就有了很大的改变,如果不学会使用“find”命令,那么在成千上万的Linux文件中要找到其中的一个配置文件是相当困难的,笔者在没有精通“find”命令之前就吃过这样的苦头。好,下面就详细为大家介绍强大的“find”命令的全部使用方法和用途。
通过文件名查找法: 这个方法说起来就和在WINDOWS下查找文件一样容易理解了。如果你把这个文件放在单个的文件夹里面,只要使用常见的“ls”命令就能方便的查找出来,那么使用“find”命令来查找它就不能给你留下深刻的印象,毕竟“find”命令的强大功能不止这个。如果知道了某个文件的文件名,而不知道这个文件放到哪个文件夹,甚至是层层套嵌的文件夹里。举例说明,假设你忘记了httpd.conf这个文件在系统的哪个目录下,甚至在系统的某个地方也不知道,则这是可以使用如下命令: find / -name httpd.conf
这个命令语法看起来很容易就明白了,就是直接在find后面写上 -name,表明要求系统按照文件名查找,最后写上httpd.conf这个目标文件名即可。稍等一会系统会在计算机屏幕上显示出查找结果列表: etc/httpd/conf/httpd.conf
这就是httpd.conf这个文件在Linux系统中的完整路径。查找成功。 如果输入以上查找命令后系统并没有显示出结果,那么不要以为系统没有执行find/ -name httpd.conf命令,而可能是你的系统中没有安装Apache服务器,这时只要你安装了Apache Web服务器,然后再使用find / -name httpd.conf就能找到这个配置文件了。
**无错误查找技巧: ** 在Linux系统中“find”命令是大多数系统用户都可以使用的命令,并不是ROOT系统管理员的专利。但是普通用户使用“find”命令时也有可能遇到这样的问题,那就是Linux系统中系统管理员ROOT可以把某些文件目录设置成禁止访问模式。这样普通用户就没有权限用“find”命令来查询这些目录或者文件。当普通用户使用“find”命令来查询这些文件目录是,往往会出现”Permissiondenied.”(禁止访问)字样。系统将无法查询到你想要的文件。为了避免这样的错误,我们可是使用转移错误提示的方法尝试着查找文件,输入 find / -name access_log 2>/dev/null
这个方法是把查找错误提示转移到特定的目录中去。系统执行这个命令后,遇到错误的信息就直接输送到stderrstream 2 中,access_log 2就是表明系统将把错误信息输送到stderrstream 2中,/dev/null是一个特殊的文件,表明空的或者错误的信息,这样查询到的错误信息将被转移了,不会再显示了。
在Linux系统查找文件也会遇到这样一个实际问题。如果我们在整个硬盘,这个系统中查找某个文件就要花费相当长的一段时间,特别是大型Linux系统和容量较大的硬盘,文件放在套嵌很深的目录中的时候。如果我们知道了这个文件存放在某个大的目录中,那么只要在这个目录中往下找就能节省很多时间了。使用find /etc -name httpd.conf 就可以解决这个问题。上面的命令就是表示在etc目录中查询httpd.conf这个文件。这里再说明一下“/ ”这个函数符号的含义,如果输入 “find/ ”就是表示要求Linux系统在整个ROOT目录下查找文件,也就是在整个硬盘上查找文件,而“find/etc”就是只在 etc目录下查找文件。因为“find/etc”表示只在etc目录下查找文件,所以查找的速度就相应要快很多了。
**根据部分文件名查找方法: ** 这个方法和在WINDOWS中查找已知的文件名方法是一样的。不过在Linux中根据部分文件名查找文件的方法要比在WINDOWS中的同类查找方法要强大得多。例如我们知道某个文件包含有srm这3个字母,那么要找到系统中所有包含有这3个字母的文件是可以实现的,输入: find /etc -name ’*srm*’
这个命令表明了Linux系统将在/etc整个目录中查找所有的包含有srm这3个字母的文件,比如 absrmyz, tibc.srm等等符合条件的文件都能显示出来。如果你还知道这个文件是由srm 这3个字母打头的,那么我们还可以省略最前面的星号,命令如下: find/etc -name ’srm*’
这是只有像srmyz 这样的文件才被查找出来,象absrmyz或者 absrm这样的文件都不符合要求,不被显示,这样查找文件的效率和可靠性就大大增强了。
根据文件的特征查询方法: 如果只知道某个文件的大小,修改日期等特征也可以使用“find”命令查找出来,这和WINDOWS系统中的”搜索”功能是基本相同的。在微软的”搜索”中WINDOWS中的”搜索助理”使得搜索文件和文件夹、打印机、用户以及网络中的其他计算机更加容易。它甚至使在Internet 上搜索更加容易。”搜索助理”还包括一个索引服务,该服务维护了计算机中所有文件的索引? ??使得搜索速度更快。使用”搜索助理”时,用户可以指定多个搜索标准。例如,用户可以按名称、类型及大小搜索文件和文件夹。用户甚至可以搜索包含特定文本的文件。如果用户正使用 Active Directory,这时还可以搜索带有特定名称或位置的打印机。
By admin
read more1、安装freebsd6.2。 这里我选择的是最小化安装。
2、安装xorg。 pkg_add -r xorg
3、安装gnome2。 pkg_add -r gnome2
4、生成、测试相关的配置文件
Xorg -configure 将生成xorg.conf.new文件在/root/目录下。 Xorg -configure /root/xorg.conf.new(6.2做这步时似乎必须加上/root/) 这里测试下生成的配置文件,会出现1个布满小格子的大方框,并且应该有一个鼠标箭头。 然后ctrl+alt+backspace返回文字符界面。 然后编辑一下xorg.conf.new文件,然后拷贝至/etc/X11/xorg.conf
5、配置窗口管理器 在/etc/rc.conf里加入gdm_enable=”YES” 然后重新启动,就可以自动进入GUI界面了。
By admin
read more在FreeBsd中安装ports 一.首先进入要安装的port的目录 #cd /usr/ports/www/apache22 二.执行make命令进行编译 #make 会出现一些提示信息,一旦编译完,就会回到命令行,下一步是安装port,只要在make后面添加一个单词install即可. 三.安装port #make install 会出现一些提示信息,完毕后会回到提示符,您就可以运行您安装的程序了 四.清除安装时产生的一些临时信息: #make clean 清理工作目录是个好注意,这个目录中包含了全部在编译过程中用到的临时文件,这些文件不公会占用宝贵的磁盘空间,而且可能给升级port时带来麻烦.
至此,安装ports的步骤基本已经完成.
注:以上三个命令make,make install,make clean可以使用组合命令make install clean来代替.
By admin
read more**GetOne($sql)**Executes the SQL and returns the first field of the first row as an array. The recordset and remaining rows are discarded for you automatically. If an error occur, false is returned. 执行SQL指令,并且以阵列的方式回传第一笔记录的第一个栏位。资料集及其余的记录将会被自动清除,如果发生错误,就回传 false 值。译者注:这个功能在验证某笔记录在不在特别有用,可以减少系统记忆体及资源的用量。
**GetRow($sql)**执行SQL指令,并且以阵列的方式回传第一笔记录。资料集及其馀的记录将会被自动清除,如果发生错误,就回传 false 值。其中GetOne($sql)为了检测某一条记录是否存在时,特别有用,(如,用户在注册前,可以检测用户名是否已经被占用,比较适合GetOne($ql)).如果此时需要除检测该记录是否存在,并保存该记录的信息,就要用到GetRow($sql)了,如用户登陆时,如果没有找到该用户的信息,则登陆失败,否则保存用户的注册信息到SESSION或COOIKE中,转到用户控制面板.
By admin
read more对于windows平台来说安装完mysql后,系统就已经默认生成了许可表和账户,你不需要像在Unix平台上那样执行 mysql_install_db脚本来生成帐户和相应权限许可表。
但是如果不是用MSI格式来安装MySQL的话,就需要在安装完以后,手动给 root帐户添加新密码,因为默认情况下的root没有开启密码保护功能,如果不重新赋予root帐户密码,那么许多非本机的连接将 无法成功。具体更新密码步骤如下:
c:>mysql -u root
mysql>set passWord for ‘root’@’localhost’=password(‘newpasswd’);
mysql>set password for ‘root’@’%’=password(‘newpasswd’); //本条可选
通过以上设置,root的密码将变为newpasswd这样就完成了根用户root密码的设置工作。
By admin
read more最近用php传大文件的时候,总是传不上,起始只是看了一下php.ini里的max_post_size的值,默认是8M,一直没有搞清楚到底是怎么回事,后来在一篇文章上看到还有一个upload_max_filesize 参数,这时才明白怎么回事,结果把默认的2M改成8M,重新上传,结果ok,上传成功了!
以下是常见的一些上传附件时的一些问题,大家可以参考一下:
用php上传文件,问题最多的就是上传大体积文件时出现错误。 这就涉及到php的配置文件:php.ini
在此配置文件中,有这么几个值是跟文件上传有密切关系的: file_uploads = on //是否允许系统支持文件上传 ;upload_tmp_dir //临时文件的存储路径,linux下为系统默认路径,win32下需要指定 upload_max_filesize = 2m //允许文件上传最大体积
post_max_size = 2m //通过post方法给php时,php所能接受的最大数据容量
如果你上传的文件体积在8m一下(通常情况),那修改以上设置就可以满足你的要求了。。
但要 >8m,那除了上面几个值,还要特别关注另外两个值了: max_execution_time = 30 //每个script所执行的最大时间(php上传就时,体积大了,就是个时间问题) memory_limit = 8m //每个script所能消耗的最大memory
试着把这两个值改大些。一般就可以解决大多数问题了。
就此推断,上传文件的体积是可以无穷大的。但还要考虑你的网络情况,等等。
在php.net上,有人说按照这个方法改了后,大于100m的文件还是会出错。 不知道是不是php本身的问题了:( —————————————————————
没问题!我做的网站,WEB管理平台中有影视上传栏目,在LAN中上传,最大的传过200M没问题。当然前提是前面的PHP.INI就像上面一样设置好 —————————————————————
PHP.INI里有设置
好象默认是8M吧 —————————————————————
只要你设置正确,服务器有足够处理能力,网络没有任何丢包现象,支持续传,对上传字节没有上限 —————————————————————
By admin
read moreExtended Setup This is a continuation of the basic installation, please read that first! A slightly more flexible way to setup Smarty is to extend the class and initialize your Smarty environment. So instead of re- peatedly setting directory paths, assigning the same vars, etc., we can do that in one place. Lets create a new directory / php/includes/guestbook/ and make a new file called setup.php. In our example environment, /php/includes is in our include_path. Be sure you set this up too, or use absolute file paths.
By admin
read more这几天在做采集的东东,php提供了很多访问远程计算机内容的方法,文件系统的函数些都支持读取远程文件,而fsockopen是争对于socket接口的编程函数,在网上搜了一下发现用这个函数来读取http内容也比较多,但是没有一个比较完善和适合我的,在某个小偷程序上改改,轻而易举的完善fsockopen请求http协议内容,从而获取请求内容.代码如下:
function get_page_content($url){
$url = eregi_replace(‘^http://’, ”, $url);
$temp = explode(‘/’, $url);
$host = array_shift($temp);
$path = ‘/’.implode(‘/’, $temp);
$temp = explode(‘:’, $host);
$host = $temp[0];
$port = isset($temp1) ? $temp1 : 80;
$fp = @fsockopen($host, $port, &$errno, &$errstr, 30);
if ($fp){
@fputs($fp, “GET $path HTTP/1.1\r\nHost: $host\r\nAccept: /\r\nReferer:$url\r\nUser-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)\r\nConnection: Close\r\n\r\n”);
}
$Content = ”;
while ($str = @fread($fp, 4096)){
$Content .= $str;
}
@fclose($fp);
//重定向
By admin
read more今天看书,看到mail函数,就自己练着写了个简单的程序。
要注意的一点是,mail函数的使用,需要在php.ini里边配置。 [mail function] ; For Win32 only. SMTP = localhost smtp_port = 25
; For Win32 only. ;sendmail_from = [email protected]
配置后 [mail function] ; For Win32 only. SMTP = smtp.tom.com //指定你的邮箱smtp smtp_port = 25
; For Win32 only. sendmail_from = [email protected] //你所使用的邮箱
配置好后要记得重启apache啊!
不过真是怪了,在单位写的就发送成功了,在家写一样一样的就没成功,大家来看看~~
By admin
read more在windows2003里!administrator账号禁用了,如何启用此账户呢,就只有这一个用户的,其实方法很简单的,我们可能通过重新启动服务器,按下F8键,在出现的dos菜单时,我们选择进入到安全模式下,用原来的用户名和密码登陆(在安全模式下被禁用的账户可以照常登陆的)。我们进去后,把账户重新启用即可。
By admin
read more