實踐ASP提交超長文章~

來源:互聯網
上載者:User

主要思想:
ASP的Request到的值只有102399位元組,相當於5萬多個漢字。sql text欄位能儲存的遠遠大於這個值。指令碼(VBS/JS)的string也幾乎是無限大(20億)。只有request是瓶頸,所以可以分開提交長文章,主要是用javascript在用戶端處理,讓其值分在幾個textarea中。在server上再將分開request的值拼在一起,提交到資料庫。
參考代碼:
client:

function dealwithbigdoc()
{
    var FormLimit = 102399;
    var totaldoc = new String;
    totaldoc = document.all.XXNR.value;
    if (totaldoc.length>FormLimit)
    {
        while (totaldoc.length>0)
        {
            var objxxnr = document.createElement("TEXTAREA");
            objxxnr.value = totaldoc.substr(0,FormLimit);
            document.thisfrm.appendChild(objxxnr);
            totaldoc = totaldoc.substr(FormLimit);
        }
    }
}

server:(JSript寫的)

function myRequest()
{
    var xxnr="";
    for(i=1;i<=Request.Form("XXNR").Count;i++)
    {
        xxnr+=Request.Form("XXNR")(i);
    }
    xxnr = xxnr.toString();
    xxnr = xxnr.replace(/[/']/g,"''").replace(//n/g,"").replace(//r/g,"");
    //xxnr = Server.HTMLEncode(xxnr);
    return xxnr.toString();
}
 
評論列表
測試了40萬字沒有問題~
不過再多的最好改一下Server.ScriptTimeOut
流水男孩 @ 2004-12-30 23:23:03
IIS 6可以修改request的總大小 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.