如何使用PHP检查文件是否附加到HTML表单?

如何使用PHP检查文件是否附加到HTML表单?,php,html,Php,Html,我需要确保文本输入到表单的textarea输入元素中,或者是通过file输入元素附加的文件。 我尝试了各种方法,包括: if((empty($_POST['text'])) && (!empty($_FILES['uploadedfile']))) { $errors .= 'Please either enter your text or attach a file.<br/><br/>'; } if((空($\

我需要确保文本输入到表单的textarea输入元素中,或者是通过file输入元素附加的文件。 我尝试了各种方法,包括:

if((empty($_POST['text'])) && (!empty($_FILES['uploadedfile']))) {
            $errors .= 'Please either enter your text or attach a file.<br/><br/>';
        }
if((空($\u POST['text'])和&(!空($\u FILES['uploadedfile'])){
$errors.='请输入文本或附加文件。

; }
不起作用

谢谢大家!

试一试
if((空($_POST['text']))| |(空($_FILES['uploadedfile'])){
错误。='请输入文本或附加文件。

; }
您只需要其中一个,因此询问“文本”字段是空的还是“上载文件”是空的

试试看
if((空($_POST['text']))| |(空($_FILES['uploadedfile'])){
错误。='请输入文本或附加文件。

; }
您只需要一个或另一个,因此您会询问“text”字段是空的还是“uploadFile”是空的

这是我使用的代码

if ((!empty($_POST['text']) && file_exists($_FILES["image"]["tmp_name"])) || (empty($_POST['text']) && !file_exists($_FILES["image"]["tmp_name"]))) {
    throw new Exception('must choose one or other');
}
这是我使用的代码

if ((!empty($_POST['text']) && file_exists($_FILES["image"]["tmp_name"])) || (empty($_POST['text']) && !file_exists($_FILES["image"]["tmp_name"]))) {
    throw new Exception('must choose one or other');
}
如果设置了一个或另一个,但不是两个都设置,也不是无设置,则此操作将通过


如果设置了一个或另一个,则此操作将通过,但不能同时设置两个或无。

Ahem。。我认为您希望
|
成为
&
,因为只有当两者都为空时才是错误:)请注意$\u FILES数组中的条目可以是非空的,即使没有上载文件,您也要检查
$\u FILES['uploadedfile']['error']==0
。抱歉。我一开始不喜欢读它。也许他可以这样看。他希望优先考虑哪个领域,那么即使两个领域都被填满,他也会选择他想要的领域,而离开另一个领域,然而,如果只有一个领域被填满,他会选择那个领域。有道理吗?非常感谢大家!很抱歉占用了你的时间。我刚刚打错了一个字!在空无一人的面前——却没有注意到。再次感谢!啊哼。。我认为您希望
|
成为
&
,因为只有当两者都为空时才是错误:)请注意$\u FILES数组中的条目可以是非空的,即使没有上载文件,您也要检查
$\u FILES['uploadedfile']['error']==0
。抱歉。我一开始不喜欢读它。也许他可以这样看。他希望优先考虑哪个领域,那么即使两个领域都被填满,他也会选择他想要的领域,而离开另一个领域,然而,如果只有一个领域被填满,他会选择那个领域。有道理吗?非常感谢大家!很抱歉占用了你的时间。我刚刚打错了一个字!在空无一人的面前——却没有注意到。再次感谢!那么您想在两者都为空或两者都不为空时显示错误?但如果两者中只有一个被填满,那就不会了?严格地说是一个OR THOUS?那么您想在两者都为空或两者都不为空时显示错误?但如果两者中只有一个被填满,那就不会了?严格地说,是这样吗?
if ((!empty($_POST['text']) && file_exists($_FILES["image"]["tmp_name"])) || (empty($_POST['text']) && !file_exists($_FILES["image"]["tmp_name"]))) {
    throw new Exception('must choose one or other');
}