Ни один из моих HTML не отображается на моей странице PHP - PullRequest
1 голос
/ 19 июня 2020

У меня есть 3 файла (это единственные три, которые имеют значение): нижний колонтитул. php, заголовок. php и индекс. php. В index. php у меня есть php, в котором написано require header.php и require footer.php. Все мои HTML верны, я считаю, ошибок нет. Я покажу один пример, где все идет не так. Я использую сервер XAMPP на моем ma c, и у меня это HTML в заголовке файла php. php:

<a href="#">
    <img src="images/logo.png" alt="Logo">
</a>

Однако, когда я использую элемент inspect на моя страница php, вот что появляется:

<header>
        <nav>
            <a href="#">

            </a>
        </nav>
    </header>

Имейте в виду, что в этих тегах заголовков должно быть намного больше кода, но это все, что появляется. При проверке он отображается как 0 на 1024 или что-то в этом роде. Какие у меня проблемы с заголовком?

Для справки, вот мой заголовок. php файл:

<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title></title>
</head>
<body>
    <header>
        <nav>
            <a href="#">
                <img src="images/logo.png" alt="Logo">
            </a>
            <ul>
            <li><a href="index.php">Home</a></li>
            <li><a href="#">More</a></li>
            <li><a href="#">About</a></li>
            <li><a href="#">Portfolio</a></li>
            </ul>
            <div>

                <form action="includes/login.inc.php" method="post">
                    <input type="text" name="mailuid" placeholder="Username/Email...">
                    <input type="password" name="pwd" placeholder="Password...">
                    <button type="submit" name="login-submit">Login</button>
                </form>

                <a href="signup.php">Signup</a>

                <form action="includes/logout.inc.php" method="post">
                    <button type="submit" name="logout-submit">Logout</button>
                </form>
            </div>
        </nav>
    </header>
</body>
</html>

РЕДАКТИРОВАТЬ: вот индекс. php код:

<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Test I guess</title>
</head>
<body>
    <?php
        require "header.php";
    ?>

        <main>
            <p>You are logged out!</p>

            <p>You are logged in!</p>
        </main>

    <?php
        require "footer.php"
    ?>
</body>
</html>

Ничего не отображается HTML, даже заголовок.

Ответы [ 2 ]

1 голос
/ 19 июня 2020

У вас есть два отдельных HTML документа, один в заголовке. php и один в индексе. php. Затем вы включаете одно в другое. Это не имеет смысла для браузера и, вероятно, является основной причиной вашей проблемы.

Браузер рассчитывает работать с одним согласованным HTML документом. Поэтому каждый окончательный вывод в браузер (сгенерированный комбинацией сценариев PHP) должен содержать только один тег <html>, один тег <head> и один тег <body>.

Это сделает больше смысл:

заголовок. php

<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Your site name</title>
</head>
<body>
    <header>
        <nav>
            <a href="#">
                <img src="images/logo.png" alt="Logo">
            </a>
            <ul>
            <li><a href="index.php">Home</a></li>
            <li><a href="#">More</a></li>
            <li><a href="#">About</a></li>
            <li><a href="#">Portfolio</a></li>
            </ul>
            <div>

                <form action="includes/login.inc.php" method="post">
                    <input type="text" name="mailuid" placeholder="Username/Email...">
                    <input type="password" name="pwd" placeholder="Password...">
                    <button type="submit" name="login-submit">Login</button>
                </form>

                <a href="signup.php">Signup</a>

                <form action="includes/logout.inc.php" method="post">
                    <button type="submit" name="logout-submit">Logout</button>
                </form>
            </div>
        </nav>
    </header> 

индекс. php

<?php
    require "header.php";
?>

    <main>
        <p>You are logged out!</p>

        <p>You are logged in!</p>
    </main>

<?php
    require "footer.php"
?>

нижний колонтитул. php

</body>
</html>

Тогда выводится только один HTML документ, нет ненужного повторения разметки, которая требуется на всех страницах, но также и в документе HTML остается открытым для отдельных страниц для добавления основного содержимого.

0 голосов
/ 19 июня 2020

Выполните следующие действия.

  1. убедитесь, что apache сервер (xampp, lamp, wamp, mamp) работает правильно
  2. обновите файл заголовка, как показано ниже. вам не нужны теги в частичном файле.
  3. убедитесь, что файл заголовка находится в том же месте, что и index. php, если он находится внутри папки, укажите имя папки при использовании require или include.
  4. поместите фрагмент кода в начало индекса. php, чтобы получать сообщения об ошибках.

    <?php ini_set("display_errors", 1); error_reporting(E_ALL); ?>

    если проблема все еще существует, мне понадобится больше Информация. Ниже показано, как должен выглядеть заголовочный файл

    <header>
          <nav>
          <a href="#">
            <img src="images/logo.png" alt="Logo">
        </a>
        <ul>
        <li><a href="index.php">Home</a></li>
        <li><a href="#">More</a></li>
        <li><a href="#">About</a></li>
        <li><a href="#">Portfolio</a></li>
        </ul>
        <div>
    
            <form action="includes/login.inc.php" method="post">
                <input type="text" name="mailuid" placeholder="Username/Email...">
                <input type="password" name="pwd" placeholder="Password...">
                <button type="submit" name="login-submit">Login</button>
            </form>
    
            <a href="signup.php">Signup</a>
    
            <form action="includes/logout.inc.php" method="post">
                <button type="submit" name="logout-submit">Logout</button>
            </form>
        </div>
    </nav>
    

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...