Я хотел бы знать, как запустить простой PHP-код внутри расширения .html?
Как запустить PHP скрипт внутри html файла?
Ответ 1
Вы не можете запустить PHP
на странице html с .html
. Если страница на самом деле не является PHP, а расширение было изменено с помощью .htaccess
от .php
до .html
Что вы имеете в виду:
index.html
<html>
...
<?php echo "Hello world";?> //This is impossible
index.php //The file extension can be changed using htaccess, ex: its type stays php but will be visible to visitors as index.html
<?php echo "Hello world";?>
Ответ 2
Чтобы выполнить код "php" внутри "html" или "htm", для 'apache версии 2.4.23'
Перейдите в '/etc/apache2/mods-enabled' edit '@mime.conf'
Перейдите к концу файла и добавьте следующую строку:
"AddType application/x-httpd-php .html .htm"
ПЕРЕД тегом '</ifModules> ' проверено и проверено с помощью "apache 2.4.23" и "php 5.6.17-1" под "debian"
С уважением Стеф
Ответ 3
Просто ты не можешь!! но у вас есть некоторые возможные варианты:
1- Исправить php-страницу как внешнюю страницу.
2- напишите свой html-код внутри самой страницы php.
3 - используйте iframe для включения php в html-страницу.
чтобы быть более конкретным, если вы не хотите редактировать файл htaccess, вы можете подумать об этом:
Ответ 4
спасибо за идеи, но никто не работает здесь. Так что я сделал это... Я использую последнюю версию xampp в 2014 году. перейдите в \xampp\apache\conf\extra\httpd-xampp.conf.
мы найдем этот бит кода:
<IfModule php5_module>
**<FilesMatch "\.php$">**
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
PHPINIDir "C:/xampp/php"
</IfModule>
Сосредоточьтесь на второй строке, поэтому мы должны изменить на:
<IfModule php5_module>
**<FilesMatch "\.(php|html)$">**
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
PHPINIDir "C:/xampp/php"
</IfModule>
И это все. Работает хорошо!
Ответ 5
Вам нужно сделать расширение как .php для запуска php-кода НО, если вы не можете изменить расширение, вы можете использовать Ajax для запуска php извне и получить результат
Например,
<html>
<head>
<script src="js/jquery.min.js"></script>
<script>
$(document).ready(function(){
$.ajax({
url:'php_File_with_php_code.php',
type:'GET',
data:"parameter=some_parameter",
success:function(data)
{
$("#thisdiv").html(data);
}
});
});
</script>
</head>
<body>
<div id="thisdiv"></div>
</body>
</html>
Здесь загружается JQuery и, как только загружаются страницы, ajax вызывает php файл, откуда берутся данные, затем данные помещаются в div
Надеюсь, что это поможет
Ответ 6
Я не уверен, что это то, что вы хотели, но это очень хакерский способ включить php. Что вы делаете, так это то, что вы помещаете php, который хотите запустить в другом файле, и затем включаете этот файл в изображение. Например:
RunFromHTML.php
<?php
$file = fopen("file.txt", "w");
//This will create a file called file.txt,
//provided that it has write access to your filesystem
fwrite($file, "Hello World!");
//This will write "Hello World!" into file.txt
fclose($file);
//Always remember to close your files!
?>
RunPhp.html
<html>
<!--head should be here, but isn't for demonstration sake-->
<body>
<img style="display: none;" src="RunFromHTML.php">
<!--This will run RunFromHTML.php-->
</body>
</html>
Теперь, после посещения RunPhp.html, вы должны найти файл с именем file.txt в том же каталоге, в котором были созданы два вышеуказанных файла, а файл должен содержать "Hello World!". внутри него.
Ответ 7
Да, вы можете запустить PHP на странице HTML.
Я успешно выполнял PHP-код в своих HTML файлах уже много лет. (Для любопытных это связано с тем, что у меня более 8 000 статических HTML файлов, созданных мной и другими за последние 20 лет, и я не хотел потерять рейтинг поисковой системы, изменив их, и, что более важно, у меня слишком много других вещей для работы).
Я не эксперт - ниже я пробовал и что работает для меня. Пожалуйста, не просите меня объяснить это.
Все ниже включает в себя добавление строки или двух файлов .htaccess.
Вот что один хост (http://simolyhosting.net) для меня сделал в 2008 году, но теперь он больше не работает для меня.
AddHandler application/x-httpd-php5 .html .htm
AddType application/x-httpd-php5 .htm .html
Теперь это решение считается устаревшим, хотя оно может сработать для вас.
Вот то, что сейчас работает для меня:
AddType application/x-httpd-lsphp .htm .html
(На этой странице есть PHP-код, который правильно работает с вышеупомянутым решением - http://mykindred.com/bumstead/steeplehistory.htm)
Ниже приведены другие решения, которые я нашел - они НЕ МОЙ:
https://forums.cpanel.net/threads/cant-execute-php-in-html-since-ea4-upgrade.569531
Я вижу это на многих серверах, которые я недавно обновил до EA4. Использование обработчиков cPanel Apache или их добавления непосредственно в .htaccess(так же, как cPanel делает с помощью gui add handlers):
AddHandler application/x-httpd-php5 .html
9 сентября 2016 г.
AddHandler application/x-httpd-ea-php56 .html
Откройте текстовый редактор, такой как текстовый блок, блокнот, нано и т.д. и добавьте следующую строку:
AddHandler x-mapp-php5 .html .htm
Если вы хотите использовать PHP 5.4 вместо PHP 5.2, используйте вместо этого следующую строку:
AddHandler x-mapp-php6 .html .htm
https://www.godaddy.com/community/Developer-Cloud-Portal/Running-php-in-html-files/td-p/2776
Чтобы запустить HTML с помощью FastCGI/PHP, попробуйте добавить этот код в файл .htaccess для каталога, в котором находится script:
Options +ExecCGI
AddHandler fcgid-script .html
FCGIWrapper /usr/local/cpanel/cgi-sys/php5 .html
При необходимости вы можете добавить дополнительные строки для других расширений файлов.
Ответ 8
<?php
echo '<p>Hello World</p>'
?>
Проще разместить что-то вдоль этих строк в вашем HTML, если ваш сервер настроен на выполнение PHP в файлах с расширением HTML.