我尝试过插入和读取我的MySQL数据库,但它似乎无法正常工作。这是我读过的内容,并尝试过:
其他SO帖子:
http://stackoverflow.com/questions/742205/mysql-alter-table-collation/5468980#5468980
http://stackoverflow.com/questions/5906585/change-database-collation
尝试将归类更改为utf-unicode-ci并将字符集设置为UTF-8,但没有工作
http://stackoverflow.com/questions/9401567/php-chinese-characters-cant-insert-to-mysql
这更适合插入,但阅读同样有问题。
以下是发生的事情的截图:
插入错误
http://i.stack.imgur.com/2ot0L.png
显示错误
http://i.stack.imgur.com/Bndz1.png
表格结构
http://i.stack.imgur.com/XO3K5.png
将中文写入数据库的代码片段(注册新用户):
registration.js
var postData = {
full_name : $("#full-name").val(),
email : $("#email").val(),
password : $("#password").val(),
username : $("#username").val()
};
$.ajax({
type : 'POST',
url : '../php/register.php',
data : postData,
dataType : 'JSON',
success : function(data) {
if (data.result == -1)
alert('Registration unsuccessful!');
else if (data.result == 0) { // redirect to page
alert('Registration successful!');
window.location = '../home.php';
}
}
});
为registration.php
$query = " INSERT INTO `users`(`Username`, `Display_name`, `Password`, `Email`, `Date created`)
VALUES ('{$username}', '{$display_name}', '{$password}', '{$email}', '{$date}')";
if ( ($result = mysqli_query($link, $query)) == false )
return -1;
else
return 0;
从数据库中读取中文的代码(显示用户名):
的functions.php
$query = "SELECT display_name, followers FROM users ORDER BY followers DESC LIMIT 10";
$result = mysqli_query($link, $query);
while ($row = mysqli_fetch_array($result)) {
$html = "<li>{$row['display_name']}<span id = 'popular-user-followers'>{$row['followers']}</span></li>";
echo $html;
}
对于如何继续进行任何建议表示感谢,我还不完全熟悉数据库。谢谢!