I have a form inside a table, and it will duplicate the rows as many times as I want, it follows:
<table class="table table-striped table-bordered table-hover" >
<thead>
<tr>
<th width="15%">*Titulo</th>
<th width="15%">*Posição</th>
<th width="60%">*Imagem</th>
<th width="10%"><a class="adicionarCampoImagem" title="Adicionar imagem" style="cursor: pointer;"><span class="fa fa-plus-square fa-2x" style="color: #a6ce39 !important;"></span></a></th>
</tr>
</thead>
<tbody>
<tr class="linhasImagem">
<td>
<input type="text" name="txttituloImagem[]" id="txttituloImagem[]" class="form-control" maxlenght="15">
</td>
<td>
<input type="number" name="txtposicaoImagem[]" id="txtposicaoImagem[]" class="form-control" min="1" max="" maxlenght="4">
</td>
<td>
<input type="file" name="txtimagem[]" id="txtimagem[]" class="form-control" maxlenght="15">
</td>
<td><a class="removerCampoImagem" title="Remover Imagem" style="cursor: pointer;"><span class="fa fa-minus-square fa-2x"></span></a></td>
</tr>
</tbody>
</table>
And in PHP the following code:
$diretorio = "../../main/paginas/imagens/".$idProduto;
$diretorio = mkdir($diretorio, 0777);
if(is_dir($diretorio)){
$msg = "Não foi possivel criar a pasta da imagem";
}else{
echo $qtdImagem= count($_FILES['txtimagem']);
$tabela="imagens";
for ($controle = 0; $controle < count($_FILES['txtimagem']['name']); $controle++){
echo $destino = $diretorio."/".$_FILES['txtimagem']['name'][$controle];
$dados = array(
'produtos_id' => $idProduto,
'titulo' => $tituloImagem[$controle],
'url' => $destino[$controle],
'sequencia' => $posicaoImagem[$controle]
);
$sql_ins_imagens_resultado = adicionar($tabela, $dados);
if($sql_ins_imagens_resultado){
if(move_uploaded_file($arquivo['tmp_name'][$controle], $destino)){
$msg = buildMessage('upload', 'imagens');
}else{
$msg = buildMessage('uploadError', 'imagens');
}
}
}
}
The problem is that by giving echo
in count()
it is giving as ZERO and ends up not entering for
. What would be my mistake? Is this correct the way to upload?