• 2008-06-23

    6月的USTC - [生活杂记]

      6月的USTC,沐浴在暴雨和闷热中。在USTC的日子很快就要结束了,只有不到三个周了。在这最后的日子里,得收集一些资料了。

       在过去的一周,主要在修改XMS的几个功能,也正好系统的学习了PHP的基础知识。不过最后这几天,犯了一个很低级的错误。竟然把PHP的for语句写 成了for($i=0;$i++;$i<5),直到今日中午才发现。本来一个不太难的功能,结果就这余个问题,苦恼了几日,还好这几日不是都是在做 这件事。 这是修改XMS的最后一个功能,到此为止,给网络中心修改的程序应该告一段落了,后面的时间可以做点自己的事情了。

      下午经过石榴园时,照了以下几张照片。

  •   基本上分为三个步骤,第一步:打开数据库链接;第二步:进行操作;第三步:释放变量,关闭数据库。(以MYSQL为例)

    第一步:打开数据库链接:

    $localhost="localhost";
    $user="root";
    $password="123456";
    $db="mydb";
    function db_connect($user,$password,$db){
      mysql_connect($localhost, $user, $password)                //链接函数
           or die('I cannot connect to db: ' . mysql_error());    //链接失败将返回错误信息
      mysql_select_db($db);                                        //选择使用的数据库
    }

     db_connect();        //打开数据库

  •   开始着手给USTC NIC的网站系统修改代码了。系统采用的是PHP,基本上能看懂代码,还能修改,以前也用一些CMS做过网站,效果都还不错,但是一直都没有系统的了解PHP。今日休整的第一个问题就是单引号的问题。

       网站系统中的模板是HTML代码,存放在数据库中。在HTML代码中常常会用到单引号,比如某个HTML标签的属性值(虽然在XHTML1.0中尽可能 的不用),还有就是里面的Javascript代码可能会有单引号。在修改模板时,只要模板中含有单引号,修改就会失败。

      以下是PHP中对单引号和双引号的一些知识。

    1、定义字符串

      在PHP中,字符串的定义可以使用单引号,也可以使用上引号。但是必须使用同一种单或双引号来定义字符串,如:‘Hello"和“Hello'为非法的字符串定义。

  •   Ubuntu的确是个很好的Linux版本,安装简单,不需要太多的配置。最近为了给网络中心修改程序,在虚拟机上装了一个。不过默认安装后没有PHP、SSH和GD图形库,但Ubuntu似乎已经为我们考虑了这些,只需要在Shell里键入几个命令就可以将PHP、SSH和GD加载上了,不像有些版本,需要多次编译安装。在执行命令之前先要准备好Ubuntu 7.10 Server的安装盘,加载过程中需要。

      加载PHP。 在Shell方式下键入:sudo apt-get install php5-cli 即可。

      加载SSH。在Shell方式下键入: sudo apt-get install openssh-server。然后可以通过ps -e |grep ssh命令查看是否启动。如果只有ssh-agent那ssh-server还没有启动,需要/etc/init.d/ssh start,如果看到sshd那说明ssh-server已经启动了。

      加载GD图形库。 在Shell方式下键入: sudo apt-get install php5-gd。然后重启apache2,用命令sudo /etc/init.d/apache2 restart。然后可以用phpinfo();看到GD是否支持。

  •   学院主页搬迁到Linux服务器上后,乱码问题一直困扰这我。这样的乱码只是部分的乱码,开始还以为是服务器是英文的缘故,又没有安装中文字符集,还想把中文字符集加上,但却加不上。后来想像这跟服务器关系不大,乱码是在客户端产生,只要浏览器的编码改变后还是正确的。

    今天早上突然想到是不是Web服务器的问题。首先查看了Php.ini,里面没有配置字符集的内容。于是又找到Apache的配置文件,看了看,发现期中有一条配置是“AddDefaultCharset ISO-8859-1” ,哈哈,这下算是明白了,把这一行注释,然后重新启动Apache,打开网站浏览一看,问题解决了。

    不过现在还有一个重要的问题要解决,那就是文件上传的问题,这个问题可能就没那么简单了。只有留到出差回来后解决了。