随笔 - 4  文章 - 1 评论 - 29 trackbacks - 0
<2012年2月>
2930311234
567891011
12131415161718
19202122232425
26272829123
45678910

昵称:猪怕壮
园龄:4年3个月
粉丝:0
关注:0

搜索

 
 

常用链接

随笔档案

相册

最新评论

    只有注册用户登录后才能阅读该文。阅读全文
posted @ 2011-04-28 17:32 猪怕壮 阅读(5) 评论(1) 编辑

成功者价值连城的习惯

    成功是一种习惯,失败也是一种习惯。你的习惯无法改变,但可以用好的习惯来替代。成功很简单,只要简单的事情重复做,养成习惯,如此而已。以下是成功者十三个价值连城的习惯,我们称之为“百万元的习惯”。

    习惯一:成功者清楚地了解他做每一件事情的目的。

    成功者虽重视事情的结果,但更重视事情的目的,而目的的清楚则有助于他达到结果并且享受过程;

    习惯二:成功者下决定迅速果断,之后若要改变决定,则慎思熟虑。

    一般人经常在下决定时优柔寡断,决定之后却有轻易更改;成功者之所以能迅速下决定,因为他十分清楚自己的价值层级和信念,了解事情的轻重缓急,因此能有系统的处理;

    习惯三:成功者具有极佳的倾听能力

    倾听并非是去听对方说的话,而是去听对方话中的意思。倾听的技巧包括:一、倾听时不打断对方的谈话;二、把对方的话听完;三、即使不需要记录,你都可以听出来对方的意思;四、把所有的问题记在脑海,等对方说完后在一同发问。

    习惯四:成功者设定"当日计划"。

    成功者在前一天晚上或一早就会把当天要处理的事情全部列出来,并依照重要性分配时间。他管理事情而非管理时间。

    习惯五:写日记。

    写日记的法则:一、保持弹性,重表达思想,而不用太多严格规则;二、持续;三、用来设计你的生命价值和中心思想;四、记录每件事情的差异化;五、记录特殊 时刻及事件;六、解决问题;七、学习问更好的问题;八、在日记上写下自己的宣言;九、把每日写下的东西在月底复习;十、深刻自己的记忆和经验。

    习惯六:做喜欢的事。

    习惯七:勤于练习基本动作。

    习惯八:运用自我暗示的力量。

    自我暗示就是把目标用强烈语气不断念出声音,告诉自己,让潜意识无法分辨真假,因此相信它。

    习惯九:运用冥想的技巧。

    当你不断想象自己达成目标是情景,潜意识会引导身体作出那些效果。

    习惯十:保持体力或创造更多精力。

    习惯十一:成功者人生的目的通常超越自我,立志为大多数人贡献自己的力量。为使命而非为金钱工作。

    习惯十二:成功者有系统。

    成功者都有一套方法来整理思想、行为,因此能不断实践在自己身上,并且教导别人。

    习惯十三:成功者找方法,失败者找理由。

    成功者愿意做失败者不愿意做的事情。

    如果你能不断采取以上做法,进而养成习惯的话,这些习惯对你可能不只是百万元的价值,更可能带给你金钱和心中的富有。
posted @ 2009-12-05 09:27 猪怕壮 阅读(48) 评论(0) 编辑

要求的功能
1 模板更换 最基本的功能
2 后台可以拖动定制位置保存(最麻烦的部分)
3 功能定制
4  blog,音乐,留言,相册,也许再加上urlRewrite

实现这些功能需要分开考虑
如何实现功能

整体空间模板css + 基础的页面框架模板(用table实现) + 功能模块(ID写死 通过css定制显示)

1        首先模板css,根据起初做过的几个类似的功能,我考虑要实现这些不一定要用模板,因为功能也要定制并且设定的时候要求可以拖动位置,所以 css+基础模板框架的形式比较好一些,每个功能的模块(新闻、留言)的id都定死,然后通过css设定样式的方式表现不同效果。

2         后台设定的时候拖动,这个地方可以用scriptaculous或者jquerydragable实现,保存我想可以在拖动的时候记录位置并保存起来,这个部分实现应该是这样的,首先用户定义功能,然后通过拖动确定位置,然后依某种结构保存位置,但是我还没有好的思路。

3         功能定制,每个部分通过nvelocity模板实现,然后根据选定的功能直接填充到div中,然后通过2描述的位置写数据出去

4         blog 相册 留言 新闻,这些功能性的东西就比较简单了

整个页面处理过程 Css + table +各个模块 ,最难的我想是js拖动生成位置描述保存,前台根据生成的位置填充生成页面的逻辑部分,请做过类似功能的大牛们说说,位置保存的功能是如何实现的

posted @ 2008-02-02 21:47 猪怕壮 阅读(2481) 评论(27) 编辑
 

现在很多软件都需要判断ip地址来源的功能,可以将纯真ip数据库做成一套通用的模块,废话少说,下面开始动手

1           首先从网上下载到纯真ip数据库mdb版,转到sql

        转到sql


数据库的结构如下

    4 内容



5       最后的两个字段代表的什么意思?应该是ip地址对应的值吧
验证一下

 3*256^3 = 50331648 
 4*256^3 =67108864
 startid 5.0331648E+7
 endid 6.7108864E+7

这样的话搜索的话就方便了,只要将ip地址转为对应的值,然后判断一下在哪个个记录的ip值区间内,就可以知道是哪个地址,测试一下


select 4*256*256*256
select top 1 * from ip

50331648
67108864
3.0.0.0 3.255.255.255 美国 新泽西通用电气公司 NULL 5.0331648E+7 6.7108864E+7
的确跟我们想得一样


拿一个ip地址测试一下218.57.241.35 转换成值 3545755940怎么回事,怎么出了两个记录,应该正确的是后一个才对么,考虑了一下,可能是因为转换成科学计数法数值比较模糊,所以出现了两个匹配记录,强制修改为float比较应该会不一样,修改一下sql语句再做测试,通过




7   下面可以写程序了,写一个helper类吧

     public static string GetIpRealWorldAddress(string ipAddress)
        {
            if (!IpAddressAvailable(ipAddress))
            {
                return "ip地址有问题";
            }

            long value = GetIPCount(ipAddress);
            string Sql = string.Format("select * from ip where convert(float,startid)<= {0} and convert(float,endid) >= {0}", value);
            using (SqlConnection _SqlConnection = new SqlConnection(SQLHelper.conn) )
            {
                SqlCommand _SqlCommand = new SqlCommand(Sql, _SqlConnection);
                _SqlConnection.Open();
                SqlDataReader _SqlDataReader = _SqlCommand.ExecuteReader();
                if (_SqlDataReader.Read())
                {
                    //[startip], [endip], [country], [local], [startid], [endid]
                    string startip = (string)_SqlDataReader["startip"];
                    string endip = (string)_SqlDataReader["endip"];
                    string country = (string)_SqlDataReader["country"];
                    //float local = (float)_SqlDataReader["local"];
                    float startid = (float)_SqlDataReader["startid"];
                    float endid = (float)_SqlDataReader["endid"];
                    return country;
                }
                else
                {
                    return "没有找到匹配的记录!";
                }
            }
        }

 

        //取得ip的long值 3.254.255.255 = 3*256^3 + 254 *256^2
        public static long GetIPCount(string ipAddress)
        {
            ipAddress = ipAddress.Trim();
            string[] ipSecs = ipAddress.Split('.');
            long value = 0;
            for (int i = 0; i < 4; i++)
            {
                int ipSecDec = int.Parse(ipSecs[i]);
                int power = 3-i;
                long ipSecValue = (long)( ipSecDec * Math.Pow(256, power));
                value = value + ipSecValue;
            }
            value = value + 1;
            return value;
        }

 

        /// <summary>
        /// 判断ip地址是否有问题  1 地址段数, 地址段数里面是否是数字,数字是否在 0-255范围内
        /// 从以上三个方面监测
        /// </summary>
        /// <param name="ipAddress"></param>
        /// <returns></returns>
        private static bool IpAddressAvailable(string ipAddress)
        {
            ipAddress = ipAddress.Trim();
            string[] ipSecs =  ipAddress.Split('.');
            if (ipSecs.Length != 4) return false;
        
            //如果每个段都可以转为int则返回真
            for (int i = 0; i < ipSecs.Length; i++)
   {
                try
                {
                    int ipSecDec = int.Parse(ipSecs[i]);
                    if (ipSecDec < 0 || ipSecDec > 255)
                    {
                        return false;
                    }
                }
                catch
                {
                    return false;
                }
   }
            return true;
        }
    }

8 测试通过



ok,头一次写东西,希望大家喜欢





posted @ 2007-12-22 22:36 猪怕壮 阅读(672) 评论(1) 编辑