Tag Archives: php

改版咯~

终于开始使用向往以久的wordPress了,当看到wordpress2.7那让人激动的后台时,终于下定决心,从pjblog迁移到wordPress2.7!最初下载了wp最新版本,在本地安装后开始测试,数据使用网上提供的pjbog到wp数据转换的asp脚本,很方便的把mdb数据库转换成了wp的xml格式的数据文件,当然数据还是要进行调整的,原来的tag设置没有了,再有就是附件图片的路径,wp固定链接打开后,图片路径必须要改为绝对链接。
原有的空间是在Win服务器下,结果发现2.7在上面实际运行是总是报数据库错误,同时wp的固定链接也不完美,最后狠心连空间也换了,目前使用息壤的Linux主机,速度可以,对于wp等开源php,mysql程序提供原生支持。
通过两周左右对wp逐步深入的研究,真 的很感慨wp的灵活和强大,目前临时使用了一套模板,等过段时间一定要自己亲手制作一套自己的blog模板来用,wp的丰富灵活的函数库使他完全可以作为开源的cms来使用,我就打算这么用呢~~这阶段正好我也在研究Joomla,把两者进行比较的话,我更喜欢wp,wp的模板机制和后台更投我的胃口,当然joomla模板也很强大,不过感觉joomla的模板机制要更复杂些,默认模板只有一个index页,使用多个模板的话要用模板分配。
从应用来看,wp适合展示型中小公司站点,Joomla更适合资讯,文章类网站。

php中文本字符格式化的一些常用代码

下载: code.php
<?php
$filename=&#34;text.txt&#34;;
//将文本文件内容读到字符串中
$content = file_get_contents($filename);
//htmlentities跟htmlspecialchars的功能是一样的,都是格式化html代码。(注:两个函数在格式化带有英文字符的html代码的时候基本没啥问题,但是htmlentities对中文字符也不放过,这样得出来的结果是中文字符部分变为一堆乱码)
$content = htmlspecialchars($content);
//替换空格为nbsp ;注:下面的nbsp;前过滤了字符&amp;
$content = str_replace(&#34; &#34;, &#34;nbsp ;&#34;, $content);
//替换制表符为三个nbsp;nbsp;nbsp;
$content = str_replace(&#34;t&#34;, &#34;nbsp;nbsp;nbsp;&#34;, $content);
echo nl2br($content);//替换换行符为<br />
echo $content = str_replace(&#34;n&#34;, &#34;<br />&#34;, $content);//替换换行符为<br />的第二种方法
?>

mysql数据库的php安装文件

下载: install.php
$dbhost="localhost";// 数据库服务器
 
$dbuser="root";// 数据库用户名
$dbpass="root";// 数据库密码
$dbname="cgcms";// 数据库名
@
mysql_pconnect($dbhost,$dbuser,$dbpass) or die("
<div>不能连接服务器!</div>
");
echo "连接数据服务器成功!
";
@
mysql_query('set names "utf8"');
$result = @mysql_query("Drop DATABASE IF EXISTS $dbname");
if(!@mysql_select_db($dbname)){
echo "创建数据库.......
";
$query = "Create DATABASE $dbname";
if(!mysql_query($query)){
echo "数据库创建失败,返回!
";
exit;
}
}
echo"创建数据库成功!
";
@
mysql_select_db($dbname) or die("
<div>不能选择数据库!</div>
");
echo"选择数据库".$dbname."
";
//创建表:cgcms_article
$result = @mysql_query("Drop TABLE IF EXISTS `cgcms_article`");
//下面这种创建表的写法比较好
$setup_query="
Create TABLE `cgcms_article` (
`aid` int(10) unsigned NOT NULL auto_increment,
`atitle` varchar(255) NOT NULL,
`cid` smallint(6) unsigned NOT NULL,
`isshow` tinyint(1) NOT NULL default '1',
`isdigest` tinyint(1) unsigned NOT NULL default '0',
`istop` tinyint(1) unsigned NOT NULL default '0',
`content` text NOT NULL,
`descriptions` text NOT NULL,
`author` varchar(255) NOT NULL,
`fromurl` varchar(255) NOT NULL,
`tags` varchar(255) NOT NULL,
`metadesc` varchar(255) NOT NULL,
`addtime` int(10) unsigned NOT NULL,
`uid` smallint(5) unsigned NOT NULL default '0',
`views` int(10) unsigned NOT NULL default '0',
PRIMARY KEY  (`aid`)
) ENGINE=MyISAM AUTO_INCREMENT=212 DEFAULT CHARSET=utf8
";
$result = mysql_query($setup_query);
//创建表:cgcms_attachs
$result = @mysql_query("Drop TABLE IF EXISTS `cgcms_attachs`");
$setup_query="
Create TABLE `cgcms_attachs` (
`attachid` mediumint(6) unsigned NOT NULL auto_increment,
`aid` int(8) unsigned NOT NULL default '0',
`filename` varchar(255) NOT NULL,
`filetype` char(20) NOT NULL,
`filesize` int(11) unsigned NOT NULL,
`filepath` varchar(255) NOT NULL,
`isimg` tinyint(1) unsigned NOT NULL default '0',
`uploaddate` int(10) NOT NULL,
PRIMARY KEY  (`attachid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8
";
$result = mysql_query($setup_query);
//创建表:cgcms_categories
$result = @mysql_query("Drop TABLE IF EXISTS `cgcms_categories`");
$setup_query="
Create TABLE `cgcms_categories` (
`cid` smallint(6) unsigned NOT NULL auto_increment,
`cup` smallint(6) unsigned NOT NULL default '0',
`cname` char(50) NOT NULL,
`depth` tinyint(1) unsigned NOT NULL default '1',
`sons` smallint(4) unsigned NOT NULL default '0',
`descriptions` text NOT NULL,
`metakeywords` varchar(255) NOT NULL default ' ',
`metadescription` varchar(255) NOT NULL default ' ',
`listorder` tinyint(2) unsigned NOT NULL default '0',
`curl` varchar(150) NOT NULL default ' ',
`type` tinyint(1) unsigned NOT NULL default '0',
`allowcomment` tinyint(1) unsigned NOT NULL default '1',
`showindex` tinyint(1) unsigned NOT NULL default '0',
`showindexmenu` tinyint(1) unsigned NOT NULL default '1',
PRIMARY KEY  (`cid`)
) ENGINE=MyISAM AUTO_INCREMENT=44 DEFAULT CHARSET=utf8
";
$result = mysql_query($setup_query);
//创建表:cgcms_links
$result = @mysql_query("Drop TABLE IF EXISTS `cgcms_links`");
$setup_query="
Create TABLE `cgcms_links` (
`lid` smallint(3) unsigned NOT NULL auto_increment,
`lname` varchar(255) NOT NULL,
`lurl` varchar(255) NOT NULL,
`limg` varchar(255) NOT NULL default ' ',
`descriptions` text NOT NULL,
PRIMARY KEY  (`lid`)
) ENGINE=MyISAM AUTO_INCREMENT=8 DEFAULT CHARSET=utf8
";
$result = mysql_query($setup_query);
//创建表:cgcms_settings
$result = @mysql_query("Drop TABLE IF EXISTS `cgcms_settings`");
$setup_query="
Create TABLE `cgcms_settings` (
`titles` varchar(255) NOT NULL,
`values` text NOT NULL,
PRIMARY KEY  (`titles`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8
";
$result = mysql_query($setup_query);
//创建表:cgcms_settings
$result = @mysql_query("Drop TABLE IF EXISTS `cgcms_users`");
$setup_query="
Create TABLE `cgcms_users` (
`uid` smallint(6) unsigned NOT NULL auto_increment,
`uname` varchar(50) NOT NULL,
`upwd` varchar(32) NOT NULL,
`nickname` varchar(50) NOT NULL,
`email` varchar(50) NOT NULL,
`uurl` varchar(150) NOT NULL,
`ugroup` tinyint(1) unsigned NOT NULL default '2',
PRIMARY KEY  (`uid`)
) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=utf8
";
$result = mysql_query($setup_query);
 
//inserdb.sql是完成插入数据的sql文件,通过一行一行的读取这个文件(每个insert 操作都是在一行完成,没有换行)然后提取每条命令执行
$filename="insertdb.sql";
$fp=file($filename);
foreach($fp as $value){
//echo $value."
";
if(substr(
$value,0,11)=="Insert INTO"){
$query=substr($value,0,-2);
$result=mysql_query($query);
}
}
?&gt;
?>

FCKeditor 2.5 quickUpLoad路径的设置

FCKeditor 2.5 released!兼容Safari3.0,真是一个好消息,这样在Mac上真正意义上有了一个完美WebEditor解决方案了,fck的文件浏览和upload功能着实还是很不错的。默认fck的quickUpLoad将文件直接上传到UpLoad目录下,而采用文件浏览方式上传的图片,文件等资源则被分别存储在UpLoad/Image,UpLoad/file,,UpLoad/flash,UpLoad/media,这四个文件夹下面,因而造成quick方式上传的文件无法通过browser浏览,解决方法如下:
修改filemanager/connectors/config.php文件(config.php文件注释中有详细说明)

下载: code.php
/*
NOTE: by default, QuickUploadPath and QuickUploadAbsolutePath point to
"userfiles" directory to maintain backwards compatibility with older versions of FCKeditor.
This is fine, but you in some cases you will be not able to browse uploaded files using file browser.
Example: if you click on "image button", select "Upload" tab and send image
to the server, image will appear in FCKeditor correctly, but because it is placed
directly in /userfiles/ directory, you'll be not able to see it in built-in file browser.
The more expected behaviour would be to send images directly to "image" subfolder.
To achieve that, simply change
$Config['QuickUploadPath']['Image']            = $Config['UserFilesPath'] ;
$Config['QuickUploadAbsolutePath']['Image']    = $Config['UserFilesAbsolutePath'] ;
into:
$Config['QuickUploadPath']['Image']            = $Config['FileTypesPath']['Image'] ;
$Config['QuickUploadAbsolutePath']['Image']     = $Config['FileTypesAbsolutePath']['Image'] ;
 
*/

//修改后的原配置文件,注释部分为原来默认设置
$Config['AllowedExtensions']['File']    = array('7z', 'aiff', 'asf', 'avi', 'bmp', 'csv', 'doc', 'fla', 'flv', 'gif', 'gz', 'gzip', 'jpeg', 'jpg', 'mid', 'mov', 'mp3', 'mp4', 'mpc', 'mpeg', 'mpg', 'ods', 'odt', 'pdf', 'png', 'ppt', 'pxd', 'qt', 'ram', 'rar', 'rm', 'rmi', 'rmvb', 'rtf', 'sdc', 'sitd', 'swf', 'sxc', 'sxw', 'tar', 'tgz', 'tif', 'tiff', 'txt', 'vsd', 'wav', 'wma', 'wmv', 'xls', 'xml', 'zip') ;
$Config['DeniedExtensions']['File']        = array() ;
$Config['FileTypesPath']['File']        = $Config['UserFilesPath'] . 'file/' ;
$Config['FileTypesAbsolutePath']['File']= ($Config['UserFilesAbsolutePath'] == '') ? '' : $Config['UserFilesAbsolutePath'].'file/' ;
//$Config['QuickUploadPath']['File']        = $Config['UserFilesPath'] ;
$Config['QuickUploadPath']['File']     = $Config['FileTypesPath']['File'] ;
//$Config['QuickUploadAbsolutePath']['File']= $Config['UserFilesAbsolutePath'] ;
$Config['QuickUploadAbsolutePath']['File']= $Config['FileTypesAbsolutePath']['File'] ;
 
$Config['AllowedExtensions']['Image']    = array('bmp','gif','jpeg','jpg','png') ;
$Config['DeniedExtensions']['Image']    = array() ;
$Config['FileTypesPath']['Image']        = $Config['UserFilesPath'] . 'image/' ;
$Config['FileTypesAbsolutePath']['Image']= ($Config['UserFilesAbsolutePath'] == '') ? '' : $Config['UserFilesAbsolutePath'].'image/' ;
//$Config['QuickUploadPath']['Image']        = $Config['UserFilesPath'] ;
$Config['QuickUploadPath']['Image']            = $Config['FileTypesPath']['Image'] ;
//$Config['QuickUploadAbsolutePath']['Image']= $Config['UserFilesAbsolutePath'] ;
$Config['QuickUploadAbsolutePath']['Image']= $Config['FileTypesAbsolutePath']['Image'] ;
 
$Config['AllowedExtensions']['Flash']    = array('swf','flv') ;
$Config['DeniedExtensions']['Flash']    = array() ;
$Config['FileTypesPath']['Flash']        = $Config['UserFilesPath'] . 'flash/' ;
$Config['FileTypesAbsolutePath']['Flash']= ($Config['UserFilesAbsolutePath'] == '') ? '' : $Config['UserFilesAbsolutePath'].'flash/' ;
//$Config['QuickUploadPath']['Flash']        = $Config['UserFilesPath'] ;
$Config['QuickUploadPath']['Flash']        = $Config['FileTypesPath']['Flash'] ;
//$Config['QuickUploadAbsolutePath']['Flash']= $Config['UserFilesAbsolutePath'] ;
$Config['QuickUploadAbsolutePath']['Flash']= $Config['FileTypesAbsolutePath']['Flash'] ;
 
$Config['AllowedExtensions']['Media']    = array('aiff', 'asf', 'avi', 'bmp', 'fla', 'flv', 'gif', 'jpeg', 'jpg', 'mid', 'mov', 'mp3', 'mp4', 'mpc', 'mpeg', 'mpg', 'png', 'qt', 'ram', 'rm', 'rmi', 'rmvb', 'swf', 'tif', 'tiff', 'wav', 'wma', 'wmv') ;
$Config['DeniedExtensions']['Media']    = array() ;
$Config['FileTypesPath']['Media']        = $Config['UserFilesPath'] . 'media/' ;
$Config['FileTypesAbsolutePath']['Media']= ($Config['UserFilesAbsolutePath'] == '') ? '' : $Config['UserFilesAbsolutePath'].'media/' ;
//$Config['QuickUploadPath']['Media']        = $Config['UserFilesPath'] ;
$Config['QuickUploadPath']['Media']        = $Config['FileTypesPath']['Flash'] ;
//$Config['QuickUploadAbsolutePath']['Media']= $Config['UserFilesAbsolutePath'] ;
$Config['QuickUploadAbsolutePath']['Media']= $Config['FileTypesAbsolutePath']['Flash'] ;
?&
gt;