使用PDO插入阿拉伯语不起作用

时间:2014-12-31 09:21:36

标签: php android mysql pdo

我深入研究了这个问题并查看了很多问题而且这些问题都没有奏效 每当我尝试插入阿拉伯语时,它就像这样(?????)

数据库连接

$db = new PDO( 
    'mysql:host=localhost;dbname=addme', 
    'root', 
    'a', 
    array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8")
);

插入页面

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<?php

include("config.php");

$name = $_POST['name'];
$about = $_POST['about'];
$category = $_POST['category'];

$theId = "";
$date = round(microtime(true) * 1000);


$stmt = $db->prepare("INSERT INTO users(id,username,about,date,category) VALUES(
    :field1,
    :field2,
    :field3,
    :field4,
    :field5)
");
$stmt->execute(
    array(':field1' => $theId, 
        ':field2' => $name, 
        ':field3' => $about, 
        ':field4' => $date,
        ':field5' => $category));
$affected_rows = $stmt->rowCount();

        $response["success"] = 1;
        $response["message"] = "Added You.";

        // echoing JSON response
        echo json_encode($response);

数据库编码

utf8_general_ci

Android app发布的值。 阿拉伯语帖子使用MySQL连接正常工作 并且在决定使用PDO之后会出现这个问题。

1 个答案:

答案 0 :(得分:1)

用你的代码替换这部分代码我还没有经过测试但是应该可以工作

$db = new PDO( 
    'mysql:host=localhost;dbname=addme;charset=utf8', 
    'root', 
    'a')
);

enter image description here