jquery.get, возвращающий код php? - PullRequest
3 голосов
/ 09 августа 2009

Я пытаюсь использовать функцию jquery ajax $ .get (...), чтобы отправить запрос на мой сервер и вернуть ему некоторые данные. Я использую следующий код:

$.get("php/getRocks.php", { name: "John", time: "2pm" },
    function(data){
    alert("Data Loaded: " + data);
});

Вместо того, чтобы вернуть данные, он просто возвращает весь php-файл в виде строки. Я делаю что-то неправильно? Спасибо за помощь.

Ответы [ 4 ]

8 голосов
/ 09 августа 2009

PHP установлен на вашем сервере? Это проблема с сервером. По какой-то причине ваш файл .php не обрабатывается должным образом, и он возвращает код PHP в виде простого текста.

Это в ответ на:

Ну, я, кажется, решил проблема вроде. Видимо, если я доступ к сайту локально, php не работать, но если я использую доменное имя, это делает. Кто-нибудь знает почему? Или еще лучше, способ это исправить?

Спасибо всем за помощь!

При локальной работе (и это всегда хорошая идея перед загрузкой в ​​живую среду), вам нужно настроить PHP на своем компьютере, чтобы он мог запускать нужные вам страницы. Браузер не сделает это за вас, так как это технология на стороне сервера. Вы можете загрузить пакет типа Uniform Server , который предоставит вам полную серверную среду для работы с вами.

1 голос
/ 23 января 2010

У меня та же проблема (с использованием MAMP на Mac), и хотя я еще не решил ее, я на шаг ближе.

По сути, это может быть связано с подкаталогами / корнем документа. Если я устанавливаю свой URL как getRocks.php (и перемещаю туда свой скрипт), он работает (я получаю контент обратно), но если я получаю его как php / getRocks.php, он не работает (я возвращаю код php) .

Возможно, MAMP что-то добавляет с типами ответов в подкаталогах? Я собираюсь взглянуть дальше, но, надеюсь, это поможет вам в правильном направлении.

0 голосов
/ 09 августа 2009

Ну, похоже, я решил проблему, вроде. Очевидно, что если я захожу на сайт локально, php не работает, но если я использую доменное имя, он работает. Кто-нибудь знает почему? Или еще лучше, как это исправить?

Спасибо всем за помощь!

0 голосов
/ 09 августа 2009

первый. убедитесь, что у вас установлен php

Если вы используете linux / apache2 и php 5 вам нужно скомпилировать / установить apache и загрузить php через dso например:

LoadModule php5_module        modules/libphp5.so

По моему скромному мнению, это не имеет ничего общего с вашим jQuery, кроме установки / конфигурации вашего веб-сервера:

Если это apache, убедитесь, что вы добавили эту строку в файл conf:

AddType application/x-httpd-php .php

Подробнее о php и apache, если вы используете php anad apache в linux / nix, например: http://dan.drydog.com/apache2php.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...