Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

WBS DIGITAL

Upload de multiplas fotos

Recommended Posts

Bom dia a todos os amigos do forum,
Seguinte, estou com um formulário onde cadastro mais fotos de um determinado post do meu site, o que preciso é fazer com que esse formulário, ao invés de fazer upload de apenas 1 foto, fazer upload de várias fotos, por exemplo até 15 de uma vez.

cadastra-foto.php

<?php
$itemid = $_GET["itemid"];
?>
<form action="?p=inserir&tabela=fotoitem" method="post" enctype="multipart/form-data">
<input name="itemid" type="hidden" class="inputForm1" id="itemid" value="<?php echo $itemid; ?>" />
IMAGEM DO PRODUTO:<br>
<input name="fotoB" type="file" class="inputform" id="fotoB"/>
<br>
DESCRIÇÃO DA FOTO:<br />
<textarea name="descfoto" cols="45" rows="25" class="inputform3" id="descfoto" width="360"></textarea>
<input name="por" type="hidden" id="por" value="<?php echo $apelido; ?>" />
<input type="hidden" name="codigo" id="codigo" value="<?php echo $id; ?>" />
<input type="submit" class="btnform" value="Cadastrar" />
</form>

Script que insere a foto no banco de dados

case fotoitem:

$fotoB = $_FILES['fotoB']['name'];
$tmp_foto = $_FILES['fotoB']['tmp_name'];
$num = rand(0, 9999999999);
$diferencia = $num . "-";
$local_foto_serv = "produtos/" . $diferencia . $fotoB;
$foto_serv = $diferencia . $fotoB;
if (move_uploaded_file($tmp_foto, $local_foto_serv))
{

$sql = "insert into fotoitem ( itemid, fotoB, descfoto, id_login, por) VALUES('$itemid', '$foto_serv', '$descfoto', '$codigo', '$por')";

}
break; /* fim do caso $tabela = fotoitem */

Alguém pode me orientar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Osmar L Lima, agradeço pela orientação, mas preciso adequar ao meu script, pois todo o site foi desenvolvido assim, mudar seria ruim.
Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia a todos os amigos do forum,

Seguinte, estou com um formulário onde cadastro mais fotos de um determinado post do meu site, o que preciso é fazer com que esse formulário, ao invés de fazer upload de apenas 1 foto, fazer upload de várias fotos, por exemplo até 15 de uma vez.

 

cadastra-foto.php

 

<?php
$itemid = $_GET["itemid"];
?>
<form action="?p=inserir&tabela=fotoitem" method="post" enctype="multipart/form-data">
<input name="itemid" type="hidden" class="inputForm1" id="itemid" value="<?php echo $itemid; ?>" />
IMAGEM DO PRODUTO:<br>
<input name="fotoB" type="file" class="inputform" id="fotoB"/>
<br>
DESCRIÇÃO DA FOTO:<br />
<textarea name="descfoto" cols="45" rows="25" class="inputform3" id="descfoto" width="360"></textarea>
<input name="por" type="hidden" id="por" value="<?php echo $apelido; ?>" />
<input type="hidden" name="codigo" id="codigo" value="<?php echo $id; ?>" />
<input type="submit" class="btnform" value="Cadastrar" />
</form>

Script que insere a foto no banco de dados

 

case fotoitem:

$fotoB = $_FILES['fotoB']['name'];
$tmp_foto = $_FILES['fotoB']['tmp_name'];
$num = rand(0, 9999999999);
$diferencia = $num . "-";
$local_foto_serv = "produtos/" . $diferencia . $fotoB;
$foto_serv = $diferencia . $fotoB;
if (move_uploaded_file($tmp_foto, $local_foto_serv))
{

$sql = "insert into fotoitem ( itemid, fotoB, descfoto, id_login, por) VALUES('$itemid', '$foto_serv', '$descfoto', '$codigo', '$por')";

}
break; /* fim do caso $tabela = fotoitem */

Alguém pode me orientar?

 

Vamos lá, primeiro troque a linha:

 

 

<input name="fotoB" type="file" class="inputform" id="fotoB"/>

 

 

pela linha a baixo:

 

 

<input name="fotoB[]" type="file" class="inputform" id="fotoB" multiple="multiple"/>

 

Troque:

 

 

case fotoitem:

 

$fotoB = $_FILES['fotoB']['name'];

$tmp_foto = $_FILES['fotoB']['tmp_name'];

$num = rand(0, 9999999999);

$diferencia = $num . "-";

$local_foto_serv = "produtos/" . $diferencia . $fotoB;

$foto_serv = $diferencia . $fotoB;

if (move_uploaded_file($tmp_foto, $local_foto_serv)) {

$sql = "insert into fotoitem ( itemid, fotoB, descfoto, id_login, por) VALUES('$itemid', '$foto_serv', '$descfoto', '$codigo', '$por')"; }

 

break; /* fim do caso $tabela = fotoitem */

 

 

 

Por isso:

 

 

case fotoitem:

foreach($_FILES['fotoB'] as $file){ // modificação Rodrigo Peixoto

>$fotoB = $file['name']; // modificação Rodrigo Peixoto

$tmp_foto = $file['tmp_name']; // modificação Rodrigo Peixoto

$num = rand(0, 9999999999);

$diferencia = $num . "-";

$local_foto_serv = "produtos/" . $diferencia . $fotoB;

$foto_serv = $diferencia . $fotoB;

if (move_uploaded_file($tmp_foto, $local_foto_serv)) {

$sql = "insert into fotoitem ( itemid, fotoB, descfoto, id_login, por) VALUES('$itemid', '$foto_serv', '$descfoto', '$codigo', '$por')"; }

 

}// modificação Rodrigo Peixoto

 

break; /* fim do caso $tabela = fotoitem */

 

 

 

 

Testa aí e me dá um feedback, fiz sem testar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.