我正在研究 oop php 文件上传脚本。很简单。但不起作用。问题是什么?我学习如何使用 $FILE,以及如何编写 oop 风格的代码。
Thanks.
upload.php 是:
<?php
class upload{
public $src = "./upload/";
public $tmp;
public $filename;
public $type;
public $uploadfile;
public function startupload(){
$this -> filename = $_FILES["file"]["name"];
$this -> tmp = $_FILES["file"]["tmp_name"];
$this -> uploadfile = $src . basename($this -> name);
}
public function uploadfile(){
if(move_uploaded_file($this -> tmp, $this -> uploadFile)){
return true;
}
}
}
?>
index.php 是:
<?php
require_once('./lib/upload.php');
?>
<?php
if(isset($_POST['file'])){
$fileupload = new upload();
if($fileupload -> uploadfile()){
echo 'Fisierul a fost uploadat';
}
}
?>
<html>
<head></head>
<body>
<form align="center" enctype="multipart/form-data" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="post">
Select upload file: <input type="file" name="file" required="yes" />
<input type="submit" value="Trimite" />
<p>
</form>
</body>
</html>
我的想法哪里错了?
代码中的问题未触发是因为您检查了 post 变量中的变量文件,但在那里找不到它。正确的方法是
if(isset($_FILES['file'])) {
$fileupload = new upload();
if($fileupload -> uploadfile()) {
echo 'Fisierul a fost uploadat';
}
}
此外,您的类将无法工作,您应该将变量传递给构造函数并将 upload->startupload() 重命名为 upload->upload
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)