Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 09.10.2011, 21:07
Новичок на форуме
Отправить личное сообщение для odgrand Посмотреть профиль Найти все сообщения от odgrand
 
Регистрация: 09.10.2011
Сообщений: 5

Ajax+prepend пробелы.
Код:
<script type="text/javascript">
$(document).ready(function(){
    show();  
    setInterval('show()',1000); 
}); 
function show(){
   $.ajax({
          url: "action1.php",
          type: "GET",
          cache: false,
          success: function(response){
   

                 $("#content").prepend(response);

           }
        });
    
}
</script>
action1.php

Код:
<?php
session_start();
include("bd.php");
   $result = mysql_query("SELECT * FROM vopr ORDER BY date DESC",$db);   
     
       $comment = mysql_fetch_array($result); 
	   if($_SESSION['datev']<$comment['date']){        
          $_SESSION['datev']=$comment['date'];
          printf("<div class='commentBlocknew'>
          <div class='name'>%s</div>
          <div class='text'>%s</div>
		  <div class='text'>%s</div>
          </div>",$comment['date'],$comment['nick'],$comment['msg']);  
		
         
     }
	
   
?>
Проблема в том что prepend постоянно приклеивает пробелы " " до бесконечности
Как это исправить?Извиняюсь если вопрос глупый. Только учусь.
Ответить с цитированием
  #2 (permalink)  
Старый 09.10.2011, 21:40
Профессор
Отправить личное сообщение для DjDiablo Посмотреть профиль Найти все сообщения от DjDiablo
 
Регистрация: 04.02.2011
Сообщений: 1,815

setInterval('show()',1000);
вот это тебе нафига ?
на кой тебе get запрос каждую секунду?
Если в базе небудет комента с датой новее чем в сессии, сервер же нешиша тебе невернёт. И это нешиша ты благополучно добавишь себе через prepend, чтобы потом искренне удивляться откуда оно там взялось.

Задумайся кстатии над перспективами запроса к базе данных каждую секунду.
Это сто пользователей будут генерировать только своим присутствием сотню sql запросов каждую секунду.
Это что-то вроде DoS атаки на сервер ))
__________________
Лучше калымить в гандурасе чем гандурасить на колыме

Последний раз редактировалось DjDiablo, 09.10.2011 в 22:33.
Ответить с цитированием
  #3 (permalink)  
Старый 09.10.2011, 22:02
Новичок на форуме
Отправить личное сообщение для odgrand Посмотреть профиль Найти все сообщения от odgrand
 
Регистрация: 09.10.2011
Сообщений: 5

Мне нужно что бы информация на страничке обновлялась как только в базе появилась новая запись, я понимаю, что если записи новой не появилось, то сервер не чего не возвращает, и потом это не чего прикрепляется с помощью prepend, но как избежать этого?тоесть мне нужно условие какое то что если сервер вернул не шиша то не чего не делать, если сервер вернул строку, то прелеплять ее...как это сделать?)

Я пробовал в action1.php добавить условие else { echo 0; }. А в скрипт if (response !=0 ){ $("#content").prepend(response);
} почему то не вышло.

Время запроса я потом конечно же увеличу. Это только временно. Пока надо решить проблему с пустым prepend

Последний раз редактировалось odgrand, 09.10.2011 в 22:11.
Ответить с цитированием
  #4 (permalink)  
Старый 09.10.2011, 22:18
Профессор
Отправить личное сообщение для DjDiablo Посмотреть профиль Найти все сообщения от DjDiablo
 
Регистрация: 04.02.2011
Сообщений: 1,815

response полюбому не равен нулю, потому что response это не число.
response в твоём случае текст.
Если хочется сравнить с нулём то быть может response.length != 0 прокатит лучше

И да кстати вместо setInterval юзай уж тогда timeOut, а то если на определённом браузере кто-то переключится на другую вкладку а потом через часок вернётся обратно, твоему серверу придётся несладко от 3600 запросов полученных почти единовременно.
__________________
Лучше калымить в гандурасе чем гандурасить на колыме

Последний раз редактировалось DjDiablo, 09.10.2011 в 22:35.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ajax таблица gofkane Работа 1 26.09.2011 18:26
Ajax таблица gofkane Работа 0 25.09.2011 11:53
кеширование HTML переданого через ajax BorisBritva jQuery 6 02.04.2011 01:23
Ajax разбор метода mycoding jQuery 14 21.05.2010 10:57
Объясните как вызывается ajax скрипт AddressBook из формы prog90 AJAX и COMET 3 06.06.2009 16:12