社区
基础编程
帖子详情
con't convert string to unicode 怎么解决啊?
cutegl
2011-01-24 04:07:41
表单页面传值是UTF-8编码的中文,传给PHP页面会报警告con't convert string to unicode怎么解决?
...全文
129
9
打赏
收藏
con't convert string to unicode 怎么解决啊?
表单页面传值是UTF-8编码的中文,传给PHP页面会报警告con't convert string to unicode怎么解决?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
skyaspnet
2011-02-10
打赏
举报
回复
[Quote=引用 6 楼 cutegl 的回复:]
引用 3 楼 skyaspnet 的回复:
看一下接收到的参数值类型:
gettype
我用mb_detect_encoding()得到的参数传过来中文是UTF8,英文是ASCII。。。
[/Quote]
其实不需要,传值前使用urlencode转码,再在服务器端进行接收即可
urlencode
(PHP 4, PHP 5)
urlencode — 编码 URL 字符串
说明
string urlencode ( string $str )
返回字符串,此字符串中除了 -_. 之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数,空格则编码为加号(+)。此编码与 WWW 表单 POST 数据的编码方式是一样的,同时与 application/x-www-form-urlencoded 的媒体类型编码方式一样。由于历史原因,此编码在将空格编码为加号(+)方面与 RFC1738 编码(参见 rawurlencode())不同。此函数便于将字符串编码并将其用于 URL 的请求部分,同时它还便于将变量传递给下一页:
Example #1 urlencode() 例子
<?php
echo '<a href="mycgi?foo=', urlencode($userinput), '">';
?>
注意:小心与 HTML 实体相匹配的变量。像 &、© 和 £ 都将被浏览器解析,并使用实际实体替代所期待的变量名。这是明显的混乱,W3C 已经告诫人们好几年了。参考地址:» http://www.w3.org/TR/html4/appendix/notes.html#h-B.2.2。PHP 通过 arg_separator.ini 指令,支持将参数分割符变成 W3C 所建议的分号。不幸的是大多数用户代理并不发送分号分隔符格式的表单数据。较为简单的解决办法是使用 & 代替 & 作为分隔符。你不需要为此修改 PHP 的 arg_separator。让它仍为 &,而仅使用 htmlentities() 或 htmlspecialchars() 对你的 URL 进行编码。
Example #2 urlencode() 与 htmlentities() 例子
<?php
$query_string = 'foo=' . urlencode($foo) . '&bar=' . urlencode($bar);
echo '<a href="mycgi?' . htmlentities($query_string) . '">';
?>
jaksmine
2011-02-10
打赏
举报
回复
把源码晒出来,让我们也学习学习。。。
caizhenyu888
2011-01-25
打赏
举报
回复
还没遇到。。。。有源码看看不。
cutegl
2011-01-25
打赏
举报
回复
[Quote=引用 3 楼 skyaspnet 的回复:]
看一下接收到的参数值类型:
gettype
[/Quote]我用mb_detect_encoding()得到的参数传过来中文是UTF8,英文是ASCII。。。
cutegl
2011-01-25
打赏
举报
回复
[Quote=引用楼主 cutegl 的回复:]
表单页面传值是UTF-8编码的中文,传给PHP页面会报警告con't convert string to unicode怎么解决?
[/Quote] 没用AJAX就是表单提交。。。传给php做逻辑处理
skyaspnet
2011-01-24
打赏
举报
回复
echo gettype(参数值);
skyaspnet
2011-01-24
打赏
举报
回复
[Quote=引用楼主 cutegl 的回复:]
表单页面传值是UTF-8编码的中文,传给PHP页面会报警告con't convert string to unicode怎么解决?
[/Quote]
看一下接收到的参数值类型:
gettype
黑白灰
2011-01-24
打赏
举报
回复
代码贴出来。我还没遇到过这个问题呢!
ihefe
2011-01-24
打赏
举报
回复
ajax 传php?
使用DbVisualizer工具连接DB2的数据库报错“
Unicode
string
can't
convert
to Ebcdic
string
”
在使用DbVisualizer工具连接DB2的数据库时报错,错误信息为:“
Unicode
string
can't
convert
to Ebcdic
string
”。
解决
办法: 该问题一般是由于电脑的计算机名是中文造成的,只需要将中文的计算机名改为...
DB2 Cannot
convert
Unicode
string
to Ebcdic
string
.
如果DB2在连接时提示:Cannot
convert
Unicode
string
to Ebcdic
string
. ERRORCODE=-4220 那请检查你的驱动是否正确。 db2jcc_license_cu.jar 的大小 1,410 字节 db2jcc.jar 的大小 3,214,171 字节...
错误:
Unicode
Warning:
Unicode
equal comparison failed to
convert
both arguments to
Unicode
的
解决
方案
是用robotframework做自动化测试的时候,有一个对比的测试,是将UI界面的一些字段与相应的数据做对比,数据我是放在py文档中的...其中汉字取出来乱码了,报错:
Unicode
Warning:
Unicode
equal comparison failed to...
C++ Builder
string
相互转换
1. char*->
string
(1)直接转换 const char* nodename;
string
temp = nodename;
string
temp2(nodename); 2. wchar_t*->w
string
(1)直接转换 const wchar_t* nodename; w
string
temp = nodename; w
string
temp...
cannot
convert
parameter 1 from 'const char [] ' to 'const wchar_t * '的
解决
方法
C
String
a; int b; ...出现cannot
convert
parameter 1 from 'const char [] ' to 'const wchar_t * '的错误
解决
方法: cannot
convert
parameter 1 from 'const char [3] '
基础编程
21,882
社区成员
140,366
社区内容
发帖
与我相关
我的任务
基础编程
从PHP安装配置,PHP入门,PHP基础到PHP应用
复制链接
扫一扫
分享
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章