我需要将 Facebook 中的用户名添加到数据库,这些名称具有 UTF-8 字符,例如 (ą,č,ę,ė,į,š,ų,ū)。例如,当我将它添加到数据库时,字母š
看起来像Å¡
在 myPhpAdmin 中,我找到了设置编码 UTF-8 的表设置,我这样做了,但同样的问题。我添加mysql_set_charset('utf8');
到我的代码中,但这也无济于事。代码现在看起来像:
<?php
$time = $_POST['time'];
$username = $_POST['userName'];
session_start();
$name = $_SESSION['vardas'];
$times = gmdate('H:m:s', $time);
mysql_set_charset('utf8');
$mysqli = new mysqli("localhost","my_db","pass","my_db");
if ($stmt = $mysqli->prepare("INSERT into eurokos (time, userName) VALUE (?,?) ")) {
$stmt->bind_param('is', $time, $name);
// $stmt->bind_param("s", $username);
$stmt->execute();
if ($stmt->error != '') {
echo ' error:'.$stmt->error;
} else {
echo 'success';
}
$stmt->close();
} else {
echo 'error:'.$mysqli->error;
}
此 php 文件也转换为 UTF-8 编码,但无济于事。
当我使用此代码echo "Name: " . $user_profile['name'];
Facebook 正确打印带有 UTF-8 普通字母的用户名时。所以问题是将用户名插入数据库。
我用来将用户名变量从 fb.php 发送到 db.php(也许在这里我需要使用任何编码?)
$name = $user_profile['name'];
session_start();
$_SESSION['vardas'] = $name;
你可以帮帮我吗?谢谢。