Делаю сложный сайт, где много контента должно подгружаться с помощью ajax. Разумеется, хотелось бы поместить все js файлы в отдельную папку (вместе с ajax скриптами).
В чём суть. В файле controller.php подключается ajax.js, различные настройки и другие скрипты. В нём же подключается manage.php, где находятся ссылки и блоки, с которыми работает ajax-скрипт. Запросы ajax-скрипт отправляет на файл content.php. Вся эта система подключена к index.php, который является, своего рода, главным контроллером. И проблема в том, что ajax вроде работает, но при этом либо не находит content.php, либо не может с ним взаимодействовать по каким-то причинам. Не пойму в чём дело.
Структура папок:
Корень
L Папка "work" => файл index.php
L Папка "js" => файл ajax.js
L Папка "page" => файл controller.php
L Папка "includes" => файл manage.php
L Папка "model" => файл content.php
Фишка состоит в том, что, когда все файлы находятся в одной папке, то проблем никаких не возникает. Но когда я пытаюсь разнести их все по разным папкам, то ajax ломается. При этом функция ожидания ответа (beforeSend) работает, да и в целом другие скрипты работают исправно. Но вот success ничего не возвращает.
Файл controller.php:
Файл ajax.js:
Файл manage.php:
Файл content.php:
При клике по "Загрузить данные" на какое-то мгновение появляется "Ожидание данных", после чего оно пропадает, но на его месте ответа от content.php не отображается. Я так понимаю, что есть какая-то проблема в самой ссылке url: "content.php", но пробовал писать абсолютный путь и это тоже ни к чему не привело.
В чём суть. В файле controller.php подключается ajax.js, различные настройки и другие скрипты. В нём же подключается manage.php, где находятся ссылки и блоки, с которыми работает ajax-скрипт. Запросы ajax-скрипт отправляет на файл content.php. Вся эта система подключена к index.php, который является, своего рода, главным контроллером. И проблема в том, что ajax вроде работает, но при этом либо не находит content.php, либо не может с ним взаимодействовать по каким-то причинам. Не пойму в чём дело.
Структура папок:
Корень
L Папка "work" => файл index.php
L Папка "js" => файл ajax.js
L Папка "page" => файл controller.php
L Папка "includes" => файл manage.php
L Папка "model" => файл content.php
Фишка состоит в том, что, когда все файлы находятся в одной папке, то проблем никаких не возникает. Но когда я пытаюсь разнести их все по разным папкам, то ajax ломается. При этом функция ожидания ответа (beforeSend) работает, да и в целом другие скрипты работают исправно. Но вот success ничего не возвращает.
Файл controller.php:
Код:
<head>
<script src="js/jquery.js"></script>
<script src="js/ajax.js"></script>
</head>
<body>
<?php include('includes/manage.php'); ?>
</body>
Код:
function funcBefore(){
$("#information").text("Ожидание данных")
};
function funcSuccess(data){
$("#information").text(data)
};
$(document).ready(function (){
$("#load").bind("click", function() {
var admin = "Admin";
$.ajax({
url: "content.php",
type: "POST",
data: ({name: admin, number: 5}),
dataType: "html",
beforeSend: funcBefore,
success: funcSuccess
});
});
});
Код:
<p id="load" style="cursor: pointer;">Загрузить данные</p>
<div id="information"></div>
Код:
<?php echo 'Name: '.$_POST['name'].', number: '.$_POST['number']; ?>