Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/411.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 用问号替换的破折号字符(Ajax调用)_Javascript_Php_Jquery_Ajax_Encoding - Fatal编程技术网

Javascript 用问号替换的破折号字符(Ajax调用)

Javascript 用问号替换的破折号字符(Ajax调用),javascript,php,jquery,ajax,encoding,Javascript,Php,Jquery,Ajax,Encoding,我正在进行一个标准的jQuery$.ajax()调用,并发布一篇文章。调用将字符串传递给PHP控制器 问题如下:当字符串中使用(–)字符时,当它到达PHP时,它将被替换为(?)字符。正常连字符(-)不会导致问题 该站点的编码是UTF-8。我不知道如何避开这个问题。我可能可以做一些字符替换,但我是否需要为每个“有问题”的标点符号做替换 撇开问题不谈,如果编码是正确的,这难道不应该起作用吗 令人困惑 更新: 我对传递的字符串使用了mb\u detect\u encoding()。结果是“ASCII”

我正在进行一个标准的jQuery
$.ajax()
调用,并发布一篇文章。调用将字符串传递给PHP控制器

问题如下:当字符串中使用(–)字符时,当它到达PHP时,它将被替换为(?)字符。正常连字符(-)不会导致问题

该站点的编码是UTF-8。我不知道如何避开这个问题。我可能可以做一些字符替换,但我是否需要为每个“有问题”的标点符号做替换

撇开问题不谈,如果编码是正确的,这难道不应该起作用吗

令人困惑

更新:


我对传递的字符串使用了
mb\u detect\u encoding()
。结果是“ASCII”。。。我正在使用遗留代码。如何修复这样的问题?

在PHP方面,使用了
$\u请求
global来检索Ajax数据。我将其更改为
$\u POST
后,保留了en破折号

不过,我真的不明白为什么
$\u请求
失败了


不管怎样,这在这个案例中起了作用。我真的不喜欢编写此代码并创建此项目的开发人员:)

PHP脚本编码如何
站点的编码是UTF-8。
你的意思是HTML页面和PHP都是UTF8编码的吗?对Ajax中的字符串进行URL解码更新了问题。@a.Wolff Yep,PHP脚本也是UTF-8。@madalinivascu字符串被保存到数据库中。我解码后该怎么办?我还是要把破折号插在绳子上。只需要防止把它换成问号。