当我插入MySQL时,我的代码发生了变化

My code changes when I insert it in MySQL

本文关键字:我的 代码 发生了 变化 插入 MySQL      更新时间:2023-09-26

我用这个网页http://javascriptobfuscator.com/default.aspx混淆了一个小脚本。

$(document).ready(function(){
$("#likee").fadeOut("fast");
}); 

混淆后的代码是:

$(document)["'x72'x65'x61'x64'x79"](function (){$("'x23'x6C'x69'x6B'x65'x65")["'x66'x61'x64'x65'x4F'x75'x74"]("'x66'x61'x73'x74");} );

我使用的形式插入混淆的代码到mysql。然而,当我插入代码时,我得到了这个:

$(document)["x72x65x61x64x79"](function (){$("x23x6Cx69x6Bx65x65")["x66x61x64x65x4Fx75x74"]("x66x61x73x74");} );

有人知道为什么要删除反斜杠吗?

我的代码没有反斜杠会工作吗?

我认为这与编码有关。我猜您正在使用utf8编码格式的文本/varchar(或某种排序)列,其中插入的数据。

utf8编码格式只接受可以用3个字节表示的unicode字符,但是'x23字符需要4个字节,所以mysql会去掉该字符。

如何解决?你有mysql 5.5或更高版本吗?您可以将列编码从utf8更改为utf8mb4。此编码允许字符长度为4个字节。

来源:"错误的字符串值"当试图通过JDBC插入UTF-8到MySQL ?