MySQL截断数据

时间:2014-07-06 01:48:50

标签: javascript jquery mysql blob truncate

我有一张表格可供人们发布书评。他们给出了书的标题,作者的名字和评论文本。当用户单击按钮以保存评论时,将调用javascript函数:

function gravarResenha(id) {
    var livro = $("#resenhatit").val();
    var autor = $("#resenhaaut").val();
    var resen = $("#resenhatex").val();
    if ((livro != "") && (autor != "") && (resen != "")) {
        $.ajax({
            type: "POST",
            url: "resenha/gravar/id/" + id + "/livro/" + livro + "/autor/" + autor + "/texto/" + resen,
            success: function(res) {
                if( res == 1 ) {
                    carregaPagina( 'secliteratura' , 'col02' );
                } else {
                    alert( "Problemas no cadastramento da resenha. Tente novamente." );
                }
            },
            error: function(res) {
                alert( "Problemas no cadastramento da resenha. Tente novamente." );
            }
        });
    } else {
        alert( "Impossível postar uma resenha vazia." );
    }
}

变量resen接收id为#resenhatex的textarea的值。此值正在被截断。

起初我以为是我在MySQL表中使用TEXT字段的事实。然后我将其更改为LONGBLOB字段,考虑到评论可能有点长。

我还添加了这种类型:" POST"在我的jQuery AJAX调用中,因为我提醒说GET方法在发送数据的大小方面有一些限制。

即使做了所有这些更改,当我发送更大的评论时,我仍会得到相同的截断值。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

每次我在传递的文本中都有问号(?)时,问题就出现了。

我做了以下事情来解决问题:

var myresen = $("#resenhatex").val();
myresen = myresen.replace(/\?/g, "%3F");

然后它工作正常!