PHP 文件在浏览器中打开,而不是运行


PHP file opens in browser instead of running

我需要在为学校项目构建的网站中使用一些PHP。我需要它来上传.swf文件。但是当我按下"上传"按钮时,它会在浏览器中打开 php 文件,而不是运行它,或者如果有错误则显示错误。

这是我的HTML代码:

<!DOCTYPE html>
<html>
<head>
<title>New Smallcut</title>
</head>
<body>
<font face="verdana" size="2">
<div style="text-align:center">
This is a webpage<br>
But no matter what, I am King
<p><a href=http://www.kiaye.org/>KIAYEorg</a></p>
    <br>
    <img src=KingSn0w.png width="100" height="100" alt=“King Sn0wCh1ld’s logo”>

    <form action="upload.php" method="post" enctype="multipart/form-data">
        Select game to upload:
        <input type="file" name="fileToUpload" id="fileToUpload">
        <input type="submit" value="Upload Image" name="submit">
    </form>
</div>
</font>

它应该在图像和表单上方放置一些文本,在其他纯网页上。

接下来是PHP,我从W3Schools得到的。

<?php
$target_dir = "uploads";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
// Check if image file is a actual image or fake image
if(isset($_POST["submit"])) {
$check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
if($check !== false) {
    echo "File is an image - " . $check["mime"] . ".";
    $uploadOk = 1;
} else {
    echo "File is not an image.";
    $uploadOk = 0;
}
}
// Check if file already exists
if (file_exists($target_file)) {
echo "Sorry, file already exists.";
$uploadOk = 0;
}
// Allow certain file formats
if($imageFileType != "swf") {
echo "Sorry, only .swf files are allowed.";
$uploadOk = 0;
}
?>

完全不知道为什么它不起作用,我只是在 5 年不使用它后回到 HTML(我上次使用它时是 9 岁),我真的需要这一点 PHP(我不明白,为了记录)工作。稍后我将需要更多的PHP来用于站点范围的搜索,我假设搜索结果和其他东西,如果我能让它工作,那将是令人欣慰的。

提前感谢!

您正在通过 file:// 访问该文件,无论您是否安装了 Web 服务器,如果您在浏览器中打开 op PHP 文件本身,则 Web 服务器 NAS 与它无关; 您直接打开文件,无需网络服务器的干预。

您的

网络服务器配置为运行本地网站,我认为可以通过您的本地 IP 地址访问该网站 127.0.0.1 .

在浏览器中输入它并检查它是否有效。

尝试将其添加到 PHP 文件所在的 .htaccess 文件中

AddHandler application/x-httpd-php .php

如果它不起作用,这意味着您的 apache 服务器上没有安装 PHP。请联系您的托管服务提供商。

编辑:

您需要安装带有PHP模块的apache服务器才能运行PHP文件。

你可以安装像XAMPP这样的捆绑包,然后你将能够运行php文件。您可以在此处阅读更多内容:https://www.apachefriends.org/index.html

你需要

一个像Nginx,Apache或PHP服务器本身这样的网络服务器,如果你不这样做,那么当你尝试通过浏览器(file://)访问文件时,浏览器会认为它是纯文本。

XAMPP

和WAMP堆栈都是推荐的,并且非常容易安装,它们还附带MySQL(以及用于XAMPP的Perl)。

当然,如果您不感兴趣,您可以安装独立的Web服务器,这里有一些安装Nginx和设置PHP的说明,这里是Apache的说明。

祝你好运!