我想在我的HTML脚本中加载一个php页面

时间:2019-02-28 23:55:52

标签: php html

我将php代码编码到另一个.php文件中,并且我需要将其包含在html文件中,以便从数据库中检索信息并将其粘贴到表中。

换句话说,我希望包含我的.php,以便显示信息

我尝试使用<?php include 'database.php';?>,但似乎不起作用

HTML:

<body>
<button class="dbknapp" onclick="window.location.href = 'index.html';">Klikk     her for å legge inn informasjon!</button><br><br>
<table>
    <tr>
    <th>Id</th>
    <th>Fornavn</th>
    <th>Etternavn</th>
    <th>Email</th>
</tr>
</table>

<?php include 'database.php';?>
</body>

PHP:

<?php
$servername = "localhost";
$database = "db";
$username = "root";
$password = "philip123";

// Create connection

$conn = mysqli_connect($servername, $username, $password, $database);

// Check connection
if (!$conn) {
      die("Connection failed: " . mysqli_connect_error());
}

$sql = "SELECT id, name, lastname, email FROM Students"
$result = $conn-> query($sql);

if ($result-> num_rows > 0) {
    while ($row = $result-> fetch_assoc()) {
        echo "<tr><td>". $row["id"] ."</td><td>". $row["name"] ."</td><td>".             $row["lastname"] ."</td><td>". $row["email"] ."</td></tr>";
}
echo "</table>";
}
else {
echo "0 results";
}

$conn-> close();


?>

3 个答案:

答案 0 :(得分:1)

默认方法是使用扩展名为.php.phtml的PHP文件。默认情况下,服务器不解析扩展名为.html的文件。您应该将包含PHP标记的HTML文件重命名为.php文件。

如果您确实确实希望扩展名为.html的文件被PHP模块解析,则可以重新配置服务器,将PHP处理程序添加到以.html结尾的文件中。可以在服务器配置,虚拟主机配置甚至每个目录.htaccess中完成此操作(如果在配置中相应地设置了AllowOverride)。

mod_php处理程序:

<FilesMatch ".+\.html$">
    SetHandler application/x-httpd-php
</FilesMatch>

这将使每个扩展名.html的文字点之前具有至少一个任意字符的文件的PHP模块,即,排除仅扩展名之外没有名称的文件。模式是正则表达式。您也可以构建诸如<FilesMatch "^(file1|file2)\.html$">之类的表达式,以便仅将特定文件作为可解析的PHP文件进行处理。

cgi,fcgi fpm PHP集成有不同的配置。上面的代码是 mod-php 设置。

答案 1 :(得分:0)

您不能在HTML文档中包含(嵌入)PHP代码。 将文档扩展名从.html更改为.php,一切正常。或者由于您的代码太少,您可以将其放在一个文件中。

尝试一下:

index.php文件将包含:

    <!DOCTYPE html>
    <html>
    <head>
       <meta charset="utf-8" />
       <title>Simple PHP Script</title>
    </head>
    <body>
    <button class="dbknapp" onclick="window.location.href = 'index.php';">Klikk     her for å legge inn informasjon!</button><br><br>

    <table>
        <tr>
        <th>Id</th>
        <th>Fornavn</th>
        <th>Etternavn</th>
        <th>Email</th>
    </tr>
    <?php include 'database.php'; ?>
    </table>

    </body>
    </html>

database.php文件将包含:

<?php
$servername = "localhost";
$database = "db";
$username = "root";
$password = "philip123";

// Create connection

$conn = mysqli_connect($servername, $username, $password, $database);

// Check connection
if (!$conn) {
      die("Connection failed: " . mysqli_connect_error());
}

$sql = "SELECT id, name, lastname, email FROM Students"
$result = $conn-> query($sql);

if ($result-> num_rows > 0) {
    while ($row = $result-> fetch_assoc()) {
        echo "<tr><td>". $row["id"] ."</td><td>". $row["name"] ."</td>".$row["lastname"] ."</td><td>". $row["email"] ."</td></tr>";
}
echo "</table>";
}
else {
echo "0 results";
}

$conn-> close();
?>

答案 2 :(得分:0)

您无法在.html页面中执行PHP代码(除非完成一些.htaccess配置)。最简单的方法是将ReferenceError: exports is not defined文件重命名为.html

然后,您可以使用both HTML and PHP in the same page。您还可以在此.php页中包含其他PHP脚本。

.php

然后,database.php(我已格式化您的代码以使其可读)

<!DOCTYPE html>
    <html>
    <head>
       <meta charset="utf-8" />
       <title>Simple PHP Script</title>
    </head>
    <body>
    <button class="dbknapp" onclick="window.location.href = 'index.php';">Klikk     her for å legge inn informasjon!</button><br><br>
       <table>
        <tr>
           <th>Id</th>
           <th>Fornavn</th>
           <th>Etternavn</th>
           <th>Email</th>
       </tr>
       <?php include 'database.php'; ?>
       </table>
    </body>
</html>

如果您需要以<?php $servername = "localhost"; $database = "db"; $username = "root"; $password = "philip123"; // Create connection $conn = mysqli_connect($servername, $username, $password, $database); // Check connection if (!$conn) { die("Connection failed: " . mysqli_connect_error()); } $sql = "SELECT id, name, lastname, email FROM Students"; $result = $conn-> query($sql); if ($result-> num_rows > 0) { while ($row = $result -> fetch_assoc()) : ?> <tr> <td><?= $row['id'] ?></td> <td><?= $row['name'] ?></td> <td><?= $row['lastname'] ?></td> <td><?= $row['email'] ?></td> </tr> <?php endwhile; } else { echo "0 results"; } $conn-> close(); 的身份执行.html,请参见this post