Вот такая ошибка: Uncaught SyntaxError: Unexpected token о in JSON at position 0
at JSON.parse ()
at XMLHttpRequest.xmlhttp.onreadystatechange (messages?id=3:63)
Код:
<script type="text/javascript">
var array = new Array();
function getXmlHttp() {
var xmlhttp;
try {
xmlhttp = new ActiveXObject("Msxm12.XMLHHTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}
function chat() {
var xmlhttp = getXmlHttp(); // Создаём объект XMLHTTP
var did = document.getElementById('did').value;
xmlhttp.open('POST', 'modules/msg/functions.php', true); // Открываем асинхронное соединение
xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); // Отправляем кодировку
xmlhttp.send('update=1' + '&did=' + encodeURIComponent(did));
xmlhttp.onreadystatechange = function() { // Ждём ответа от сервера
if (xmlhttp.readyState == 4) { // Ответ пришёл
if(xmlhttp.status == 200) { // Сервер вернул код 200 (что хорошо)
var response = xmlhttp.responseText;
response = JSON.parse(response);
if (array.length == response.length) return;
var start = array.length;
array = response;
var messages = document.getElementById('chat').innerHTML;
for (i = start; i < array.length; i++) {
messages = messages + '<b>' + array[i].name + ':</b>' + array[i].message + '<br />'
}
document.getElementById('chat').innerHTML = messages;
document.getElementById('chat').scrollTop = 1000;
}
}
}
setTimeout('chat()', 1000);
}
function addMessage() {
var xmlhttp = getXmlHttp(); // Создаём объект XMLHTTP
var did = document.getElementById('did').value;
var message = document.getElementById('message').value;
var xmlhttp = getXmlHttp(); // Создаём объект XMLHTTP
xmlhttp.open('POST', 'modules/msg/functions.php', true); // Открываем асинхронное соединение
xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); // Отправляем кодировку
xmlhttp.send('did=' + encodeURIComponent(did) + '&message=' + encodeURIComponent(message));
}
</script>
Код functions.php:
<?php require_once ($_SERVER['DOCUMENT_ROOT']."/engine/engine.php");
// функция отправки сообщения и загрузки сообщения в файл
if(isset($_POST["message"])) {
$id = $id_user;
$did = $_POST["did"];
$message = $_POST["message"];
file_put_contents("messages.txt", file_get_contents("messages.txt")."\n$did;$id;$message");
} elseif (isset($_POST["update"])) { // функция извлечения сообщений из txt файла
$string = file_get_contents("messages.txt");
$did = $_POST["did"];
$array = explode("\n", $string);
$result = array();
$j = '0';
for ($i=0;$i<count($array);$i++) {
$temp = explode(";", $array[$i]);
if ($temp[0] == $did) {
$temp[1] = loginfromid ( $temp[1] );
$result[$j]["name"] = $temp[1];
$result[$j]["message"] = $temp[2];
$j++;
}
}
echo json_encode($result);
}
?>
Подскажите, как исправить ошибку