使用PHP将希腊语/土耳其语/波兰语字母插入mysql数据库时遇到问题

时间:2011-02-22 17:43:57

标签: php mysql utf-8 character-encoding

我正在从utf8_unicode_ci编码的表中读取Αθήνα这个词,并且可以在utf-8 HTML页面上显示它而没有问题。我刮了一些希腊语,这也正确显示。现在我想将信息写回另一个utf8表中的数据库。但结果如下:?????Î?θήνα(当我在其上使用utf8_encode()时)。 我也设置了

$this -> mysqli->set_charset("utf8");

我做错了什么,这让我发疯了?任何帮助都很重视!

基本上

宣读:

    $result = $this -> mysqli->query("SELECT * FROM `A` WHERE `country_code` = 'GRC'");
    /* Tell browser to use UTF-8 */
    header("Content-Type: text/html; charset=utf-8");
    /* The actual scrape loop, done for every found entry in the urls table*/
    while ($row = $result->fetch_array(MYSQLI_ASSOC)) {
       $this -> urls_array[] = $row;
    }

回信:

$deal=$this -> urls_array[$key];
$this -> mysqli->query("INSERT INTO `B` (`city_name`,`title`....) 
        VALUES (
            '{$deal["city_name"]}',
            '{$title}'
            )
            ");

1 个答案:

答案 0 :(得分:0)

在插入任何内容之前尝试执行“SET NAMES utf8”。有一种现代的做法,但这应该有用。