More servicesWindows Live
HomeHotmailSpacesOneCare
 
MSN
Sign in
 
 
Spaces home  苗苗 合作 交流PhotosProfileFriendsBlog Tools Explore the Spaces community

Blog

September 03

Adobe Flex Builder 2 下载

截止9/3日,链接有效
 
Adobe Flex Builder 2 下载

Flex Builder 2.0 License:
1307-1581-4356-2616-4951-7949 (Commercial Version)
1307-1581-4356-2939-1231-4484 (Education Version)

Charting License:
1301-4581-4356-7349-9369-3351 (Commercial Version)  
March 19

最近要买电视机的可以留意看一下

近来网上有许多人在销售松下济南厂的32F500DN,这款机器到底效果如何呢

本来我一直盯着松下的50PV,但半路杀出个程咬金----在网上买了32F500DN.这款机器前天运到我家,经过两天的评测,结论如下:

1.32F500DN使用了日本原装超黑超精细平面辉聚显像管(100%MADE IN JAPAN),与上一代32F500D的北松管有着天壤之别,亮度更高,色彩更纯更艳丽,画面通透...

2.音响效果改进:由32F500D的7W+7W升级为9W+9W,好震撼...

3.功耗降低:由32F500D的179W降为165W...(应该是原装管耗电更小)

4.净重:由32F500D的54.5KG增为32F500DN的58KG...(真是货真价实)

5.塑料外壳都升级了,真不可思意!

6.与SONY的二号CRT机皇HR32M90相比:32F500DN的色彩饱和度更高更鲜亮,红蓝两色表现更突出,白色的纯度更好.只是在图像立体感上 不及TRINITRON管,像素点距不及SONY SUPER FINE PITCH TRINITRON管(32的),32F500DN的外观工业设计更简洁,而HR32像个螃蟹.
图像方面HR32M90可给96分,32F500DN给95.7分;外观HR32给 75分,32F500DN 88分.
注:SONY的HR32M90图象表现比HR36M90还要好(36的只有92分),因为32的管是日本产,36的管是USA产的.小日本做得好认真啊!

7.32F500D的图像与上面俩者不是同一重量级,故不比较
March 05

上海广播频率完全手册(2006年12月1日新版,2007年适用)

上海广播频率完全手册(2006年12月1日新版,2007年适用):

FM87.9 中国国际广播电台轻松调频EASY FM
FM89.9 上海东方广播电台
FM90.9 东广新闻台
FM91.4 中央人民广播电台经济之声
FM93.4 上海人民广播电台
FM94.0 五星体育广播
FM94.7 经典音乐频率
FM97.2 海上戏剧
FM97.7 第一财经广播频率
FM98.1 东方明珠移动电视广播频率
FM99.0 中央人民广播电台中国之声
FM101.7 东广音乐动感101
FM103.7 东广音乐LOVE RADIO
FM105.7 上海交通台
FM107.2 新娱乐调频HAPPYRADIO
FM107.7 中央人民广播电台音乐之声

周一为了听温总的报告,才想起自己的手机是带收音功能的,赶忙的插上耳机却发现连中央人民广播电台的频率都不记得了,一番搜索才有了以上的答案。温总求真务实,执政为民的报告倒是没听进几句,看着这些广播频率表,却有一种情绪在慢慢升腾。乘着周一有点闲散时间,就想起到了过往的日子。

曾几何时,一个带收音功能的Walkman成为我学生时代最渴望拥有的物件之一(还有就是一双Nike的球鞋,可惜这份期望直到工作后才得以实现)。18岁生日的时候,善心大发的父母为我买了部SONY Walkman作为礼物。在当时只能用"久旱逢甘霖"来形容我的心情,从此每天野营的《音乐早餐》和《中文金曲馆》伴着太阳一同把我叫起,日落之时又有裴子安《澳大利亚音乐航班》和《旁氏流行歌曲排行榜》伴随左右,晚间则在小凡的《篇篇情》中结束。在那个既无Cable TV,更没Internet的时代,这个其貌不扬的黑灰匣子陪我度过了整个后青春期时代。成为我收集资讯最主要的工具以及了解外面世界的窗口。我在陆悦农的《今夜不太晚》中听到了《第一次亲密接触》的广播剧,并由此让我对网络充满了青春少年般的幻想与憧憬。我在《白丽音乐万花筒》里认识了Oasis,直到如今Oasis仍旧是我的最爱。每周日痴痴的守候就是为了能一听他们的靡靡之声,可恼的只是每次节目开始的时段正好是家里开饭的时间。对一个新陈代谢正处于巅峰状态的青年人来说,这是一个多么痛苦的抉择。

时过境迁,如今早已不用等在Walkman前听Oasis了。Discman,Mp3 Player,DVD Player极大限度的充实了我的生活空间。但心境却总觉得不如过往的那般虔诚了。正所谓“书不借不读”。渴求信息的时代转眼变成了被信息包围的时代,我的Walkman也结束了它的历史使命,静静躺在抽屉里,同他一起躺着的还有一盒盒的录音磁带,那上头有自己学生时代最欣赏的歌手熊天平和齐秦的声音。

关上抽屉连同把记忆的闸门一起合上,关于Walkman的事儿就写到这儿吧。

December 01

转载:一点点印刷的知识


印前

露 白:漏白,印刷用纸多为白色,印刷或制版时,该连接的色不密合,露出白纸底色。
打 白:挂网时代的照相制版工艺。为补救上网图片深色位感光不足,可移开原稿闪光一次或放一张纸补点曝光,或直接使用flash灯,闪动白光,以增加原稿的深位网,使影像柔化。
爆 肥:暴食当然会肥,菲林银粒感多了光也会扩大地盘。手工套版更在感光片加隔透明厚胶片中曝光加肥。
补漏白:Colortrapping,分色制版时有意使颜色交接位扩张爆肥,减少套印不准的影响。
实 地:指没有网点的色块面积,通常指满版。
反 白:文字或线条用阴纹?印刷,露出的是纸白。
撞 网:不是渔民工?。调幅网分色工艺,网点角度分配出错,或每一网角距离小於25°,龟纹就开始明显。
飞 网:镜头制版的挂网工艺,正常曝光後取下挂网,补充短暂曝光增加反差。
狗 牙:狗的牙齿是凹凸交错的。图片像素不足,放大後边沿就出现狗牙状。
玫花点:像花鹿般的网纹。差的叫席纹,更差的是龟纹。
齐 头:版面排位的指令,以字首作基准线。延伸到拼版、装订,指以版头位为基准。
散 尾:文字排版的一种。只求字距统一,不求行末文字齐整。
蒙 片:不是迷魂药。是手工分色时的遮掩片,可用菲林晒制或红胶片割制,可作退地或修色之用。
蓝 版:不是打篮球,也不是RGB的B(蓝色),而是CMYK的C(青)版。

印刷

鬼 影:来历不明的印纹或暗影。多因旧型印刷机供墨不均引起。
瓜 打:不是指水瓜打狗。活版印刷时代「黑手党」执字粒使用的排版比字面较低的定位铅粒。
打 斗:学孙悟空的拿手好戏。底面印刷车有自动翻纸装置,咬纸口印面,反咬纸尾印底,一气呵成。
自 反:指一种节约印版的印刷方法。让纸张先印完一面,乾後把纸左右反转及底面反转,称为底面自反版,而纸尾当牙口底面反转,称为牙口反版尾。是印版不变,再印纸张背面的工艺。
飞 墨:印刷机转速快而墨身稠度不够,离心力使墨液飞溅。
墨 线:在印版上画一条规线,使刚好印在纸张规位,可一目了然监控针位。
浮污:印版亲水不力,变成亲油,当然起薄薄的油污,问题多在水斗水的酸?度不对。
起 炮:炮,滚筒俗称。橡皮滚筒离开压印滚筒的动作。
夹 炮:太多纸张夹在压印滚筒和橡皮滚筒间,安全感应使印刷机停止转动。
哪 渣:不应印到纸张上的墨污,问题也出在水墨平衡。
打 掣:印刷机停止转动,原因多为进纸不顺或双张进纸触发安全装置。
针 位:不是打针的位置。印张的挡规边位。纸张有长短,印刷套色及裁切需有针位?对齐。
连 晒:节约菲林的连续晒版工艺。用套准十字移动曝光。
过 底:印刷事故的术语。指墨层太厚实不及乾燥,污染了压在上面的纸张背面。
车 头:上声,菲律宾称司机为车头。印刷的车头不是机长,而是指印刷转速数。
石 数:石印时代对印刷数量的称谓。纸张压印一次色称一石。
二 手:不是指二手货。指印刷机的副手,或称睇掣。
打 稿:不是与稿有仇,而是通过打样机预先印刷一个正式印刷时的样稿。
飞 达:不是快递,是印刷机送纸的传送装置。

装订

出 血:被刀了当然出血。印刷装订工艺要求页面的地色或图片,须跨出裁切线3mm,称为出血。
飞 边:飞,裁切、去掉之意。飞边指切除出血边位,乃装订术语。
切 斜:变形,裁切歪了,直角变菱角书,多由纸闸压力不均或纸栅不正引致。
磨 光:以砑光滚筒处理印张,表面会光滑,此为加工表面处理工艺。
反手摺:日本摺书机的摺纸。32版摺法第4摺须反摺。
正 版:不是指软件。书版首码所在版面叫正版,次码所在版面称反版,正反版称一组、一帖或一框。
纸 闸:不是关纸的门,是切纸的机器。
骑马钉:书本装订的一种方法,动作如跨上马背。薄本书(6帖以下)套好後,跨放在铁架上,以穿压铁线钉。
猪肠卷:摺书贴的一种方法,动作如卷肠粉,用3个上梭2个下梭可摺32版。
风琴摺:摺书贴的一种方法。书摺摺完拉开如屏风。
反封面:手工装订上封面的一种方法,先上封底边胶定好位,後上书脊封面边胶,再做一个「反」封面的动作。
毛 书:不是书本长毛,指锁好线而未上封面裁切的坯书。
笃头布:精装书脊上下各一段连结皮壳的布条。起牢固美观的作用。
火 印:精装封面的一种加工动作如烫金,湿度较高。

排版

高调:受光多的图片位当然光亮雪白,日本分色风格喜欢高光位无网点,以拉长图片层次。
低调:不是声音微弱,是指图片阴暗,或称暗调。
爆机:不是恐怖事件。内存或磁盘空间不够都会使电脑死火。
 磅:不是指重量。是字体排版之量度单位,英文字母最小单位是Point,1英寸分72单位磅。
 级:不是指阶层,光学照排时代是指文字大小,4级为1个mm。
 号:不是指喇叭,是指铅印时代字粒大小,最大特号字72磅,最小8号字5磅。
平体:不是指发型,而是指把方块型以镜头变形,使字扁平,平1为1成(10%),平2为2成,平3为3成,平4为4成。
长体:不是指身型,而是指窄身字,长1窄1成,长2窄2成,长3窄3成,长4窄4成。
喷笔:以压缩气的喷色笔,利用气刷喷画。DTP时代之前之手工制作渐变色方法。
字节:不是文字的节日,是电脑机器语言的单位Byte,8个bit等於一字节。
November 07

PHP在Windows XP环境下加载Curl库

系统环境
操作系统:Windows XP sp2
PHP版本:PHP5.1.1
Apache版本:Apache2.0.55
 
目标
加载Curl库,使PHP可以使用Curl库中的函数
 
步骤
1,编辑php.ini,查找extension=php_curl,将该句首的‘;’号去掉,使加载语句生效。
2,php_curl.dll的加载需要2个外库dll文件的支持,libeay32.dll  ssleay32.dll
libeay32.dll版本为0.9.8 公司信息为The OpenSSL Project  文件大小为1064KB
ssleay32.dll版本为0.9.8 公司信息为The OpenSSL Toolkit  文件大小为196KB
 
3,将这2个dll文件复制到C:\Windows\System32 目录下。
 
4,重启Apache
 
5,打开phpinfo页面,如果加载Curl成功,会有如下显示

curl

CURL support enabled
CURL Information libcurl/7.14.0 OpenSSL/0.9.8a zlib/1.2.3
 
异常处理
1,完成步骤1-3后,重启Apache时,提示“ Unable to load dynamic library 'D:\PHP5\ext\php_curl.dll',操作系统无法运行%1 ”
 
处理:1)检查php.ini文件中extension_dir的值,在extension_dir目录下是否有php_curl.dll文件
        2)检查C:\Windows\System32  目录下是否有libeay32.dll ssleay32.dll
        3)检查libeay32.dll ssleay32.dll的版本信息,公司信息和文件大小是否符合步骤2中所述,如果dll文件没有出现版本信息,公司信息等,则该dll文件即使复制到C:\Windows\System32 目录下,仍旧是无效的。
        4)libeay32.dll ssleay32.dll这两个文件可以在PHP5安装包中获得。

php中数据的批量导入(csv文件)

有时写程序时后台要求把大量数据导入数据库中,比如计算机考试成绩的查询、电话簿的数据等一般都是存放在excel中的,这时我们可把数据导出成csv文件,然后通过以下程序即可在后台批量导入数据到数据库中。

  下面只是主要程序部分:

<?php
/*****************************************
**********作者:冲星/arcow****************
**********njj@nuc.edu.cn*******************
**********php导入csv文件到数据库**********
**********同时计算程序执行时间***********
**********www.knowsky.com***********
****************************************/
//定义获取时间函数
function getmicrotime(){
    list($usec, $sec) = explode(" ",microtime());
    return ((float)$usec + (float)$sec);
}
?>

<?php
$time_start = getmicrotime();
include("db.inc.php");//连接数据库
$db=new testcsv;
?>
<?php
$handle = fopen ("test.csv","r");
$sql="insert into scores(idcard,names,num,sex,nation,score) values('";
while ($data = fgetcsv ($handle, 1000, ",")) {
   $num = count ($data);
   for ($c=0; $c < $num; $c++) {
       if($c==$num-1){$sql=$sql.$data[$c]."')";break;}
       $sql=$sql.$data[$c]."','";
   }
print "<br>";
echo $sql."<br>";
$db->query($sql);
echo "SQL语句执行成功!<br>";
$sql="insert into scores(idcard,names,num,sex,nation,score) values('";
}
fclose ($handle);
$time_end = getmicrotime();
$time = $time_end - $time_start;
echo "程序执行时间:".$time."秒";
?>

IMDB 15th Anniversary

虽然是去年的评选,但IMDB的金字招牌提醒你不应该错过这15部电影。看看你看过哪几部?
 
(红色标注的是我还没看过的)
 
Top Staff Picks
   
1 Fight Club (1999)
2 The Matrix (1999)
3 Pulp Fiction (1994)
4 The Usual Suspects (1995)
5 The Shawshank Redemption (1994)
6 Goodfellas (1990)
7 Memento (2000)
8 Fargo (1996)
9 The Sixth Sense (1999)
10 L.A. Confidential (1997)
11 Schindler's List (1993)
12 Mulholland Dr. (2001)
13 Cidade de Deus (2002)
14 Sen to Chihiro no kamikakushi (2001)
15 American Beauty (1999)
 
 
November 03

使用Pear实现RSS Parsing

RSS是Web2.0的身份牌,随着Web2.0的升温关于RSS文件的操作也变得日益频繁。Pear提供了对RSS 09/1/2的支持,在http://pear.php.net下载XML_RSS以及XML_Parse包,解压RSS.php和Parser.php至Pear/XML目录中。

根据以下的Example,便可轻易对本地RSS文件或在线RSS链接做出分析:


<?php
require_once "XML/RSS.php";

$rss =& new XML_RSS("http://slashdot.org/slashdot.rdf");
$rss->parse();

echo
"<h1>Headlines from <a href=\"http://slashdot.org\">Slashdot</a></h1>\n";
echo
"<ul>\n";

foreach (
$rss->getItems() as $item) {
    echo
"<li><a href=\"" . $item['link'] . "\">" . $item['title'] . "</a></li>\n";
}

echo
"</ul>\n";
?>

提醒一句,如果要分析在线的RSS链接,需要设置php.ini,将
allow_url_fopen属性设置为On,重启Apache即可!

November 01

PHP-有关邮件发送

邮件发送是Web开发中经常用到的一项功能,PHP对邮件发送提供了很成熟的技术支持。不仅内置了mail函数(需要服务器端有SendMail、Qmail、Imail等邮件服务组件的支持),而且在PEAR中也提供有Mail组件,供调用Socket接口完成邮件发送的工作。从实际使用的情况来看,通过SendMail组件发出的邮件,非常容易被一些大的邮件服务商误以为SPAM而遭到拒收。所以现在一般的邮件发送都是通过调用Soket接口,完成发送功能。

Pear::Mail的使用方法介绍

<?php
   require_once(' pear/Mail/smtp.php');

   $params = array('host'=>'smtp.mailserver.addreess',    //SMTP服务器地址,如smtp.citiz.net
                               'auth'=>true,      //SMTP服务器是否需要安全认证;
                               'username'=>'admin',    //邮件发送者用户名;
                               'password'=>'123456');    //邮件发送者密码;

   $header = array('Subject'=>'Hello, You have a new mail.',    //邮件主题
                               'BCC'=>'',    //密抄
                               'From'=>Mr.Smith.'<'.smith@sample.com.'>',    //邮件发送者信息
                               'MIME-Version'=>'1.0',
                               'Content-type'=>'text/plain:charset="gb2312"');     //字符编码选择;
   
   $content = 'This is mail content... ... ';
   $sendmail = new Mail_smtp($params);
   $result = $sendmail->send('receiver@mailaddress',$header,$content);    
   if ($result) {
       echo "You have  succeeded send a message.";
   }else{
       print_r($result);
       die();
   }
?>
通过这样几句简单的代码,我们就可以实现一封邮件的发送。从代码中可以看出,主要的配置信息在变量$params和变量$header中,$params主要保存用于发送邮件的SMTP服务器的基本信息,$header则存放这封邮件的Header信息。一份电子邮件所包含完整的Header信息如下:

 Message-Id: <44F6F28F.1030906@sample.com>
Date: Thu, 31 Aug 2006 23:30:39 +0800
From: Nickname <username@sample.com>
User-Agent: Thunderbird 1.5.0.2 (Windows/20060308)
MIME-Version: 1.0
To: mail-list@sample.com
Subject: This is a test.
BCC:
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Status: RO
Content-Length: 819
Lines: 45

September 14

MVC设计模式带来更好的软件结构和代码重用

原文载于Builder.com; ZDNet China翻译; 2002-11-13 03:44 PM发表;

 模型-视图-控制器(MVC)是Xerox PARC在八十年代为编程语言Smalltalk-80发明的一种软件设计模式,至今已被广泛使用。最近几年被推荐为Sun公司J2EE平台的设计模式,并且受到越来越多的使用 ColdFusion 和 PHP 的开发者的欢迎。模型-视图-控制器模式是一个有用的工具箱,它有很多好处,但也有一些缺点。

MVC如何工作

MVC是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。

视图
视图是用户看到并与之交互的界面。对老式的Web应用程序来说,视图就是由HTML元素组成的界面,在新式的Web应用程序中,HTML依旧在视图中扮演着重要的角色,但一些新的技术已层出不穷,它们包括Macromedia Flash和象XHTML,XML/XSL,WML等一些标识语言和Web  services.

如何处理应用程序的界面变得越来越有挑战性。MVC一个大的好处是它能为你的应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,不管这些数据是联机存储的还是一个雇员列表,作为视图来讲,它只是作为一种输出数据并允许用户操纵的方式。

模型
模型表示企业数据和业务规则。在MVC的三个部件中,模型拥有最多的处理任务。例如它可能用象EJBs和ColdFusion Components这样的构件对象来处理数据库。被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据。由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。

控制器
控制器接受用户的输入并调用模型和视图去完成用户的需求。所以当单击Web页面中的超链接和发送HTML表单时,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后用确定用哪个视图来显示模型处理返回的数据。

现在我们总结MVC的处理过程,首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理,然后模型用业务逻辑来处理用户的请求并返回数据,最后控制器用相应的视图格式化模型返回的数据,并通过表示层呈现给用户

为什么要使用 MVC

大部分Web应用程序都是用像ASP,PHP,或者CFML这样的过程化语言来创建的。它们将像数据库查询语句这样的数据层代码和像HTML这样的表示层代码混在一起。经验比较丰富的开发者会将数据从表示层分离开来,但这通常不是很容易做到的,它需要精心的计划和不断的尝试。MVC从根本上强制性的将它们分开。尽管构造MVC应用程序需要一些额外的工作,但是它给我们带来的好处是无庸质疑的。

首先,最重要的一点是多个视图能共享一个模型,正如我所提及的,现在需要用越来越多的方式来访问你的应用程序。对此,其中一个解决之道是使用MVC,无论你的用户想要Flash界面或是 WAP 界面;用一个模型就能处理它们。由于你已经将数据和业务规则从表示层分开,所以你可以最大化的重用你的代码了。

由于模型返回的数据没有进行格式化,所以同样的构件能被不同界面使用。例如,很多数据可能用HTML来表示,但是它们也有可能要用Macromedia Flash和WAP来表示。模型也有状态管理和数据持久性处理的功能,例如,基于会话的购物车和电子商务过程也能被Flash网站或者无线联网的应用程序所重用。

因为模型是自包含的,并且与控制器和视图相分离,所以很容易改变你的应用程序的数据层和业务规则。如果你想把你的数据库从MySQL移植到Oracle,或者改变你的基于RDBMS数据源到LDAP,只需改变你的模型即可。一旦你正确的实现了模型,不管你的数据来自数据库或是LDAP服务器,视图将会正确的显示它们。由于运用MVC的应用程序的三个部件是相互对立,改变其中一个不会影响其它两个,所以依据这种设计思想你能构造良好的松偶合的构件。

对我来说,控制器的也提供了一个好处,就是可以使用控制器来联接不同的模型和视图去完成用户的需求,这样控制器可以为构造应用程序提供强有力的手段。给定一些可重用的模型和视图,控制器可以根据用户的需求选择模型进行处理,然后选择视图将处理结果显示给用户。

MVC的缺点
MVC的缺点是由于它没有明确的定义,所以完全理解MVC并不是很容易。使用MVC需要精心的计划,由于它的内部原理比较复杂,所以需要花费一些时间去思考。

你将不得不花费相当可观的时间去考虑如何将MVC运用到你的应用程序,同时由于模型和视图要严格的分离,这样也给调试应用程序到来了一定的困难。每个构件在使用之前都需要经过彻底的测试。一旦你的构件经过了测试,你就可以毫无顾忌的重用它们了。

根据我个人经验,由于我们将一个应用程序分成了三个部件,所以使用MVC同时也意味着你将要管理比以前更多的文件,这一点是显而易见的。这样好像我们的工作量增加了,但是请记住这比起它所能带给我们的好处是不值一提。

MVC并不适合小型甚至中等规模的应用程序,花费大量时间将MVC应用到规模并不是很大的应用程序通常会得不偿失

MVC是一条创建软件的好途径
MVC设计模式是一个很好创建软件的途径,它所提倡的一些原则,像内容和显示互相分离可能比较好理解。但是如果你要隔离模型、视图和控制器的构件,你可能需要重新思考你的应用程序,尤其是应用程序的构架方面。如果你肯接受MVC,并且有能力应付它所带来的额外的工作和复杂性,MVC将会使你的软件在健壮性,代码重用和结构方面上一个新的台阶。
September 08

smarttemplate之$tpl->result()问题解决一例

最近在用SmartTemplate开发,起初一直都很顺利,什么控制流,什么array,但是今天碰到模板嵌套就郁闷了,按照网上的方法始终不行.在使用了$tpl->result()之后的变量都不能替换了.
最后搜到的解决办法是:要将class.smarttemplate.php里面的unset ($_top);改为unset ($GLOBALS[’_top’]);才可以
 
注: 我的Smarttemplate 1.0.2的版本,原文就是unset ($GLOBALS[’_top’]); 无须做任何修改.
July 11

通过PHP取得Oracle系统时间后无法正常显示的问题

通过
 "$query = "SELECT sysdate FROM dual";
$usedateupdate = $dbh_oci ->getOne($query);"

输出 $usedateupdate,发现只能输出"DD-Mon-YY" 格式的日期信息,而不是预想中的"DD-Mon-YY HH24:MI:SS"格式.

解决方案:在SQL语句中,添加to_char()函数,指定自己需要的日期格式.
 原SQL语句修改如下:
"$query = "SELECT TO_CHAR(sysdate, 'DD-MM-YY HH24:MI:SS') FROM dual";"

后续问题: 将日期按指定形式赋值给一变量,然后在做INSERT操作时,发现原表中的DATE字段不能正常实现,一直提示not valid month

解决方案:在SQL语句中,使用to_date()函数,将字符串形式变量转义成日期型,
原SQL语句修改如下:
"$query = "INSERT INTO useritempack VALUES (S_PACKID.Nextval, '".$uid."', '".$infocode."', to_date('$usedateupdate','DD-MM-YY HH24:MI:SS'), '".ENABLED."', '".$toyinfo[0]['INFONAME']."', '".$toyinfo[0]['ISPIECE']."', '".$usenumupdate."', '".$toyinfo[0]['GAMEID']."', '".$isused."')";"
July 07

PHP读取Oracle数据库,中文字符显示问号的解决案例

本地测试无误,上传至服务器后,发现中文字符显示为????,而且每一处中文字符都变成????,初步估计并不是因为编码原因造成的,查阅了大量的资料,PHP Manual上的解释我认为最符合当前出现的状况,这里转载一段:

字符编码

PHP 的 XML 扩展库支持不同字符编码(character encoding)的 Unicode 字符集。字符编码有两种形式,它们分别是“源编码”(source encoding)和“目标编码”(target encoding)。PHP 对文档内部表示的编码方式是 UTF-8。

源编码将在 XML 文档被解析后完成。源编码可在建立一个 XML 解析器时指明(该编码方式在 XML 解析器的生命周期中不能被再次改变)。支持的编码方式包括 ISO-8859-1,US-ASCII 和 UTF-8。前两种为单字节编码,即每个字符被一个单一的字节表示。UTF-8 支持 1 至 4 个字节的多 bit(最多 12)字符编码。PHP 默认使用 ISO-8859-1 作为源编码方式。

目标编码将在 PHP 向 XML 处理器函数传送数据时被完成。当 XML 解析器被建立后,目标编码将被设置成与源编码相同的编码方式,但该方式可在任何时候被更改。目标编码将影响字符数据、标记符名称以及处理指令目标(PI target)。

如果 XML 解析器遇到其源编码方式表示能力之外的字符,它将返回一个错误。

当 PHP 在被解析的 XML 文档中遇到当前目标编码无法表示的字符时,这些字符将被“降级”。简单的说,这些字符将被问号替换

问题出在服务器上,可能是PHP的字符设置问题,可能是Apache的字符设置问题,也有可能是服务器安装了Oci8扩展后的客户端数据库字符设置的问题,在修改php.ini和httpd.conf文件无结后,终于确定问题出现在Oci8扩展的客户端数据库字符设置上,运行以下命令后,页面上的中文字符正常显示,问题解决!

export NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK

重启Apache

解决web服务器各种应用的乱码问题

Board logo

标题: 解决web服务器各种应用的乱码问题,欢迎补充和讨论 [打印本页]

作者: wingger     时间: 2004-8-5 22:51     标题: 解决web服务器各种应用的乱码问题,欢迎补充和讨论

乱码问题:

(1)服务器端:
修改httpd.conf (在Redhat中放置的位置为/etc/httpd/conf/)
查找:
AddDefaultCharset ISO-8859-1
改成:

#AddDefaultCharset ISO-8859-1

AddDefaultCharset off
]

这种方式关掉了服务器的默认语言的发送,这样仅凭html文件头中设置的语言来决定网页语言。

很多文章都说通过修改为 AddDefaultCharset GB2312 把缺省语言改成GB2312来解决中文乱码,确实GB2312内码的网页可以正常显示了,但这并非万全之策。因为当你的网页内码不是GB2312,就算你 在网页用下面的meta指定了正确的语言,如ISO8859-1,也不会解码为ISO8859-1,因为Apache已经先你一步将GB2312指定为网 页的语言了,


(2)养成良好的习惯,在每个网页的<head>;</head>;的最前面加入这行:

    

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">;
  一般的中文版网页编辑工具(例如FrontPage、Dreamweaver等)都会自动加上这行。

3、如何解决中文文件名无法访问

 

 在ie中选择 工具 ->; internet选项 ->; 高级 ->; 取消“总是以UTF-8发送URL”。
UTF-8网页空白,在网页中加上metadata标识后,还需要手动调整编码為 utf-8 才能正常显示

如果使用的是Mozilla、Mozilla Firefox、Sarafi等其他目前流行的浏览器,通常就不会有这样的问题。

在网页的meta中指定用UTF-8:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />;
在<head>;</head>;之前,把"Content-Type"放在最前面,便可以解決这样的问题了。

原因:

IE 解析网页编码时是 HTML 內的标识优先的,然后是 HTTP header ;而mozilla 系列的浏览器刚刚好相反。

一般情况在,很多人是把<title>;</title>;排在最前面,并且在title中就出现了UTF-8中文,这样,IE 在解析时,就先遇到UTF-8,不往下解析了,因此必须把如果把meta放在UTF-8出现之前,这样IE才能判断这个网页是以UTF-8编码的。


总之:
无论是 PHP、JSP、ASP 或其他动态网页的脚本语言,如果需要作编码设定,最好放在最前面。

使用php,也可以定义php的默认语言.

php.ini中:

default_charset = "gb2312"
释掉此行,做了以上修改,一样是为了让浏览器根据网页头中的charset来自动选择语言,这样就可以在同台服务器上提供多种语言的网页服务。


java中文乱码的解决




在基于JAVA的编程中,经常会碰到汉字的处里及显示的问题,比如一大堆乱码或问号。
这是因为JAVA中默认的编码方式是UNICODE,而中国人通常使用的文件和DB都是基于GB2312或者BIG5等编码,故会出现此问题。

1、在网页中输出中文。

JAVA在网络传输中使用的编码是"ISO-8859-1",故在输出时需要进行转化,如:
String  str="中文";
str=new  String(str.getBytes("GB2312","8859_1";
但如果在编译程序时,使用的编码是“GB2312”,且在中文平台上运行此程序,不会出现此问题,一定要注意。

2、从参数中读取中文

这正好与在网页中输出相反如:
str=new  String(str.getBytes("8859_1","GB2312";

3、操作DB中的中文问题

一个较简单的方法是:在“控制面扳”中,把“区域”设置为“英语(美国)”。如果还会出现乱码,还可进行如下设置:
取中文时:str=new  String(str.getBytes("GB2312");
向DB中输入中文:str=new  String(str.getBytes("ISO-8859-1");

4、在JSP中的中文解决:

在“控制面扳”中,把“区域”设置为“英语(美国)”.
在JSP页面中加入:
如果还不行正常显示,则还要进行下面的转换:
如:name=new  String(name.getBytes("ISO-8859-1","GBK";
就不会出现中文问题了。

CGI的?不知道对不?

找到CGI.pm,打开它,找到$self->;charset('ISO-8859-1');将它改为$self->;charset('GB2312');
作者: wingger     时间: 2004-10-10 11:03     标题: 解决web服务器各种应用的乱码问题,欢迎补充和讨论

UP
作者: haohaoo     时间: 2004-10-11 11:59     标题: 解决web服务器各种应用的乱码问题,欢迎补充和讨论

MM施主,俺崇拜你了
作者: wingger     时间: 2004-10-12 11:50     标题: 解决web服务器各种应用的乱码问题,欢迎补充和讨论

补充:
如果使用php,也可以定义php的默认语言.

php.ini中:

;default_charset = "gb2312"

注意这里是注释掉此行,做了以上修改,目的是为让浏览器根据网页头中的charset来自动选择语言,这样就可以在同台服务器上提供多种语言的网页服务。
作者: wingger     时间: 2004-10-12 12:31     标题: 解决web服务器各种应用的乱码问题,欢迎补充和讨论

java中文乱码的解决




在基于JAVA的编程中,经常会碰到汉字的处里及显示的问题,比如一大堆乱码或问号。
这是因为JAVA中默认的编码方式是UNICODE,而中国人通常使用的文件和DB都是基于GB2312或者BIG5等编码,故会出现此问题。

1、在网页中输出中文。

JAVA在网络传输中使用的编码是"ISO-8859-1",故在输出时需要进行转化,如:
String  str="中文";
str=new  String(str.getBytes("GB2312","8859_1";
但如果在编译程序时,使用的编码是“GB2312”,且在中文平台上运行此程序,不会出现此问题,一定要注意。

2、从参数中读取中文

这正好与在网页中输出相反如:
str=new  String(str.getBytes("8859_1","GB2312";

3、操作DB中的中文问题

一个较简单的方法是:在“控制面扳”中,把“区域”设置为“英语(美国)”。如果还会出现乱码,还可进行如下设置:
取中文时:str=new  String(str.getBytes("GB2312");
向DB中输入中文:str=new  String(str.getBytes("ISO-8859-1");

4、在JSP中的中文解决:

在“控制面扳”中,把“区域”设置为“英语(美国)”.
在JSP页面中加入:
如果还不行正常显示,则还要进行下面的转换:
如:name=new  String(name.getBytes("ISO-8859-1","GBK";
就不会出现中文问题了。
作者: level     时间: 2004-10-12 12:39     标题: 解决web服务器各种应用的乱码问题,欢迎补充和讨论


作者: wingger     时间: 2004-10-12 12:49     标题: 解决web服务器各种应用的乱码问题,欢迎补充和讨论

CGI的应该是这个:

找到CGI.pm,找到$self->;charset('ISO-8859-1');将它改为$self->;charset('GB2312');

或按以上同样处理,应该可以
作者: wingger     时间: 2004-10-31 14:59     标题: 解决web服务器各种应用的乱码问题,欢迎补充和讨论

彻底解决Tomcat 5.0.19中文乱码

  一、Include的页面乱码

  现象:include进来的页面出现乱码,其它页面正常。

  原因:Tomcat在缺省情况下使用ISO-8859-1编码,但是在include时有时Tomcat不能正确根据外层.jsp文件的编码解析include进来的文件,造成include进来的文件中的中文乱码。

  解决:这儿可以有很多解决办法,但是对于我们的中文环境,从根本上的解决办法是将Tomcat 5.0.19的核心缺省编码从ISO-8859-1修改为GBK 。

  
  二、提交的数据乱码

  现象:通过表单提交的数据出现乱码。

  原因:原因未明。可能是Tomcat在接收到请求后,并没有能够根据request中的信息提前正确的编码方式。

  解决:可以添加一个设置字符集的Filter。

package filters;

import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.UnavailableException;

public class SetCharacterEncodingFilter implements Filter {
 protected String encoding = null;
 protected FilterConfig filterConfig = null;
 protected boolean ignore = true;

 public void destroy() {
  this.encoding = null;
  this.filterConfig = null;
 }

public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain)
throws IOException, ServletException {

 // Conditionally select and set the character encoding to be used
 if (ignore || (request.getCharacterEncoding() == null)) {
  String encoding = selectEncoding(request);
  if (encoding != null)
   request.setCharacterEncoding(encoding);
 }

 // Pass control on to the next filter
 chain.doFilter(request, response);

}

public void init(FilterConfig filterConfig) throws ServletException {

 this.filterConfig = filterConfig;
 this.encoding = filterConfig.getInitParameter("encoding");
 String value = filterConfig.getInitParameter("ignore");
 if (value == null)
  this.ignore = true;
 else if (value.equalsIgnoreCase("true"))
  this.ignore = true;
 else if (value.equalsIgnoreCase("yes"))
  this.ignore = true;
 else
  this.ignore = false;

}

protected String selectEncoding(ServletRequest request) {
 return (this.encoding);
}

}
  

配置web.xml

<filter>
 <filter-name>Set Character Encoding</filter-name>
 <filter-class>filters.SetCharacterEncodingFilter</filter-class>
 <init-param>
  <param-name>encoding</param-name>
  <param-value>GBK</param-value>
 </init-param>
</filter>

<filter-mapping>
 <filter-name>Set Character Encoding</filter-name>
 <url-pattern>/*</url-pattern>
</filter-mapping>

作者: wingger     时间: 2004-10-31 15:05     标题: 解决web服务器各种应用的乱码问题,欢迎补充和讨论

没试过不知道行不行

java Servlet 中文乱码问题

import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class GetFormData extends HttpServlet
{
    public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException
    {
        String paramValues;
        paramValues=request.getParameter("UserName";
        response.setContentType("text/html;charset=gb2312";
        PrintWriter out=response.getWriter();
        out.println("<html>;<title>;test</title>;<body>;";
        out.println("以下是收到的数据<br>;";
        out.println("UserName="+paramValues);
        out.println("<br>;接收结束";
        out.println("</body>;";
    }
    public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException
    {
        doGet(request,response);
    }

}
只需要把

paramValues=request.getParameterValues("UserName"改成下面的就可以了
paramValues=request.getParameter("UserName";


当然这句是必須的 response.setContentType("text/html;charset=gb2312"
在jsdk2.1 tomcat及Domino5.8上的Servlet引擎运行通过了
作者: wingger     时间: 2004-10-31 15:09     标题: 解决web服务器各种应用的乱码问题,欢迎补充和讨论

Weblogic Server中如何解决中文显示乱码问题
《世界计算机》IT.ICXO.COM ( 日期:2004-09-29 16:07)


--------------------------------------------------------------------------------


由于操作系统、浏览器、数据库、JVM采用的字符集都不一样,基于Weblogic Server开发的应用经常出现中文显示乱码问题,其实在Weblogic Server上运行的WEB应用有很多与字符集有关的设置,下面做一个总结,为了正确处理中文,最好把这些设置都设上。


1. 在JSP文件头加入

<%@ page contentType=text/html; charset=GBK %>;
指定该JSP采用的字符集。



2.在Weblogic.xml文件的中加入:

QUOTE:
encoding
GBK
指定JSP文件中采用的字符集,在JSP文件中的<%@ page contentType=text/html; charset=GBK %>;会覆盖该设置



3.在Weblogic.xml文件的中加入

compilerSupportsEncoding
true
如果为TRUE,指定在编译JSP文件时,采用在JSP文件中定义的
<%@ page contentType=text/html; charset=GBK %>;或中定义的encoding参数中定义的字符集进行编码,如果为FALSE,则采用JVM中默认指定的字符集进行编码。



4. Weblogic Server需要把HTTP request(GET 和POST)中的数据从它的原始编码转化为Unicode,以便Java servlet API进行处理,为了做这种转换,Weblogic Server需要知道HPPT request中的数据的编码方式。这可以通过在Weblogic.xml的中设置.

〈INPUT-charset>;
/
GBK
5.从ORACLE数据库中检索出来的中文显示不正确时,在这种情况下,如果数据库使用的是中文字符集,并使用的是Type 2 JDBC Driver时,可加入Weblogic.codeset=GBK的属性来解决这个问题。代码如下:

java.util.Properties props = new java.util.Properties();
props.put(Weblogic.codeset, GBK);
props.put(user, scott);
props.put(password, tiger);
String connectUrl = jdbc:Weblogic:oracle;
Driver myDriver = (Driver)
Class.forName(Weblogic.jdbc.oci.D