PHP不会在我的XAMPP服务器中正确存储阿拉伯语/波斯语文本

时间:2017-09-10 17:59:38

标签: php android mysql arabic persian

我有一个PHP脚本,从我的Android应用程序获取文本$name,并在$name位置的本地XAMPP服务器中以$path = "uploads/$name.png"作为图像名称存储图像。

当我键入波斯语/阿拉伯语数据时,它会将它们存储为:

ماست.png
ما ست.png

但它的作用就像英文文本中的魅力一样:

carrot.png

任何人都可以帮我在输入时正确存储波斯语/阿拉伯语吗?

感谢。

<?php
if($_SERVER['REQUEST_METHOD']=='POST'){
    $image = $_POST['image'];
    $name = $_POST['name'];
    define('DB_USERNAME', 'root');
    define('DB_PASSWORD', '');
    define('DB_HOST', 'localhost');
    define('DB_NAME', 'android');
    $conn = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME);
    mysqli_set_charset($conn,"utf8");
    $path = "uploads/$name.png";
    $actualpath = "http://192.168.1.107/login1/image_up/$path";
    $sql = "INSERT INTO imgnews (userNews,userMatn) VALUES ('$actualpath','$name')";
    //
    if(mysqli_query($conn,$sql)){
        file_put_contents($path,base64_decode($image));
        echo "Successfully Uploaded";
    }
//mysql_real_escape_string($conn,$name);
    mysqli_close($conn);
}else{
    echo "Error";
}

我上传了一些关于我情况的照片: enter image description here ////

enter image description here ////

2 个答案:

答案 0 :(得分:1)

确保已将db collection设置为UTF-8然后 将此标头添加到您的PHP脚本 header('Content-Type:text / html; charset = utf-8'); 你的php脚本也应该支持utf-8。

答案 1 :(得分:0)

将数据库或表的排序规则更改为UTF-8_Unicode_ci