有人知道如何在PHP中用同一脚本打开和读取上传的文档吗?
我有一个表单可以上传index.php中的word文件。现在,我上传word文档。它转到名为upload.php的文件并成功上传。现在我想知道如何用upload.php中的相同脚本编写打开和读取上传文件的代码
我是PHP的新手。所以,请帮我详细解释一下流程。提前谢谢。
index.php 编码
<html>
<head>
<title>
HTML Converter
</title>
</head>
<body>
<h4>HTML Converter</h4>
<form enctype="multipart/form-data" action="" method="POST">
Please choose a file: <input name="file" type="file" /><br />
<input type="submit" value="Upload" name="submit" />
</form>
</body>
</html>
上传编码.php
if ($_FILES["file"]["error"] > 0) {
echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
} else {
echo "Upload: " . $_FILES["file"]["name"] . "<br>";
echo "Type: " . $_FILES["file"]["type"] . "<br>";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br>";
if (file_exists("upload/" . $_FILES["file"]["name"])) {
echo $_FILES["file"]["name"] . " already exists. ";
} else {
move_uploaded_file($_FILES["file"]["tmp_name"], "upload/" . $_FILES["file"]["name"]);
echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
$filedata = file_get_contents($_FILES["file"]["name"]);
echo $filedata
;
}
}
你当然可以在upload.php中尝试这样的东西:
if ($_FILES["file"]["error"] > 0) {
echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
}
else {
echo "Upload: " . $_FILES["file"]["name"] . "<br>";
echo "Type: " . $_FILES["file"]["type"] . "<br>";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br>";
if (file_exists("upload/" . $_FILES["file"]["name"])) {
echo $_FILES["file"]["name"] . " already exists. ";
}
else {
$new_file = "upload/" . $_FILES["file"]["name"];
move_uploaded_file($_FILES["file"]["tmp_name"], $new_file);
echo "Stored in: " . $new_file . "<br />";
readfile($new_file);
}
}
顺便说一句,如果它是Word文件(.doc、.docx等(,或者任何二进制文件,那么输出可能看起来有点混乱。
还要注意的是,任何地方都没有卫生设施,因此当前状态下的代码可能非常不安全(尤其是如果除了你个人之外的其他人将使用它(。只是提醒一下。