我在input type ="file"
中有form
上传图片(多张图片)和其他输入(来自textareas)。
我需要,如果用户没有选择任何图像,我不想要优先上传图像。
这是因为如果我使用Ipad中的网站,脚本会给我错误,因为他在file-input[]
中没有找到任何内容,如果我不想上传图片的话。
所以我想检查file-input[]
是否empty or not
,所以Ipad的问题将会解决(我希望)。
这是html
<div id="file-ins-immagini">
<div class="et-form-ins">Immagini allegate</div>
<input type="file" name="file-input[]" id="file-input" value="" class="file" multiple>
</div>
这是php中插入的代码('invia'是我表单提交按钮的名称)
if (isset($_POST['invia']) && $_POST['invia'] == "Inserisci")
{
$messaggiocaso = "";
$infoimages = array_combine($_FILES["file-input"]['name'], $_FILES["file-input"]['tmp_name']); // recuperiamo e uniamo le informazionei sulle immagini
foreach ($infoimages as $k => $v)
{
$nomefile = strtolower($k);
if(!empty($nomefile))
{
if (filesize($v) < $peso_file)
{
$estensionefile = pathinfo($nomefile, PATHINFO_EXTENSION);
if (in_array(strtolower($estensionefile), $estensioni))
{
if (is_uploaded_file($v))
{
if(!file_exists("$uploadDIR/$next_id"))
{
mkdir("$uploadDIR/$next_id",0777,true);
}
if (!move_uploaded_file($v, "$uploadDIR/$next_id/$nomefile"))
{
$messaggiocaso = urlencode("Impossibile l'inserimento del caso. Impossibile spostare il file $k");
header("location:tabella.php".'?msgcasoerrato='.$messaggiocaso);
exit;
}
else
//the rest of the code
我试过
if (isset($_POST['invia']) && $_POST['invia'] == "Inserisci" && !empty($_POST['file-input[]']))
和!empty($_POST['file-input']
但在这些情况下,上传功能不再适用于PC。
那么如何检查文件输入是否为空?
答案 0 :(得分:2)
if ($_FILES['file_input']){
foreach($_FILES['file_input']['name'] as $k=>$v){
if(!empty($_FILES['file_input']['name'][$k])){
if($_FILES['file_input']['size'][$k]>0){
// all ok, can be moved ..
}
}
}
}