脚本宝典收集整理的这篇文章主要介绍了无法使用PHP在MYSQL数据库中存储阿拉伯语,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我想存储用户将在mysql数据库中的表单的textarea中键入或粘贴的阿拉伯语数据.该网站是阿拉伯语,形式只包含这一个textarea.
重点:
该网站正确显示静态阿拉伯语内容.整个网站都使用utf8字符集.所以这不是问题.
表(主页)和内容字段(内容)都设置为utf8_unicode_ci校对,因此它也不是问题.
表单设置为accept-charset =’utf-8′,这也不是问题.
当我在表格中使用PHPMyAdmin插入阿拉伯语文本时,我完全没有任何问题.
事实上,当在网站上检索到表格中的阿拉伯语文本(通过PHPMyAdmin输入)时,它完全显示出来.
但是只要阿拉伯数据输入文本区域并发送到DB就可以使用插入查询数据转换成????
我在用
MysqL_query("SET names 'utf8'"); MysqL_query('SET CHARACTER SET utf8');
连接后,这根本不是问题.正如我之前所说,数据可以检索到.我上传了两张图片.证明我的问题.
我真的被困在这里,你可以看到我已经采取了所有可能的步骤来解决这个问题,但这种行为真的很奇怪.请帮忙.
我用来将数据插入db的代码是:
$content=$_POST["content"]; echo $content; $sql="update home set content='$content'"; $result=MysqL_query($sql) or die(MysqL_error());
1)请确认您已安装Multi-Byte扩展.如果不这样做,则PHP可能无法正确解释浏览器中的字符. http://php.net/manual/en/book.mbstring.php
2)您能否仔细检查浏览器是否真正将页面选为UTF8.浏览器可能不确定页面所在的字符集,但仍然正确显示阿拉伯字符,因为它正在猜测如何显示它们.首先.
header(“Content-tyPE:text / html; charset = UTF-8”);
3)如果这些不起作用,请您在浏览器中查看实际的表单提交,使用Chrome中的开发人员工具或Firefox中的Firebug来查看提交的确切内容.
例如我刚做了一个测试页面,将一些阿拉伯语文本提交到我服务器上的测试页面.在请求中,我可以看到表单被编码为
Content-Length: 61 test=%26%231607%3B%26%231594%3B%26%231594%3B%26%231601%3B&go=
我可以看到将文本分成单个字符
%26 %231607 %3B %26 %231594 %3B %26 %231594 %3B%26 %231601 %3B
即阿拉伯字符正在为我编码 – 也许你会看到不同的东西.
以上是脚本宝典为你收集整理的无法使用PHP在MYSQL数据库中存储阿拉伯语全部内容,希望文章能够帮你解决无法使用PHP在MYSQL数据库中存储阿拉伯语所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。