Перейти к содержимому

Фото
- - - - -

Трабла с AJAX


  • Вы не можете создать новую тему
  • Please log in to reply
3 ответов в этой теме

#1 Psi

Psi
  • Новобранец
  • 2 сообщений

Отправлено 17 Сентябрь 2009 - 11:15

Народ. Есть большая проблемка с интеграцией AJAX на страничку. Проблема в следующем:
есть начальная страница index.php вида
<?php
include_once('includes/main.php');
?>
<html>
....
....
	<div id="content"><?=$content?></div>
....
</html>

Пытаюсь вставить AJAX, с которым никогда раньше не работал.
Код выглядит так(нашел в Инете):
<script type="text/javascript" src="jquery-1.3.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
  refreshDiv();
});
 
function refreshDiv() {
  $("#djname").load("test.php", function() { setTimeout("refreshDiv();", 2000); } );
}
</script>

Насколько я понимаю вся соль в строчке
"#djname").load("test.php"
где я задаю откуда брать внутренности div, которые я хочу обновлять. Меняю djname на content Ок. test.php менять на main.php или на самого себя index.php ссылаться? Еще такая фишка, что вбил в test.php примерный html-код, который выводится в $content так получается полная каша или ничего не выводится. Надо кавычки какие-то экранировать, или как?
  • 0

#2 ApacHe

ApacHe

    Гуру

  • Пользователь
  • 112 сообщений

Отправлено 17 Сентябрь 2009 - 11:45

Если хочешь просто загрузить содержимое отдельного файла в DIV, то попробуй так. Только сам файл должен уже выводить (echo) данные. Ну или в конец файла main.php добавить echo $content;

<html>
<head>
<script type="text/javascript" src="jquery-1.3.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
  $("#content").load("includes/main.php");
});
</script>
</head>
<body>
	<div id="content"></div>
</body>
</html>

  • 0
[ ICQ ] ::: [ 6000000 ]

#3 Psi

Psi
  • Новобранец
  • 2 сообщений

Отправлено 17 Сентябрь 2009 - 12:17

Если хочешь просто загрузить содержимое отдельного файла в DIV, то попробуй так. Только сам файл должен уже выводить (echo) данные. Ну или в конец файла main.php добавить echo $content;

<html>
<head>
<script type="text/javascript" src="jquery-1.3.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
  $("#content").load("includes/main.php");
});
</script>
</head>
<body>
	<div id="content"></div>
</body>
</html>


Мммм... Тут получается, что в index.php идет строчка, которая подгружает main.php и если поставить echo $content; то увижу на весь экран содержимое $content;

Еще такая вещь, что если скажем сделать файл test.php и поместить туда
<?php

include_once('includes/main.php');
echo $content;
?>
то естественно не передаются данные, которые идут в строчке вида index.php?a=b&c=d :(
  • 0

#4 Alexano

Alexano
  • Пользователь
  • 109 сообщений

Отправлено 24 Сентябрь 2009 - 15:08

покажи содержимое фаила где ты формируешь запрс серверу
  • 0