日历

« 2008-10-10  
   1234
567891011
12131415161718
19202122232425
262728293031 

音乐欣赏

统计信息

  • 访问量: 421
  • 日志数: 4
  • 建立时间: 2007-05-19
  • 更新时间: 2007-05-31

RSS订阅

{看到你进我的网站我真的是好高兴}我是一个{在校}的{英语专业的大学生}{准确地说我是被一个错误的时间举行的一次{错误}的{考试}带到这个错误的地方的常范错误的人}|虽然为{英语专业}可是我几乎把{所有}的时间都花在了{计算机},我自认为我这一辈是靠{计算机}知识而不是{英语}知识生存的。今日{建站}一个{写写心得}{做做评论}{交交朋友}{搞搞兴趣}

我的最新日志

  • PHP 格式化 MYSQL 查询结果里遇到的一个问题

    2007-5-31

    今天在学习PHP格式化MYSQL查询结果的时候,使用了下列的自定义函数:
    function displayWines($result)
    {
        print "<h1>Our Wines</h1>";
        
        //表开始,加上队友名称
        print "\n<table>\n<tr>\n" .
              "\n\t<th>WINE ID </th>" .
              "\n\t<th>WINE NAME</th>" .
              "\n\t<th>TYPE</th>" .
              "\n\t<th>YEAR</th>" .
              "\n\t<th>WINERY ID </th>" .
              "\n\t<th>DEscrīptION </th>" .
              "\n</tr>";
        
        //把记录截取至数组 $row ,直到结果集不再有记录为止
        while ($row = @ mysql_fetch_array($result))
        {
            //表格开始
            print "\n<tr>";
            
            //配合相应的<td>,输出记录中每个字段
            foreach($row as $data)
                print "\n\t<td> {$data} </td>";
            
            //一行结束
            print "\n</tr>\n";
        }
        
        //表格结束
        print "\n</table>\n";
    }

    输出结果如下:

    Our Wines

    WINE ID WINE NAME TYPE YEAR WINERY ID DEscrīptION
    1 1 Archibald Archibald 2 2 1997 1997 1 1

    2 2 Pattendon Pattendon 3 3 1975 1975 1 1

    3 3 Lombardi Lombardi 4 4 1985 1985 2 2

    4 4 Tonkin Tonkin 2 2 1984 1984 2 2

    5 5 Titshall Titshall 5 5 1986 1986 2 2

    6 6 Serrong Serrong 6 6 1995 1995 2 2

    7 7 Mettaxus Mettaxus 5 5 1996 1996 2 2

    8 8 Titshall Titshall 4 4 1987 1987 3 3

    9 9 Serrong Serrong 3 3 1981 1981 3 3

    10 10 Chester Chester 5 5 1999 1999 3 3

    11 11 Chemnis Chemnis 2 2 1980 1980 3 3

    结果里为什么会把 $data 都输出再次,搞不懂

  • PHP自带可以代替echo调试的unit函数

    2007-5-29

    今天发现个函数 assert 和 assert_options, 他们组合可以完成一个简单的phpunit的功能, 但是实在是太简单, 所以用处不太大, 但是还是记录一下好了.

      主要问题是不能灵活的自己定义错误的提示信息,只能提示出问题的文件和行数.

      具体的使用方法可以看 <> 或者 <>

      同时可以结合 <>中 "XXVII. Error Handling and Logging Functions" 章节里的东西,共同使用.

      下面是我写的一个测试文件, 包含了所有的功能的测试,不过ASSERT_QUIET_EVAL一直不太明白,没测试出来具体有什么样作用

    以下是引用片段:
    <?php
    function assert_failed($file, $line, $expr) {
        print "Assertion failed in $file [ $line ] : $expr <br/>";
    }
    //error_reporting设置为0, 相当于调用assert_options(ASSERT_WARNING, 0);
    //error_reporting(0);
    //是否启用对ASSERT_ACTIVE的支持
    assert_options(ASSERT_ACTIVE, 1);
    //是否在发送第一次wanning的时候,停止脚本的执行
    assert_options(ASSERT_BAIL, 0);
    //没搞定,还不明白具体怎么用,偶测试不出来
    //assert_options(ASSERT_QUIET_EVAL, 0);
    echo "step 1 <br />";
    assert(1==1);
    echo "step 2 <br />";
    assert(2==1);
    echo "step 3 <br />";
    //设定assert的callback样式,可以自己定义wanning信息显示时的样式
    assert_options(ASSERT_CALLBACK, 'assert_failed');
    //不显示assert()自己产生warnning信息,如果设置了ASSERT_CALLBACK,仍然还会显示ASSERT_CALLBACK函数对应的信息,但是函数中传入的$expr参数不起作用.
    //assert_options(ASSERT_WARNING, 1); 
    assert(1==1);
    assert((1/0)>2);
    echo "step 4 <br />";
    ?>

  • 互联网广告花样频出

    2007-5-24

    曾经有一段时间,互联网上充斥着躲不掉的弹出式广告,有的相当低俗,比如向喜欢窥探隐私者推销的廉价监控摄像头。尽管这段不堪回首的日子或许已经过去,不过随着互联网广告继续蚕食着电视和平面媒体广告的市场,广告商在广告设计上变得更为大胆,使用更多的视觉效果,而且网站也在学习如何吸引访客关注其页面上的广告。

    广告客户表示,互联网广告眼下最走红的是“富媒体”(rich media),它具有动画、声音等广告表现形式。LowerMyBills.com因铺天盖地的广告宣传而臭名远扬,广告中的主角既有月夜中在屋顶跳舞的人,也有大吃一惊的办公室职员。还有些广告当用户把鼠标放在上面时就会激活,跳出“占地”更大的广告窗口,兜售汽车、电影、肥皂,不一而足。

    富媒体也包括视频。互联网广告新一代中表现形式最为复杂的就是电视广告的网络版了,只要用户点击一下,广告就会开始播放。

    视频在各大网站都很流行,它们也不仅仅是广告商的专利。新闻网站不但提供传统的文字内容,还增加了视频报导。他们这么做主要是为了向广告客户收取更多的费用,这项收费最多能比传统文字内容广告高出两倍。

    同样,客户也对视频广告感兴趣,因为这是他们熟悉的领域,可以把在电视上播放过的成功广告拿来直接使用。

    这种视频广告经常通过“前置”方式进行播放,即在用户想看的视频内容前强制插播。在大多数情况下,视频广告是没办法跳过去的。

    目前互联网上的争论焦点是这些前置广告应该播放多长时间,因为人集中注意力的时间越来越短,一般认为播放广告30秒钟已经是上限。

    ESPN体育网站是最热门的网站之一,它正与Gatorade公司商谈,在视频中不再加入前置广告;不过在其热门晚间节目“运动聚焦”(SportsCenter)的网络简短版中,仍会插播一段广告。在节目中,ESPN主持人先介绍一下本期内容提要,然后说稍后回来,进入一段10秒或15秒钟的Gatorade饮料广告,通常广告内容是一位运动员谈论体育运动。放完广告后,ESPN的节目继续进行。

    这些视频广告需要“库存”页面作为平台来播放广告。Undertone Networks网络广告咨询公司的首席执行官迈克尔•凯西迪(Michael Cassidy)说,近期各大网站正在采取措施增加页面的“库存量”,以抵消因互联网逐渐成熟导致用户数量增长放缓所带来的不利影响。因此,各家网站开始增加看上去与网站“主题”似乎不相干的内容,比如,天气频道(Weather Channel)的网站在有关气象的栏目之外还开设了宠物栏目,上面有网站读者的宠物猫狗的图片。

    各大网站还在不断更新吸引眼球的方式,比如利用各类排行榜、幻灯片播放以及照片收藏等现已十分常见的网络内容。你可能以为自己在点击“年度十大科技酷玩”的网页,而实际上,你在帮助网站增加10个可刊登广告的新网页。

    其它网站也在借鉴电视运营的一些技巧:电视中不时会播放节目预告,让你了解一部分内容,吸引你稍后来收看这个节目。举例而言,热门的雅虎(Yahoo)主页上方经常会有头条新闻的简介,吸引你点击链接以浏览整个新闻故事。最近就有一个这样的例子:一个页面上有条新闻,说女演员安娜•尼可•史密斯(Anna Nicole Smith)所生孩子的亲生父亲已通过DNA鉴定加以确认;你点击链接后会弹出一个新页面,告诉你那人就是莱瑞•伯克海德(Larry Birkhead)。在这个过程中,雅虎销售了两个页面广告,而非仅仅一个。

    雅虎承认这种做法的存在,但声明这种方式是有选择性的,以避免激怒用户,而且只用于那些不太严肃的新闻故事上。

    一些新闻网站还有一个增加广告页面的招数,即将一篇较短的新闻报导分成两三个部分,迫使读者分页浏览才能看完。当然,读者可以将页面设置为打印预览,绕开这种伎俩,一次读完所有内容。

    网络广告中的许多变化不易被用户察觉,网站可以利用信息优势来针对特定的用户群发布广告。仅次于雅虎新闻(Yahoo News)的美国第二大新闻网站“天气频道”让用户选择需要天气预报服务的地点。

    “天气频道”网站销售部负责人彼得•格林恩(Peter Greene)说,经验告诉他们,那些输入邮政编码来确定天气预报地点的用户很可能就住在该区域,而那些输入城市名的用户很可能是路过此地。因此,网站的销售人员可以根据两类不同的搜索方式来发布不同的广告:输入邮政编码的看到当地零售商的广告,而输入城市名的看到航空公司或饭店的广告。

    虽然各种网站在广告发布方面越来越“锐意进取”,但一些声誉卓着的网站表示,他们对此采取谨慎态度,以免对其品牌造成不利影响。举例而言,有线电视新闻网(CNN)网站在2006年增加了一倍的视频新闻数量,但将主页顶端的广告数量限制为一个。网站广告部负责人格莱格•戴尔巴(Greg D'Alba)说道,我们称之为优雅的广告。
  • 关于PHP5中 构造函数遇到的问题

    2007-5-23

    我在学习PHP中,学到 “构造函数”的时候,因为我这里总是不太懂,所以遇到了下面的这个问题,我不知道怎么解决,不知道有没有谁可以告诉我是为什么:
    如下所示:
    <?php

    class UnitCounter
    {
        var $units = 0;
        var $weightPerUnit = 1.0;
        
        function add($n = 1)
        {
            $this->units = $this->units + $n;
        }
        function totalWeight()
        {
            return $this->units * $this->weightPerUnit;
        }
        //构造函数:设定成员变量的初始值
    //    function construct($unitWeight = 1.0)
    //    {
    //        $this->weightPerUnit = $unitWeight;
    //        $this->units = 0;
    //    }
    }
    ?>
    <?php
    $apple = new UnitCounter(1.2);
    $apple->units = 10;
    $apple->add(2);
    //$Weight = $apple->totalWeight();
    print "There are " . $apple->totalWeight() . " kg apples.";
    ?>
    这段代码执行结果为:There are 12 kg apples.
    但是如下代码:
    <?php

    class UnitCounter
    {
        var $units;
        var $weightPerUnit;
       
        function add($n = 1)
        {
            $this->units = $this->units + $n;
        }
        function totalWeight()
        {
            return $this->units * $this->weightPerUnit;
        }
        //构造函数:设定成员变量的初始值
        function construct($unitWeight = 1.0)
        {
            $this->weightPerUnit = $unitWeight;
            $this->units = 0;
        }
    }
    ?>
    <?php
    $apple = new UnitCounter(1.2);
    $apple->units = 10;
    $apple->add(2);
    //$Weight = $apple->totalWeight();
    print "There are " . $apple->totalWeight() . " kg apples.";
    ?>
    的执行结果为:There are 0 kg apples.
    -------------------------------------------------
    我是在PHP5上运行的。请问有没有谁知道是为什么啊。
     
Open Toolbar