Я хотел бы знать, как запустить простой PHP-код внутри расширения .html-файла ?
Вы не можете запустить 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";?>
Чтобы выполнить код «php» внутри «html» или «htm», для «apache version 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»
рассматривает steph
Просто вы не можете! но у вас есть некоторые возможные варианты:
1- Исправить php-страницу как внешнюю страницу.
2- напишите свой html-код внутри самой страницы php.
3 – использовать iframe для включения php в html-страницу.
чтобы быть более конкретным, если вы не хотите редактировать свой файл htaccess, вы можете подумать об этом:
спасибо за идеи, но никто не работает здесь. Итак, я сделал это … Я использую последнюю версию 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>
И это все. Работает хорошо!
Вам нужно сделать расширение как .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
Надеюсь это поможет
Я не уверен, что это то, что вы хотели, но это очень хакерский способ включить 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's sake--> <body> <img style="display: none;" src="RunFromHTML.php"> <!--This will run RunFromHTML.php--> </body> </html>
Теперь, после посещения RunPhp.html, вы должны найти файл с именем file.txt в том же каталоге, в котором были созданы два вышеуказанных файла, а файл должен содержать «Hello World!». внутри него.
Да, вы можете запустить 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 для каталога, в котором находится скрипт:
Options +ExecCGI AddHandler fcgid-script .html FCGIWrapper /usr/local/cpanel/cgi-sys/php5 .html
При необходимости вы можете добавить дополнительные строки для других расширений файлов.
<?php echo '<p>Hello World</p>' ?>
Так же просто, как размещать что-то вдоль этих строк в вашем HTML, предполагая, что ваш сервер настроен на выполнение PHP в файлах с расширением HTML.