你能通过带有$ _SERVER ['PHP_SELF']的表单使用PHP获取文件; 行动?

RCN*_*eil 1 php forms file-upload email-attachments

我有一个电子邮件附件表单,当<form action="processingtheformfile.php">发送到另一个PHP文件进行处理时工作正常.

但是,当我尝试将一个相同的想法实现为一个简单<form action="<?php echo $_SERVER['PHP_SELF']; ?>">然后使用的形式

if(isset($_POST['submit'])) {
$tmp_name = $_FILES['filename']['tmp_name'];
$type = $_FILES['filename']['type'];
$name = $_FILES['filename']['name'];
$size = $_FILES['filename']['size'];
Run Code Online (Sandbox Code Playgroud)

在文件的HTML之前noname.txt,无论文件类型如何,附件最终都会出现.

这是因为$_FILES无法对某个<?php echo $_SERVER['PHP_SELF']; ?>动作起作用,还是应该在别处寻找我的困境?

祈祷这是有道理的....

Sim*_*ser 5

用于上传文件的表单需要enctype="multipart/form-data"使其工作.这是一个例子:

<form method="POST" enctype="multipart/form-data" action="">
Run Code Online (Sandbox Code Playgroud)

虽然您报告第一个表单正常工作,但我不确定它在所有情况下是否可靠.确保它具有此值,enctype以便它可以正常工作.