web-dev-qa-db-ja.com

ajaxポストのサイズ制限はありますか?

Ajaxを介してckeditorのコンテンツをphpに投稿しています。しかし、私のdbテーブルに投稿された資料の4〜5文を取得しています。 ajaxポストのサイズに制限はありますか?大きなテキストコンテンツをajax経由で投稿する方法はありますか?

私のjsはそのように見えます

function postViaAjax(autosaveMode) {
    var name = $("#name").val();
    var title = $("#title").val();
    var menu = $("#menu").val();
    var parentcheck = $(".parentcheck:checked").val();
    var id = $("#id").val();
    if (parentcheck == 0) {
        var parent = parentcheck;
    } else {
        var parent = $("#parent").val();
    }
    var content = CKEDITOR.instances['content'].getData();
    var dataString = 'name=' + name + '&title=' + title + '&menu=' + menu + '&parentcheck=' + parentcheck + '&id=' + id + '&parent=' + parent + '&content=' + content;
    $.ajax({
        type: "POST",
        url: "processor/dbadd.php",
        data: dataString,
        dataType: "json",
        success: function (result, status, xResponse) {
            var message = result.msg;
            var err = result.err;
            var now = new Date();
            if (message != null) {
                if (autosaveMode) {
                    $('#submit_btn').attr({
                        'value': 'Yadda saxlanıldı ' + now.getHours() + ':' + now.getMinutes() + ':' + now.getSeconds()
                    });
                } else {
                    $.notifyBar({
                        cls: "success",
                        html: message + ' ' + now.getHours() + ':' + now.getMinutes() + ':' + now.getSeconds()
                    });
                }
            }
            if (err != null) {
                $.notifyBar({
                    cls: "error",
                    html: err
                });
            }
        }
    });
};
11
The Coder

HTTP仕様では、投稿に特定のサイズ制限を課していません。それらは通常、フォーム送信の処理に使用されるWebサーバーまたはプログラミング技術のいずれかによって制限されます。

どのようなサーバーを使用していますか?

10
yoprogramo

HTTPのPOSTにはサイズ制限はありません。

多分あなたはあなたのコンテンツ変数に&を持っています。その後、その後はすべて取り除かれます。

それ以外に、データベースのデータ列にはどのタイプを使用しますか?たぶん、varchar(1000)のようなものですか?次に、それより大きいものも取り除かれます。

サーバーエンドで実際に受信するものを確認して、コードまたはデータベースに問題があるかどうかを確認します。

5
kufi

Apacheサーバーに制限があります。 LimitRequestBodyディレクティブを探します。

これは役立つかもしれません:

http://gallery.menalto.com/node/1487

2
dexter.ba

理論的には、AJAX=リクエストの制限は他のすべてのリクエストで同じであるため、Webサーバー/アプリの設定によって異なります。参照してください send()データの最大長) on XMLHttpRequest Post

2
riffraff