Я новичок и никогда раньше не использовал 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!'; ?>