Я запускаю Apache на Ubuntu, и моя проблема в том, что файл /etc/apache2/mods-available/php5.conf
отсутствовал:
<FilesMatch ".+\.ph(p[345]?|t|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
Я добавил его обратно, а php правильно обрабатывал файлы php.
Моим советом было бы передать параметр запроса.
Скажите Javascript использовать URL-адрес, например
host.local/my-script.php?callFunction=helloWorld
, и скажите php обрабатывать запрос object
<?php
//fetch query parameter
$callFunction = $_REQUEST['callFunction'];
//define hello world function
function helloWorld() {
echo 'Hello Ashish Srivastava';
}
//test the query parameter and call helloWorld
if($callFunction == "helloWorld")
helloWorld();
AJAX не вызывает функции PHP, он вызывает страницы. Например, hello.php
:
<?php
echo 'Hello Ashish Srivastava';
?>