включить php-скрипт внутри HTML

Я новичок и никогда раньше не использовал PHP. Я хочу выполнить PHP-скрипт из HTML-файла в Linux. Что мне нужно сделать?

Это содержимое моего файла HTML:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <HTML> <HEAD> <TITLE>Testing Weather Data</TITLE> </HEAD> <BODY> <div id="weather"> <p>Weather Information <?php include "/home/tahoang/Desktop/weatherData.php"; ?> </div> </BODY> </HTML> 

Какой результат вы получаете? Он просто показывает код PHP?

Я предполагаю, что это так.

Для теста измените расширение файла на .php и запустите его снова. Он работает сейчас?

Если это так, вам нужно связать PHP с файлами .html и .htm на вашем сервере.

РЕДАКТИРОВАТЬ

Это строка, которую вы хотите добавить в конфигурацию Apache:

 AddType application/x-httpd-php .html 

Вы можете вставлять PHP-код прямо в HTML с помощью <?php ?> И помещать ваш php-код между открытием и закрытием тегов.

До этого вам нужно добавить этот обработчик в файл /etc/apache2/apache2.conf, чтобы запустить php-скрипты внутри .html-файла:

AddType application/x-httpd-php .html

Вы либо пропустите путь к файлу в качестве аргумента в программу командной строки php , либо настроите веб-сервер для выполнения страницы как PHP (особенности которой зависят от используемого вами веб-сервера), затем перейдите по URL-адресу страницы.

Вот пошаговый процесс для включения PHP-кода в html-файл (Tested)

Если PHP работает, остается только один шаг, чтобы использовать PHP-скрипты в файлах с расширениями * .html или * .htm. Волшебное слово «.htaccess». Пожалуйста, ознакомьтесь с определением .htaccess в Википедии, чтобы узнать больше об этом. Согласно Википедии, это «файл конфигурации на уровне каталогов, который позволяет децентрализовать управление конфигурацией веб-сервера».

Возможно, вы можете использовать такой файл конфигурации .htaccess для своей цели. В нашем случае вы хотите, чтобы веб-сервер обрабатывал файлы HTML, такие как файлы PHP.

Сначала создайте пустой текстовый файл и назовите его «.htaccess». Вы можете спросить себя, почему имя файла начинается с точки. В Unix-подобных системах это означает, что dot-файл является скрытым файлом. (Примечание. Если ваша операционная система не позволяет именам файлов, начинающимся с точки, просто называть файл «xyz.htaccess» временно. Как только вы загрузите его на свой веб-сервер на более позднем этапе, вы можете переименовать файл в онлайн ». htaccess "). Затем откройте файл с помощью простого текстового редактора, такого как« Редактор »в MS Windows. Вставьте следующую строку в файл: AddType application / x-httpd-php .html .htm Если это не сработает, удалите строку из вашего файла и вставьте в нее эту альтернативную строку, для PHP5: приложение AddType / x- httpd-php5 .html .htm Теперь загрузите файл .htaccess в корневую директорию вашего веб-сервера. Убедитесь, что имя файла «.htaccess». Теперь ваш веб-сервер должен разбирать файлы * .htm и * .html, такие как файлы PHP.

Вы можете попробовать, если он работает, создав HTML-файл, как показано ниже. Назовите его «php-in-html-test.htm», вставьте в него следующий код и загрузите его в корневой каталог вашего веб-сервера:

  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE>Use PHP in HTML files</TITLE> </HEAD> <BODY> <h1> <?php echo "It works!"; ?> </h1> </BODY> </HTML> 

Попробуйте открыть файл в своем браузере, набрав: http://www.your-domain.com/php-in-html-test.htm (еще раз, пожалуйста, замените your-domain.com своим собственным доменом .. .) Если ваш браузер показывает фразу «Это работает!» все работает отлично, и вы можете использовать PHP в. * html и * .htm-файлах с этого момента. Однако, если нет, попробуйте использовать альтернативную строку в файле .htaccess, как мы показали выше. Если все еще не работает, обратитесь к вашему провайдеру хостинга.

Я удивлен, что никто не упомянул о способе взломать его – если вы не хотите затруднять изменение конфигурации Apache, вот как вы это делаете:

В вашем .html-файле вы просто используете iframe

 <iframe name="myPHPScript" src="myScript.php" width="100%" frameborder="0"></iframe> 

Это просто будет отображать, что когда-либо отображается, как если бы вы пошли прямо на http://www.mysite.com/myScript.php

Так, например, мы могли бы

 <?php echo 'Hello World!'; ?>