Это то, что решило это для меня.Поскольку функция JavaScript encodeURIComponent () не кодирует апострофы в% 27, я сделал это сам, используя свою собственную функцию replaceAll ().
Фрагмент JS:
name = encodeURIComponent(name.replaceAll("'", '%27'));
Это функция replaceAll () в моих утилитах JS-файл :
String.prototype.replaceAll = function(f, r, no_escape) {
var rexp = new RegExp(Util.EscapeRegExp(f), 'g');
if (no_escape) { rexp = new RegExp(f, 'g'); }
return this.replace(rexp, r);
};
Для моих целей мне нужно, чтобы апостроф больше не был% 27, и код PHP функции urldecode () также не выполняет апострофов, поэтому я позаботился об этом с помощью str_replace ().
Фрагмент PHP :
$name = str_replace('%27', "'", urldecode($_POST['name'] ) );