Неявное преобразование из типа данных varchar в varbinary не допускается. (SQL)

Я нашел проблему с выбранным решением.

При использовании форм с именами на основе массива функция jQuery serializeArray () фактически умирает.

У меня есть фреймворк PHP, который использует имена полей на основе массива, чтобы одна и та же страница могла быть помещена на одну и ту же страницу несколько раз в нескольких представлениях. Это может быть удобно для добавления и редактирования и удаления на одной странице без противоречивых моделей форм.

Поскольку я хотел серализовать формы без необходимости использовать эту абсолютную базовую функциональность, я решил написать свою собственную seralizeArray ():

        var $vals = {};

        $("#video_edit_form input").each(function(i){
            var name = $(this).attr("name").replace(/editSingleForm\[/i, '');

            name = name.replace(/\]/i, '');

            switch($(this).attr("type")){
                case "text":
                    $vals[name] = $(this).val();
                    break;
                case "checkbox":
                    if($(this).attr("checked")){
                        $vals[name] = $(this).val();
                    }
                    break;
                case "radio":
                    if($(this).attr("checked")){
                        $vals[name] = $(this).val();
                    }
                    break;
                default:
                    break;
            }
        });

Обратите внимание: это также работает вне формы submit (), поэтому, если в остальной части вашего кода появляется ошибка, форма не будет отправлена, если вы поместите ссылку на кнопку говоря «сохранить изменения».

Также обратите внимание, что эту функцию никогда не следует использовать для проверки формы только для сбора данных для отправки на сервер для проверки. Использование такого слабого и массового кода приведет к XSS и т. Д.

0
задан marc_s 13 July 2018 в 19:41
поделиться

1 ответ

Либо поле Nombre, либо Descripcion является varbinary, и вы должны явно convert использовать эти входы для вашего предложения insert.

Это будет выглядеть так.

VALUES (... ,CONVERT(varbinary, [@Nombre or @Descripcion]) ,...)

1
ответ дан Edward 17 August 2018 в 12:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: