面对备案,我彻底无语

今天无缘无故的,机房又把我服务器的网线拔掉,打电话过去,说是我的服务器上有未备案网站。

当听到“备案”两个字的时候,就让我头皮发麻,我不知道其他站长听到“备案”两个字的时候是什么反应。我从2006年进入站长这一行列,至今已有四年的站长经历,与网站备案系统已经打过N次交道。记得2007年的时候就去那个备案系统备案,真实被这个系统搞的云里雾里,到最后也没成功。

我是一位ERP工程师,站长只是我业余时间的称呼。所以,如果一个软件可以称为一个系统,那这个软件肯定是非常的庞大,并且能实实在在解决用户的问题。ERP是一个系统,它能帮助工厂完成生产的信息化管理。如果ERP系统不能满足用户的需求,需要进行二次开发。直到用户满意为止。

从2007年第一次备案开始,开始我对备案系统怀着一颗无比尊敬的心情去使用。记得第一次注册的时候,需要输入手机号,会把验证码发到手机上,我就把手机号输入,等了好半天也没收到验证码,然后我就放弃注册了,过了大概3天,手机收到一条短信,一看,是验证码。这效率,这速度,真的是让我叫绝!!!如果一个商业网站,一分钟之内,还不能收到验证码,那这商业网站必死无疑,记得用信用卡支付的时候,也经常要输入手机验证码,一般在30秒之内都能收到。3天,哎,让我无语。

随后,随着手头上网站不断增加,又不断的与备案系统打交道,每次都是被他搞的败下阵来。不服不行。

今天又听到“备案”两个字,让我简直抓狂!!!

但是没办法,还得去备案,我想这个系统应该接到很多投诉,功能上应该有所改善,今天准备重新登录一下。结果登录就登录了好多次。
验证码经常会看不清,然后下面有个按钮[刷新验证码],结果是个摆设,点了也不起作用。只能刷新网页,刷新网页后,填入的用户名密码就需要重新来过。

备案系统,想说爱你,不容易。

JScript 页面倒计时

 <script type="text/javascript" language="javascript">
           
var secs = 10;
           
var wait = secs * 1000;
           
var agreetext="ok";
            document.form1.Button1.value
= agreetext+"(" + secs + ") ";
            document.form1.Button1.disabled
= true;
           
for(i = 1; i <= secs; i++) {
             window.setTimeout(
"update(" + i + ")", i * 1000);}window.setTimeout("timer()", wait);
           
function update(num, value) {
            
if(num == (wait/1000)) {
             document.form1.Button1.value = agreetext;
             }
else {
             printnr
= (wait / 1000)num;
             document.form1.Button1.value
= agreetext+"(" + printnr + ") ";
             }
            }
           
function timer() {
             document.form1.Button1.disabled
= false;
             document.form1.Button1.value
= agreetext;
            }
     
</script>

C#.NET 打印斑马标签

 

原理:
1、用codesoft软件制作ZPL模板文件。
2、用.net程序替换模板文件里面的变量。
3、将新形成的zpl文件传送给打印机

程序:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;
using System.Data.Sql;
using System.Data.SqlClient;
using System.IO;
using System.Configuration;

namespace print
{
    public partial class printmpq : Form
    {
        SqlConnection sqlconnection = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["websqlConnectionString"].ConnectionString);
        private string stringToPrint;

        public printmpq()
        {
            InitializeComponent();
        }
        private void printmpq_Load(object sender, EventArgs e)
        {
            textBox_item.Focus();
        }
        private void textBox_item_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyValue == 13 || e.KeyValue.ToString() == Keys.Tab.ToString())
            {
                textBox_item.Text = textBox_item.Text.ToString().Trim().ToUpper();

                sqlconnection.Open();
                DataSet printds = new DataSet();
                String sqldata = "select * from supermarket_config where status = ‘Active’ and item = ‘" + textBox_item.Text.ToString().Trim().ToUpper() + "’";
                SqlDataAdapter printad = new SqlDataAdapter(sqldata, sqlconnection);
                printad.Fill(printds, "print");

                if (printds.Tables["print"].Rows.Count > 0)
                {
                    textBox_mpq.Text = printds.Tables["print"].Rows[0]["mpq"].ToString();
                }
                else
                {
                    MessageBox.Show("Supermarket尚未设置此料号的!");
                    textBox_item.Text = "";
                    textBox_item.Focus();
                    sqlconnection.Close();
                    return;
                }

                sqlconnection.Close();
                textBox_mpq.Focus();
          }
        }

        private void button_print_Click(object sender, EventArgs e)
        {

            if (textBox_item.Text.Trim() == "" || textBox_mpq.Text.Trim() == "" || textBox_mpq.Text.ToString().Trim() == "0")
            {
                MessageBox.Show("No Item Or No MPQ");
                sqlconnection.Close();
                return;
            }
            StreamReader sr = File.OpenText(@"d:supermarketprint-mpq.zpl");
            StringBuilder output = new StringBuilder();
            String rl = "";

            while ((rl = sr.ReadLine()) != null)
            {
                rl = rl.Replace("supermarket_item", textBox_item.Text.ToString().Trim().ToUpper());
                rl = rl.Replace("supermarket_qty",textBox_mpq.Text.ToString().Trim());
                rl = rl.Replace("supermarket_datecode", textBox_datecode.Text.ToString().Trim());
                output.Append(rl + System.Environment.NewLine);
            }
            String zplname = DateTime.Now.ToString("MMddyyyy") + DateTime.Now.ToString("hh-mm-ss") + Guid.NewGuid().ToString();
            //MessageBox.Show(@"d:supermarketzpl" + zplname + "Print-End.zpl");
            StreamWriter sw = File.CreateText(@"d:supermarketzpl" + zplname + "Print-mpq.zpl");
            sw.WriteLine(output.ToString());
            sw.Close();
            sr.Close();

            printDocument1.DocumentName = @"d:supermarketzpl" + zplname + "Print-mpq.zpl";
            Str
eamReader srprint = File.OpenText(@"d:supermarketzpl" + zplname + "Print-mpq.zpl");

            stringToPrint = srprint.ReadToEnd();

            printDocument1.Print();
            textBox_item.Text = "";
            textBox_mpq.Text = "";
            textBox_datecode.Text = "";
            textBox_item.Focus();
        }
        private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
        {
            int charactersOnPage = 0;
            int linesPerPage = 0;
            e.Graphics.MeasureString(stringToPrint, this.Font,
                e.MarginBounds.Size, StringFormat.GenericTypographic,
                out charactersOnPage, out linesPerPage);
            e.Graphics.DrawString(stringToPrint, this.Font, Brushes.Black,
                e.MarginBounds, StringFormat.GenericTypographic);
            stringToPrint = stringToPrint.Substring(charactersOnPage);
            e.HasMorePages = (stringToPrint.Length > 0);
        }

        private void linkLabel_web_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
        {
            System.Diagnostics.Process.Start("IEXPLORE.EXE", "http://shant128/supermarket/print_mpq.aspx");
        }

        private void textBox_mpq_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyValue == 13)
            {
                textBox_datecode.Focus();
                //button_print.Focus();
            }
        }

        private void textBox_datecode_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyValue == 13)
            {
                button_print.Focus();
            }

        }
 
    }
}

 

对有创业想法的人的几句忠告

周末看了一本书,任宪法老师的《白手创业》。

很适合有想法的年轻人去读,结合我自身失败的教训,我想对有创业想法的人几句忠告:

1.盈利模式。这是你创业者首先也是必须要考虑的问题,如果这条还没考虑清楚,那就不要做了。不要鼓吹你的人气有多旺,不要说你的牌子有多响,如果带不来利润,那都是空的。举个简单的例子,我们经常会看到网上**网站,同时在线*****人,人气之旺可以看做是同类网站中的NO.1。但是我要告诉你的是:人气不等于利润。如果一个网站只有1个会员,但是这个会员却是交费的,这样的网站就比那种每天在线10000人的但是没收入的网站要强。辛苦的去创业,目标就是去赚钱,不要想其它的,如果方向不是赚钱,那就先停下来,思考一下,是不是该转一下方向盘。除非你是公益性组织或者有其它目的。

2.不要贪大,从小做起。做大和赚钱,其实是做企业的两个方向。很多企业能把这两个方向绑定在一起。但是当这两个方向出现矛盾的时候,我们要以第一条放到首位–“盈利”,而不要把做大放在首位,不要贪大。只要赚钱,从小做起。

3.努力的去付出–坚持。这一条,很多人都明白,没有付出就没有收获。但是创业是一个艰苦的2W5K里长征,是需要有很强的毅力的人才能完成的,很多时候,我们努力的付出,却迟迟见不到回报,这个时候,我们会感到很迷茫,但是这时候是我们更要控制自己,继续坚持,不要松懈。创业其实就是管理自己,让自己朝着某个方向前进。

暂时先总结这几句,以后我会把更多的创业经验与大家分享。

创业是一个过程,我到现在还一直处于失败之中,但是我认为成功的经验未必能给你照亮前途,但是失败的教训肯定能为你敲响警钟。刻骨铭心的往往是“痛苦”,而不是“快乐”。

淘宝API与shopex,ecshop和域名注册

最近在研究淘宝API,然后结合以前用过的shopex,ecshop,还有以前做过的域名注册的代理。

如果把这三者结合起来,所有业务都在网上完成,这将是一件非常有“钱途”的项目。

现在针对淘宝API开发的比较成功的是tbhelper.net。对淘宝店铺的宝贝进行管理。

 如果在这上面再加两个功能,域名注册+shopex(ecshop)

钱途真的是不可限量。

有兴趣的朋友一起来研究。