我有一个非常烦人的错误。在>之后我的剧本结束了。
<html>
<body>
<h1>Upload file to see previous upload!</h1>
<form action="index.php" method="post" enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file">
<br>
<input type="submit" name="submit" value="submit">
</form>
<?PHP
if (isset ($_FILES["file"])) {
$allowedExts = array("jpeg", "jpg", "png");
$temp = explode(".", $_FILES["file"]["name"]);
$extension = end($temp);
if ((($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/jpg")
|| ($_FILES["file"]["type"] == "image/pjpeg")
|| ($_FILES["file"]["type"] == "image/x-png")
|| ($_FILES["file"]["type"] == "image/png"))
&& ($_FILES["file"]["size"] < 1048576)
&& in_array($extension, $allowedExts)) {
if ($_FILES["file"]["error"] > 0) {
echo "Error: Couldn't upload file!";
} else {
move_uploaded_file($_FILES["file"]["tmp_name"], "files/" . $_FILES["file"]["name"]);
}
} else {
echo "Upload a file NAO!";
}
}
?>
</body>
</html>
所以在我的页面上我可以读到:“0) { echo "Error: Couldn't upload file!"; } else { move_uploaded_file($_FILES["file"]["tmp_name"], "files/" . $_FILES["file"]["name"]); } } else { echo "welcome!"; } } ?>
”
好吧,猜猜看!那不是我打算做的......所以如果有人能解释我为什么会这样,我会很感激。
答案 0 :(得分:5)
根本没有处理PHP。确保您的页面是.php
页面和PHP服务器。否则,请确保Apache正在处理您正在使用的任何文件扩展名的PHP。
另请注意,在<?php
而不是<?PHP
中使用小写PHP更为常见,尽管看起来大小写并不重要。
答案 1 :(得分:2)
由于文件名错误或misspelled start of php code
即<?PHP
而不是<?php
以下代码被视为HTML标记的一部分:
<?PHP
if (isset ($_FILES["file"])) {
$allowedExts = array("jpeg", "jpg", "png");
$temp = explode(".", $_FILES["file"]["name"]);
$extension = end($temp);
if ((($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/jpg")
|| ($_FILES["file"]["type"] == "image/pjpeg")
|| ($_FILES["file"]["type"] == "image/x-png")
|| ($_FILES["file"]["type"] == "image/png"))
&& ($_FILES["file"]["size"] < 1048576)
&& in_array($extension, $allowedExts))
{
if ($_FILES["file"]["error"] >
注意开始<
....结束>
您可以在浏览器verbatim
中看到其他内容。
使用.php
扩展名重命名您的文件。
最好将PHP代码更改为:
<?php
// PHP code here
?>
编辑:感谢所有评论,<?PHP
或<?php
似乎都有效。
编辑2:要检查的另一件事是Apache配置类似于这样的行:
AddType application/x-httpd-php .php
这基本上告诉Apache将所有.php
文件视为PHP脚本。