Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: PHP + MYSQL + JAVASCRIPT
 
 автор: pavluxa09   (27.07.2011 в 02:16)   письмо автору
 
 

Добрый день. Имеется такая задача, необходимо запустить в JavaScript мою функцию MyFunc() тогда, когда в базе данных измениться значение запроса SELECT MAX(date) FROM `table`. Вопрос, как при помощи PHP, MYSQL, JQUERY и JavaScript организовать подобную процедуру?

Как вариант тупо через PHP возвращать с базы данных этот самый MAX(date), получать его в javascript при помощи Jquery и сравнивать с сохраненным. Но как по мне это туповато, может есть способы получше?

  Ответить  
 
 автор: f111   (27.07.2011 в 02:59)   письмо автору
 
   для: pavluxa09   (27.07.2011 в 02:16)
 

глубоко не вчитывался, но AJAX вам точно нужен

  Ответить  
 
 автор: evgenijj   (27.07.2011 в 03:55)   письмо автору
 
   для: pavluxa09   (27.07.2011 в 02:16)
 

По-моему, кроме как постоянно опрашивать серверный скрипт, вариантов нет. Не придумали еще (?), как с сервера послать сигнал клиенту, "пора перестроить страницу".
getSomethingRandom.html
<html>
<head>
<script type="text/javascript">
getSomeThing = function(){
  var xmlhttp = getXmlHttp()
  xmlhttp.open('GET', '/getSomethingRandom.php', true);
  xmlhttp.onreadystatechange = function() {
    if (xmlhttp.readyState == 4) {
      if (xmlhttp.status == 200) {
        var serverResponceText = xmlhttp.responseText;
        var text = document.createTextNode(serverResponceText);
        var someElement = document.getElementById( 'someElement' );
        if (someElement.hasChildNodes()) someElement.removeChild(someElement.lastChild);
        someElement.appendChild(text);
      }
    }
  };
  xmlhttp.send(null);
}
function getXmlHttp(){
  var xmlhttp;
  try {
    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
  } catch (e) {
    try {
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    } catch (E) {
      xmlhttp = false;
    }
  }
  if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
    xmlhttp = new XMLHttpRequest();
  }
  return xmlhttp;
}
window.onload = setInterval(getSomeThing, 1000);
</script>
</head>
<body>
<span id="someElement">SomeThing</span>
</body>
</html>

getSomethingRandom.php
<?php
echo rand(010);
?>

  Ответить  
 
 автор: Valick   (27.07.2011 в 07:51)   письмо автору
 
   для: evgenijj   (27.07.2011 в 03:55)
 

Не придумали еще (?), как с сервера послать сигнал клиенту, "пора перестроить страницу".
проекты типа Dklab Realplexor смотрят в ту сторону

  Ответить  
 
 автор: Саня   (27.07.2011 в 08:59)   письмо автору
 
   для: evgenijj   (27.07.2011 в 03:55)
 

> Не придумали еще (?), как с сервера послать сигнал клиенту, "пора перестроить страницу".
Эта технология называется comet. Так же существует web sockets. Погуглите на эту тему.
А так да, постоянно опрашивать серверный скрипт — самый бронебойный метод.

  Ответить  
 
 автор: pavluxa09   (27.07.2011 в 09:55)   письмо автору
 
   для: Саня   (27.07.2011 в 08:59)
 

Большое спасибо, будем читать про comet!

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования