Ir para conteúdo
Fórum Script Brasil
  • 0

upload múltiplo só salva 1 id de identificação


gersonab

Pergunta

utilizando alguns plugins jquery que encontrei consigo fazer o upload tranquilamente de forma mais apresentável, no entanto estou com um problema , só gravo o id na primeira imagem, as demais não. tipo:

o que preciso:

id  - arquivo - fotoprof
1 - arquivo1 - 15
2 - arquivo2 - 15
3 - arquivo3 - 15

o que esta acontecendo :

id  - arquivo - fotoprof
1 - arquivo1 - 15
2 - arquivo2 - 
3 - arquivo3 - 

meu formulário vem de uma janela modal com o nome e o id do item
 

<div class="modal fade" id="arqmodal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"  aria-hidden="true">
  <div class="modal-dialog" role="document">
    <form method="POST" action="../lista/insarquivo.php" enctype="multipart/form-data">
      <div class="modal-content">
        <div class="modal-header">
          <h5 class="modal-title" id="exampleModalLabel">Cadastrar arquivos</h5>
        </div>
        <div class="modal-body">
          <div class="form-group mb-4">
            <label for="inputAddress">Nome</label>
            <input type="text" class="form-control" name="nomec"  id="nomec" >
          </div>
          <div class="custom-file-container" data-upload-id="mySecondImage">
            <label>Arquivos <a href="javascript:void(0)" class="custom-file-container__image-clear" title="Clear Image">x</a></label>
            <label class="custom-file-container__custom-file" >
              <input type="file" class="custom-file-container__custom-file__custom-file-input" name="foto[]" multiple>
              <input type="hidden" name="MAX_FILE_SIZE" value="104857600" />
              <span class="custom-file-container__custom-file__custom-file-control"></span>

            </label>
            <div class="custom-file-container__image-preview"></div>
          </div>
          <br>
        </div>
        <input name="fotoprof[]" type="hidden" id="idc">
        <div class="modal-footer">
          <button class="btn" data-dismiss="modal">Cancelar</button>
          <button type="submit" class="btn btn-primary">Cadastrar</button>
        </div>
      </div>
    </form>
  </div>
</div>

tentei este em php, faz o upload normal, porém só grava um id como explicado acima.
 

$diretorio = "../files/";
$arquivo = isset($_FILES['foto']) ? $_FILES['foto'] : FALSE;
for ($controle = 0; $controle < count($arquivo['name']); $controle++){

	$destino = $diretorio."/".$arquivo['name'][$controle];
	move_uploaded_file($arquivo['tmp_name'][$controle], $destino);
}
$sql= "INSERT INTO fotos ( foto, fotoprof ) VALUES ( :foto, :fotoprof )"; 
$stmt = $pdo->prepare($sql);
  foreach($_FILES['foto']['name'] as $indice => $name) {
  $foto=$_FILES['foto']['name'][$indice];
  $fotoprof=$_POST['fotoprof'][$indice];
  $stmt->bindParam(':foto', $foto);
  $stmt->bindParam(':fotoprof', $fotoprof);

  if ($stmt->execute()){

  } else {
  print_r($stmt->errorInfo());
  }
  }

este abaixo ficou na mesma do anterior
 

$diretorio = "../files/";
$arquivo = isset($_FILES['foto']) ? $_FILES['foto'] : FALSE;
for ($controle = 0; $controle < count($arquivo['name']); $controle++){

	$destino = $diretorio."/".$arquivo['name'][$controle];
	move_uploaded_file($arquivo['tmp_name'][$controle], $destino);
	$sql=$pdo->prepare("INSERT INTO fotos ( foto, fotoprof ) VALUES ( :foto, :fotoprof )"); 
		$sql->bindValue(':foto',$arquivo['name'][$controle]);
		$sql->bindValue(':fotoprof',$_POST['fotoprof'][$controle]);
		if ($sql->execute()){
					
			} else {
				print_r($sql->errorInfo());
			}
}

no meu formulário eu envio multiplos arquivos no mesmo input, porém envio apenas um id de identificação (fotoprof), não estou conseguindo fazer este id repetir no cadastro, espero que tenham entendido minha questão, desde já agradeço.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0
<form method=post enctype="multipart/form-data">
<input type=file name="foto[]" multiple><p>
<input type=submit>
</form>
<?php
if(!isset($_FILES['foto'])){exit;}
$arquivos=$_FILES['foto'];
$names=$arquivos['name'];
$tmp_names=$arquivos['tmp_name'];
foreach($arquivos as $key=>$arquivo){
  foreach($arquivo as $subkey=>$value){
  $name=$names[$subkey];
  $tmp=$tmp_names[$subkey];
  move_uploaded_file($tmp,"c:/wamp64/www/astudy/$name");}}
 

 

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...