Ответов: 7 Просмотров: 1801
|
создал объект EventSource и обработчик событий
CODE ( javascript):
скопировать код в буфер обмена
<script> if (!!window.EventSource) { var source = new EventSource('/stream.php'); } source.addEventListener('message', function(e) { console.log(e.data); }, false); source.addEventListener('open', function(e) { console.log('1'); }, false); source.addEventListener('error', function(e) { if (e.readyState == EventSource.CLOSED) { console.log('0'); } }, false); </script>
и файл stream.php в корне
так работает (т.е. виводит сообщение в консоль)
PHP:
скопировать код в буфер обмена
<?PHP header('Content-Type: text/event-stream'); header('Cache-Control: no-cache'); function send($id, $msg) { echo "id: $id" . PHP_EOL; echo "data: $msg" . PHP_EOL; echo PHP_EOL; } $id = (int)$_GET['id']; $sql = "select status from stadium WHERE id = {$id}"; //$status = App::$db->query($sql); //$status = (int)$status; send($serverTime, $id);
а так нет
PHP:
скопировать код в буфер обмена
<?PHP header('Content-Type: text/event-stream'); header('Cache-Control: no-cache'); function send($id, $msg) { echo "id: $id" . PHP_EOL; echo "data: $msg" . PHP_EOL; echo PHP_EOL; } $id = (int)$_GET['id']; $sql = "select status from stadium WHERE id = {$id}"; $status = App::$db->query($sql); $status = (int)$status; send($serverTime, $id);
Очень нужно запрос к бд сделать Что тут не так? |