zig
Новичок
Добрый день.
Суть проблемы такова. Я сделал небольшой чат на PHP без использования базы данных. Когда пользователь отправляет сообщение, PHP записывает его в конец текстового файла. А аякс на клиенте периодически читает этот файл GET'ом, вот и все дела.
Проблема с кодировкой. PHP-скрипт, html-страница и сам текстовый файл сохранены в UTF-8 без BOM. Кроме того, в хэде страницы прописана мета charset=utf-8. И, тем не менее, русский текст из файла браузер воспроизводит каракулями - РџСЂРёРІРµС. Уже всё перепробовал, не знаю, что делать. В сам файл всё записывается правильно.
Суть проблемы такова. Я сделал небольшой чат на PHP без использования базы данных. Когда пользователь отправляет сообщение, PHP записывает его в конец текстового файла. А аякс на клиенте периодически читает этот файл GET'ом, вот и все дела.
Проблема с кодировкой. PHP-скрипт, html-страница и сам текстовый файл сохранены в UTF-8 без BOM. Кроме того, в хэде страницы прописана мета charset=utf-8. И, тем не менее, русский текст из файла браузер воспроизводит каракулями - РџСЂРёРІРµС. Уже всё перепробовал, не знаю, что делать. В сам файл всё записывается правильно.
PHP:
// Это JavaScript, читающий текстовый файл с сервера
function readFile(fname, success) {
var xhr = new XMLHttpRequest();
xhr.open("GET", fname, true);
xhr.onreadystatechange = function() {
if (this.readyState == 4) {
if (this.status == 200) {
success(this.responseText);
}}};
xhr.send(null);
}
PHP:
// А это PHP, пишущий сообщения в файл
function write($msg) {
$f = fopen("chat.txt", 'a');
fwrite($f, $msg."\r\n");
fclose($f);
}