努力思考 + 实践, 眼高手低是不行的. 注册 | 登陆
浏览模式: 标准 | 列表2007年07月的文章

php + mysql扎实个人基本功

扎实的基础.无论对你的学习还是对你今后的工作都是受益匪浅的.

详见全文哈~

» 阅读全文

Tags: php经验, php, mysql, 基础, 基本

vmware中安装ubuntu后vmware tools的安装

由于安装VMware Tools需要针对新内核重新编译模块,所以必须先安装基本编译系统和内核头文件。
代码:
$ sudo apt-get install build-essential
$ sudo apt-get install linux-headers-`uname -r`


安装VMware Tools。选择VMware菜单VM|Install VMware Tools...,系统会自动载入CDROM,打开一个终端窗口执行下列命令:
代码:
$ tar zxf /media/cdrom/VMwareTool-5.0.0-*.tar.gz(随版本号改变)
$ cd vmware-tools-distrib
$ sudo ./vmware-install.pl

安装过程中一路回车接受缺省设置即可,安装到最后会提示问您是否进入vmware配置工具,选择yes,设置您希望的屏幕分辨率

Tags: linux, ubuntu, vmware

PHP Interview questions from YAHOO(雅虎PHP面试题)

From: http://bbs.nucer.org/viewthread.php?tid=342&extra=page%3D1

呵呵,翻译了篇东西,N长时间没用英语了,出了丑大家可一定要指出来啊。翻译自:Nick Halstead's Blog

A friend recently got some pre-interview questions from YAHOO for a PHP job. Following up my previous post about programmer questions I thought I would post them to give people examples of what a large corporation like YAHOO asks.

最近一位朋友得到了Yahoo的一些PHP面试题目,依照我之前发表关于程序员的相关文章的原则,我想我应该在这里发布出来,以给读者朋友们提供一些例子,让大家看看像YAHOO这样的大公司关心哪些问题。

详见全文

» 阅读全文

Tags: php面试题, php, 面试, 题目

IE无法解析XML

解决方法:

 开始 -> 运行-> cmd ,然后按行执行以下命令.

regsvr32 -u msxml3.dll

regsvr32 msxml3.dll

Tags: ie, xml

维基百科可以直接浏览

图片附件(缩略图):
大小: 181.11 K
尺寸: 500 x 361
浏览: 42 次
点击打开新窗口浏览全图

Tags: wiki, 维基, 百科

PHP中xajax库中文问题及提示返回XML文件无效的解决办法

转自:http://web2world.cn/article/2007/06/a35.html

xajax是PHP下一个非常好的ajax框架,虽然xajax自己说自己是一个库(Library),但是我觉得它更像一个框架(Framework)。xajax是一个开源的 PHP 类库 它能够让你黏合HTML、CSS、Javascript和PHP,并可以结合Smarty模板系统使用。

在运用Xoops的Page模组的时候,发现其不能和中文正常工作,特别是不能和UTF-8编码的页面一起工作,昨天在利用这个实现DataGrid的时候发现完全不能正常工作了,一直报“the XML response that was returned from the server is invalid”这个错误,Google了一下,发现不少人也有这个问题。结合之前解决Xoops的Page模组(感谢文明猪)的UTF-8使用问题的方法,终于发现了完美解决xajax库使用中文的方法。

详见全文

» 阅读全文

Tags: php相关, xajax, ajax

Content-Type大全

PHP代码
  1. <?php   
  2.   
  3. $mimetypes = array(   
  4.     'ez'        => 'application/andrew-inset',   
  5.     'hqx'        => 'application/mac-binhex40',   
  6.     'cpt'        => 'application/mac-compactpro',   
  7.     'doc'        => 'application/msword',   
  8.     'bin'        => 'application/octet-stream',   
  9.     'dms'        => 'application/octet-stream',   
  10.     'lha'        => 'application/octet-stream',   
  11.     'lzh'        => 'application/octet-stream',   
  12.     'exe'        => 'application/octet-stream',   
  13.     'class'        => 'application/octet-stream',   
  14.     'so'        => 'application/octet-stream',   
  15.     'dll'        => 'application/octet-stream',   
  16.     'oda'        => 'application/oda',   
  17.     'pdf'        => 'application/pdf',   
  18.     'ai'        => 'application/postscript',   
  19.     'eps'        => 'application/postscript',   
  20.     'ps'        => 'application/postscript',   
  21.     'smi'        => 'application/smil',   
  22.     'smil'        => 'application/smil',   
  23.     'mif'        => 'application/vnd.mif',   
  24.     'xls'        => 'application/vnd.ms-excel',   
  25.     'ppt'        => 'application/vnd.ms-powerpoint',   
  26.     'wbxml'        => 'application/vnd.wap.wbxml',   
  27.     'wmlc'        => 'application/vnd.wap.wmlc',   
  28.     'wmlsc'        => 'application/vnd.wap.wmlscriptc',   
  29.     'bcpio'        => 'application/x-bcpio',   
  30.     'vcd'        => 'application/x-cdlink',   
  31.     'pgn'        => 'application/x-chess-pgn',   
  32.     'cpio'        => 'application/x-cpio',   
  33.     'csh'        => 'application/x-csh',   
  34.     'dcr'        => 'application/x-director',   
  35.     'dir'        => 'application/x-director',   
  36.     'dxr'        => 'application/x-director',   
  37.     'dvi'        => 'application/x-dvi',   
  38.     'spl'        => 'application/x-futuresplash',   
  39.     'gtar'        => 'application/x-gtar',   
  40.     'hdf'        => 'application/x-hdf',   
  41.     'js'        => 'application/x-javascript',   
  42.     'skp'        => 'application/x-koan',   
  43.     'skd'        => 'application/x-koan',   
  44.     'skt'        => 'application/x-koan',   
  45.     'skm'        => 'application/x-koan',   
  46.     'latex'        => 'application/x-latex',   
  47.     'nc'        => 'application/x-netcdf',   
  48.     'cdf'        => 'application/x-netcdf',   
  49.     'sh'        => 'application/x-sh',   
  50.     'shar'        => 'application/x-shar',   
  51.     'swf'        => 'application/x-shockwave-flash',   
  52.     'sit'        => 'application/x-stuffit',   
  53.     'sv4cpio'    => 'application/x-sv4cpio',   
  54.     'sv4crc'    => 'application/x-sv4crc',   
  55.     'tar'        => 'application/x-tar',   
  56.     'tcl'        => 'application/x-tcl',   
  57.     'tex'        => 'application/x-tex',   
  58.     'texinfo'    => 'application/x-texinfo',   
  59.     'texi'        => 'application/x-texinfo',   
  60.     't'            => 'application/x-troff',   
  61.     'tr'        => 'application/x-troff',   
  62.     'roff'        => 'application/x-troff',   
  63.     'man'        => 'application/x-troff-man',   
  64.     'me'        => 'application/x-troff-me',   
  65.     'ms'        => 'application/x-troff-ms',   
  66.     'ustar'        => 'application/x-ustar',   
  67.     'src'        => 'application/x-wais-source',   
  68.     'xhtml'        => 'application/xhtml+xml',   
  69.     'xht'        => 'application/xhtml+xml',   
  70.     'zip'        => 'application/zip',   
  71.     'au'        => 'audio/basic',   
  72.     'snd'        => 'audio/basic',   
  73.     'mid'        => 'audio/midi',   
  74.     'midi'        => 'audio/midi',   
  75.     'kar'        => 'audio/midi',   
  76.     'mpga'        => 'audio/mpeg',   
  77.     'mp2'        => 'audio/mpeg',   
  78.     'mp3'        => 'audio/mpeg',   
  79.     'aif'        => 'audio/x-aiff',   
  80.     'aiff'        => 'audio/x-aiff',   
  81.     'aifc'        => 'audio/x-aiff',   
  82.     'm3u'        => 'audio/x-mpegurl',   
  83.     'ram'        => 'audio/x-pn-realaudio',   
  84.     'rm'        => 'audio/x-pn-realaudio',   
  85.     'rpm'        => 'audio/x-pn-realaudio-plugin',   
  86.     'ra'        => 'audio/x-realaudio',   
  87.     'wav'        => 'audio/x-wav',   
  88.     'pdb'        => 'chemical/x-pdb',   
  89.     'xyz'        => 'chemical/x-xyz',   
  90.     'bmp'        => 'image/bmp',   
  91.     'gif'        => 'image/gif',   
  92.     'ief'        => 'image/ief',   
  93.     'jpeg'        => 'image/jpeg',   
  94.     'jpg'        => 'image/jpeg',   
  95.     'jpe'        => 'image/jpeg',   
  96.     'png'        => 'image/png',   
  97.     'tiff'        => 'image/tiff',   
  98.     'tif'        => 'image/tiff',   
  99.     'djvu'        => 'image/vnd.djvu',   
  100.     'djv'        => 'image/vnd.djvu',   
  101.     'wbmp'        => 'image/vnd.wap.wbmp',   
  102.     'ras'        => 'image/x-cmu-raster',   
  103.     'pnm'        => 'image/x-portable-anymap',   
  104.     'pbm'        => 'image/x-portable-bitmap',   
  105.     'pgm'        => 'image/x-portable-graymap',   
  106.     'ppm'        => 'image/x-portable-pixmap',   
  107.     'rgb'        => 'image/x-rgb',   
  108.     'xbm'        => 'image/x-xbitmap',   
  109.     'xpm'        => 'image/x-xpixmap',   
  110.     'xwd'        => 'image/x-xwindowdump',   
  111.     'igs'        => 'model/iges',   
  112.     'iges'        => 'model/iges',   
  113.     'msh'        => 'model/mesh',   
  114.     'mesh'        => 'model/mesh',   
  115.     'silo'        => 'model/mesh',   
  116.     'wrl'        => 'model/vrml',   
  117.     'vrml'        => 'model/vrml',   
  118.     'css'        => 'text/css',   
  119.     'html'        => 'text/html',   
  120.     'htm'        => 'text/html',   
  121.     'asc'        => 'text/plain',   
  122.     'txt'        => 'text/plain',   
  123.     'rtx'        => 'text/richtext',   
  124.     'rtf'        => 'text/rtf',   
  125.     'sgml'        => 'text/sgml',   
  126.     'sgm'        => 'text/sgml',   
  127.     'tsv'        => 'text/tab-separated-values',   
  128.     'wml'        => 'text/vnd.wap.wml',   
  129.     'wmls'        => 'text/vnd.wap.wmlscript',   
  130.     'etx'        => 'text/x-setext',   
  131.     'xsl'        => 'text/xml',   
  132.     'xml'        => 'text/xml',   
  133.     'mpeg'        => 'video/mpeg',   
  134.     'mpg'        => 'video/mpeg',   
  135.     'mpe'        => 'video/mpeg',   
  136.     'qt'        => 'video/quicktime',   
  137.     'mov'        => 'video/quicktime',   
  138.     'mxu'        => 'video/vnd.mpegurl',   
  139.     'avi'        => 'video/x-msvideo',   
  140.     'movie'        => 'video/x-sgi-movie',   
  141.     'ice'        => 'x-conference/x-cooltalk',   
  142. );   
  143.   
  144. ?>  

Tags: php相关, 基础, http协议

PHP防恶意用户输入

1. 过滤影响SQL正常运行的字符。

1) 过滤影响MySQL正常运行的字符。

当需要把用户输入的内容(有可能包含单引号、双引号 、反斜线、空字元 NUL )代入到mysql的语句 中执行时,应该把APACHE中的magic_quotes_gpc项设成On。

如果APACHE中的此项设成Off时,也可用php的函数addslashes()达到相同的目的,但这两种手段不能同时使用,否则会出现重复替换,出现错误。

样例:

PHP代码
  1. <?php      
  2. if (get_magic_quotes_gpc()) {   
  3.     $content=$_POST["content"];   
  4. else {   
  5.     $content=addslashes($_POST["content"]);   
  6. }   
  7. ?>  

当然,如果APACHE中的magic_quotes_gpc项为On,但有时又不想转义某项的特殊字符,可以使用stripslashes()去掉其中的 \

2) 过滤影响MSSQL正常运行的字符。

当需要把用户输入的内容(有可能包含单引号)代入到mssql的语句中执行时,应该把APACHE中的magic_quotes_sybase项设成On,此时magic_quotes_gpc项不再生效。

如果APACHE中的此项设成Off时,php中并没有合适的函数达到相同的目的,只能使用字符串替换函数来达到此目的。

样例:

PHP代码
  1. <?php   
  2. $content=str_replace("'","''"$_POST["content"]);   
  3. ?>   

现在10.218.17.53上的PHP既要访问mysql又要访问mssql,APACHE中的设置不能兼顾两种数据库,所以只对mysql做了相应设置。


2. 应对用户输入包含SQL语句的一个措施。

以下两种SQL写法都比较普遍,但安全程度是不同的,当用户提交的$id='1 and 1=2 union select ...'时第一种就会显示出不该显示的数据,而第二种就相对安全些。

SQL代码
  1. Select * FROM article Where articleid=$id   
  2. Select * FROM article Where articleid='$id'  

 

3. 防止用户输入的内容因包含html标签或javascript而影响页面的正常显示。

可以用htmlspecialchars()过滤其中的 & " < >

PHP代码
  1. $content=htmlspecialchars($content);  

4. 当页面要显示的内容包含回车换行时,可以使用nl2br()来达到页面上换行的效果。

Tags: php技巧, php, 安全

Records:1512