Можно ли отправлять данные через PHP в файл HTML?

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

  <div class="w3-container w3-red w3-cell">
<h4>Todays Projections</h4>
<p>#OUTPUT THE CURRENT DATE + PROJECTION</p>
<?php
$xml=simplexml_load_file("XMLtest.xml") or die("Error: Cannot create object");
$nodes = $xml->xpath("/february/finances[@date='". date("d-m-Y") . "']");
echo "Date: ";
$attr = $nodes->attributes();
echo $attr['date'];
echo "<br> Projection: ";
echo $nodes->projection . ",<br>Recommended Staff: ";
echo $nodes->recommendedStaff . ",<br>Staff Wages: ";
echo $nodes->staffWages . ",<br>Actual: ";
echo $nodes->actual . "<br>";
?>
</div>

Пример XML:

<february>
<finances id="48" date="17-02-2017">
<projection>101</projection>
<recommendedStaff>10</recommendedStaff>
<staffWages>101</staffWages>
<actual>101</actual>
</finances>
<finances id="49" date="18-02-2017">
<projection>101</projection>
<recommendedStaff>10</recommendedStaff>
<staffWages>101</staffWages>
<actual>101</actual>
</finances>
<finances id="50" date="19-02-2017">
<projection>101</projection>
<recommendedStaff>10</recommendedStaff>
<staffWages>101</staffWages>
<actual>101</actual>
</finances>
</february>

Редактировать:
PHP работает с другими файлами, размещенными на сервере и через мою учетную запись. Однако я не могу заставить его работать в файле HTML, как показано выше.

0

Решение

У вас есть пара синтаксических ошибок, я не думаю, что это вообще сработало бы. Это сработало для меня:

$xml = '<february>
<finances id="48" date="17-02-2017">
<projection>101</projection>
<recommendedStaff>10</recommendedStaff>
<staffWages>101</staffWages>
<actual>101</actual>
</finances>
<finances id="49" date="18-02-2017">
<projection>101</projection>
<recommendedStaff>10</recommendedStaff>
<staffWages>101</staffWages>
<actual>101</actual>
</finances>
<finances id="50" date="19-02-2017">
<projection>101</projection>
<recommendedStaff>10</recommendedStaff>
<staffWages>101</staffWages>
<actual>101</actual>
</finances>
</february>';
$xml=simplexml_load_string($xml);
$nodes = $xml->xpath("/february/finances[@date='". date("d-m-Y" . "']")); # fixed month name, added missing parenthesis
$node = $nodes[0]; # xpath returns an array of nodes, not just one

echo <<< HTML
Date: $node[date]<br/>
Projection: $node->projection,<br/>
Recommended Staff: $node->recommendedStaff,<br/>
Staff Wages: $node->staffWages,<br/>
Actual: $node->actual<br/>
HTML;

Обратите внимание, я использовал синтаксис heredoc для блока HTML.

Изменить: в комментариях вы указали, что вы даже не можете запустить PHP, это совсем другая проблема. Но как только вы разберетесь с этим, этот код должен работать на вас.

0

Другие решения

Если я правильно понимаю ваш вопрос, вы хотите вывести данные из файла PHP, чтобы они были видны пользователю. Для этого вам нужно сделать следующее:

  1. Создать файл php index.php
  2. Добавьте свой HTML и PHP код
  3. Убедитесь, что ваш веб-сервер работает
    • php -S localhost:8080
  4. Откройте URL в вашем браузере HTTP: // локальный: 8080

Скажем ваш index.php файл выглядит так:

<!DOCTYPE html>
<html lang="en">
<head>
<title>Demo</title>
</head>
<body>
<ul>
<li>Foo</li>
<?php

$source = array(1,2,3,4,5);

for ($i = 0; $i < count($source); $i++) {
echo '<li>' . $i . '</li>';
}

?>
</ul>
</body>
</html>

Визуализированный результат выглядит следующим образом:

  • Foo
  • 0
  • 1
  • 2
  • 3
  • 4
-1

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector