С Новым годом! Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
 Аватар для Fixer_84
1505 / 969 / 812
Регистрация: 30.04.2016
Сообщений: 3,337

Часть контента исчезает после выполнения php-скрипта

03.01.2019, 21:29. Показов 2099. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, уважаемые форумчане! Решил добавить тикающие часики на свой сайт. Так как хотелось сделать это без перезагрузки страницы, решил использовать Ajax. Все получилось (нашел работающий скрипт в сети), но возникла проблема: часть контента на странице исчезает при подгрузке скрипта с сервера.

Скрипт на сервере:

PHP
1
2
3
4
<?php
date_default_timezone_set("Russia/Moscow");
echo date("D M j G:i:s T Y");
?>
Тестовая страница на сервере:

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<script>
function showClock() {
var obj = document.getElementById('clock');
var req;
if (window.XMLHttpRequest)  req = new XMLHttpRequest();
else if(window.ActiveXObject) {
    try {
        req = new ActiveXObject('Msxml2.XMLHTTP');
    } catch (e){}
    try {
        req = new ActiveXObject('Microsoft.XMLHTTP');
    } catch (e){}
}
if (req) {
    req.onreadystatechange = function() {
        if (req.readyState == 4 && req.status == 200)
        { obj.innerHTML = req.responseText; }
    };
    req.open("POST", 'runclock.php', true);
    req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    req.send('clock=1&ajax=1');
}
else alert("Браузер не поддерживает AJAX");
}
setInterval(showClock, 1000);
</script>
HTML5
1
2
<div id="clock">Loading...<div> //Эта часть отображается корректно
<h1>Тестирование...</h1> //Эта часть страницы загружается и исчезает (часики тикают)
P.S. Не знаю в какой еще раздел обратиться...Помогите, пожалуйста, или подскажите раздел, где еще могут помочь...
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.01.2019, 21:29
Ответы с готовыми решениями:

Исчезает часть контента и кода
Добрый вечер. После добавления пары строчек кода на сайте происходит нечто странное. После нажатия на кнопку &quot;Добавить в корзину&quot;...

Завершение выполнение php скрипта, после выполнения if
Здравствуйте уважаемые. Незнаю как правильно написать вопрос, Задача такая: Есть блок if - и еще несколько ифов после... Нужно чтоб...

Загрузка контента по мере выполнения скрипта
Добрый вечер. Не подскажете случаем &lt;input type=&quot;button&quot; value=&quot;РАЗБИТЬ НА ПАКЕТЫ&quot;...

5
1152 / 554 / 320
Регистрация: 21.06.2012
Сообщений: 1,854
03.01.2019, 21:42
Если Вы используете обращение к серверу, то про setInterval забудьте, используйте setTimeout с обработкой ответа от сервера.

И теперь второй момент: зачем использовать сервер каждую секунду чтобы увеличить секундомер на одну секунду?

Изначально смотрите время сервера, а потом на js увеличивайте счетчик.
0
 Аватар для Fixer_84
1505 / 969 / 812
Регистрация: 30.04.2016
Сообщений: 3,337
03.01.2019, 22:08  [ТС]
Цитата Сообщение от sasha0012 Посмотреть сообщение
Если Вы используете обращение к серверу, то про setInterval забудьте, используйте setTimeout с обработкой ответа от сервера.
Я в этих вещах плохо разбираюсь. Пробовал менять на setTimeout - часы переставали тикать. Мне просто нужно, чтобы заголовок
HTML5
1
<h1>Тестирование...</h1>
в моем посте отображался. А он появляется на секунду при загрузке страницы, а затем исчезает. При этом часы в
HTML5
1
<div id="clock">Loading...<div>
тикают как надо.
0
1152 / 554 / 320
Регистрация: 21.06.2012
Сообщений: 1,854
03.01.2019, 22:17
Лучший ответ Сообщение было отмечено Fixer_84 как решение

Решение

Цитата Сообщение от Fixer_84 Посмотреть сообщение
А он появляется на секунду при загрузке страницы, а затем исчезает.
потому что Вы не закрыли тег <div>. Надо так:
HTML5
1
<div id="clock">Loading...</div>
Но это не решение. Вы понимаете что один пользователь может завалить Ваш сервер?

Если Вам просто нужен секундомер, то реализуйте его на js.

А если старт нужен с сервера, то запрашивайте один раз время с сервера, а потом на js включайте счётчик.
1
 Аватар для Fixer_84
1505 / 969 / 812
Регистрация: 30.04.2016
Сообщений: 3,337
03.01.2019, 22:30  [ТС]
Цитата Сообщение от sasha0012 Посмотреть сообщение
потому что Вы не закрыли тег <div>. Надо так:
Спасибо большое, проблема исчезла.
Цитата Сообщение от sasha0012 Посмотреть сообщение
Но это не решение. Вы понимаете что один пользователь может завалить Ваш сервер?
Что значит завалить сервер, не понимаю?
Цитата Сообщение от sasha0012 Посмотреть сообщение
Если Вам просто нужен секундомер, то реализуйте его на js.
А если старт нужен с сервера, то запрашивайте один раз время с сервера, а потом на js включайте счётчик.
Мне нужно было, чтобы секундомер обновлялся без перезагрузки страницы все, вроде, получилось. Я не знаю JS, поэтому этот вопрос мне придется отложить до субботы, когда появится мой преподаватель, если вы, конечно, мне не поможете И спасибо вам, что нашли ошибку. Я этот маленький недочет не заметил.
0
 Аватар для Fixer_84
1505 / 969 / 812
Регистрация: 30.04.2016
Сообщений: 3,337
19.01.2019, 16:41  [ТС]
sasha0012, сделали как вы говорили через JavaScript. Так правда лучше. Теперь время считывается с компьютера пользователя и отображается в нужном часовом поясе.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.01.2019, 16:41
Помогаю со студенческими работами здесь

Результат выполнения программы в консоли пропадает после выполнения скрипта
нужно отпарсить файл , но мне надо видеть что выводит сценарий , иначе мне его неотладить. Запускаю файл вот так python index.py

После сохранения проекта исчезает часть кода
Уважаемые знатоки С++Builder, Прошу помочь, если кто сталкивался с таким. Проблема в том, что после сохранения проекта, исчезает часть...

Получить результат выполнения скрипта perl во время выполнения скрипта bash
доброго времени суток. знатоки, нужна ваша помощь- подскажите как из bash-скрипта вызвать perl-скрипт, получить результат его выполнения и...

После переноса сайта на другой хостинг пропадает часть контента
помогите с проблемой. после переноса сайта на другой хостинг проподает контент.причем контент проподает не весь а только лишь часть меню...

Вставить результат выполнения php-скрипта на страницу
Есть php-скрипт, который генерит htm-код. Нужно вставить это результат на страницу. Где-то, вроде бы, видел по аналогии с javascript...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru