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

Upload Multiplo


Mauro Garcia

Pergunta

Salve galera, estou com dificuldades em aprimorar um sistema de upload de imagens tenho esse script que envia fotos, mais somente uma de cada vez, gostaria que fosse possivel enviar 5 ao mesmo tempo, o que eu deveria mudar alkém de deixar os campos como array? Vou postar o código abaixo:

<?php

include_once("../includes/editar.inc.php");
include_once("../includes/conexao.inc.php");
include_once("../includes/bd_forms.class.php");
include("../fckeditor/fckeditor.php");

$ed_secao = "Incluir foto";
$ed_aviso_01 = "Foto adicionada com sucesso!";
$ed_aviso_02 = "Houve um erro na inclus&atilde;o da foto, tente novamente.";
$ed_pasta = "editar_fotos";

if (@$_POST['enviar'] != "")
{
    
    $bdform = new BD_Forms($conexao, $ed_pasta, $_POST);

    // arquivo enviado por upload
    $datareg = strftime("%d%m%Y", time()) . strftime("%H%M", time());
    $nomeArquivoAtual = $_FILES['arq']['name'];
    $ext = substr($nomeArquivoAtual, strlen($nomeArquivoAtual)-3, 3);
    $hashArquivo = md5($nomeArquivoAtual . $datareg);
    $novoNomeArquivo = $hashArquivo . "." . $ext;
    $nomeArquivo = $novoNomeArquivo;
    if (!empty($nomeArquivoAtual))
        $bdform->addField("arquivo", $nomeArquivo);
    
        
    if ($bdform->inserir_dados()) {
    
        //faz upload do arquivo        
        move_uploaded_file($_FILES['arq']['tmp_name'], $_SERVER['DOCUMENT_ROOT'] . "/editar/arquivos/$ed_pasta/" . $nomeArquivo);
        //Registra se��o
        $registrar = "insert into editar_registros (descricao, data, usuario) values ('$ed_secao ". $bdform->id ."', '". $regdatahora
 ."', '". $regusuario ."')";
        mysql_query($registrar, $conexao);
        
        session_start();
        
        $_SESSION['msg'] = "<table width='100%' border='0' cellspacing='0' cellpadding='2' class='menu'><tr><td><p><b><strong>$ed_aviso_01</strong></b></td></tr></table>";
        header("location:../".$_GET['tipo']."/editar.php?id=".$_GET['ref']."");
        exit();
    }  else {
        $_SESSION['msg'] = "<table width='100%' border='0' cellspacing='0' cellpadding='2' class='menu'><tr><td><p><b><strong>$ed_aviso_02</strong></b></td></tr></table>";
        header("location:../".$_GET['tipo']."/editar.php?id=".$_GET['ref']."");
        exit();
     } 
}
if (@$_POST['outro'] != "")
{
    $bdform = new BD_Forms($conexao, $ed_pasta, $_POST);

    // arquivo enviado por upload
    $datareg = strftime("%d%m%Y", time()) . strftime("%H%M", time());
    $nomeArquivoAtual = $_FILES['arq']['name'];
    $ext = substr($nomeArquivoAtual, strlen($nomeArquivoAtual)-3, 3);
    $hashArquivo = md5($nomeArquivoAtual . $datareg);
    $novoNomeArquivo = $hashArquivo . "." . $ext;
    $nomeArquivo = $novoNomeArquivo;
    if (!empty($nomeArquivoAtual))
        $bdform->addField("arquivo", $nomeArquivo);
    
        
    if ($bdform->inserir_dados()) {
    
        //faz upload do arquivo        
        move_uploaded_file($_FILES['arq']['tmp_name'], $_SERVER['DOCUMENT_ROOT'] . "/editar/arquivos/$ed_pasta/" . $nomeArquivo);
        //Registra se��o
        $registrar = "insert into editar_registros (descricao, data, usuario) values ('$ed_secao ". $bdform->id ."', '". $regdatahora
 ."', '". $regusuario ."')";
        mysql_query($registrar, $conexao);
        
        session_start();
        
        $_SESSION['msg'] = "<table width='100%' border='0' cellspacing='0' cellpadding='2' class='menu'><tr><td><p><b><strong>$ed_aviso_01</strong></b></td></tr></table>";
    }  else {
        $_SESSION['msg'] = "<table width='100%' border='0' cellspacing='0' cellpadding='2' class='menu'><tr><td><p><b><strong>$ed_aviso_02</strong></b></td></tr></table>";
     } 
}

session_start();

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7"/>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title><?=$ed_site;?> | Editar | <?=$ed_secao;?></title>
<meta
        name="author"
        content="<?=$ed_author;?>">
    <meta
        name="copyright"
        content="<?=$ed_copyright;?>">
    <meta
        name="description"
        content="<?=$ed_description;?>">
    <meta
        name="keywords"
        content="<?=$ed_keywords;?>">
    <meta
        http-equiv="expires"
        content="0">
    <meta
        http-equiv="pragma"
        content="no-cache">
<link href="../css/editar.php" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="../js/prototype.js"></script>
<script>
    function validar() {
    
        if (document.forms[0]['legenda'].value.empty()) {
            alert("Título de preenchimento obrigatório.");
            document.forms[0]['legenda'].focus();
            return false;
        }
        if (document.forms[0]['arq'].value.empty()) {
            alert("Você deve incluir um arquivo.");
            document.forms[0]['arq'].focus();
            return false;
        }
        var extensoesOk = ",.gif,.jpg,.png,.JPG,.zip,.rar,.pdf,.cdr,.psd,";
        var extensao    = "," + formulario.arq.value.substr( formulario.arq.value.length - 4 ).toLowerCase() + ",";  if( extensoesOk.indexOf( extensao ) == -1 ){      alert( "Esse tipo de arquivo não é permitido. Contate o administrador." );document.forms[0]['arq'].focus();      
        return false;    }  
        return true;
    }
    
        
    // Adiciona novo input de arquivo
    var contador = 3;
    function adicionarInputFoto() {

        var lt = '<p id=\"foto#{contador}\"><input type=\"file\" id=\"inputFoto#{contador}\" name=\"foto#{contador}\" style=\"width:350px\" class=\"faleconosco\" /><!--<span class=\"comando-pequeno\"> [ <strong><a href=\"java script:removerInputFoto(#{contador}\);\">remover</a></strong> ]</span> --></p>\n';    

        contador++;
        var valores = {contador:contador};
        
        var templateLinha = new Template(lt);
        
        new Insertion.Bottom('fotos', templateLinha.evaluate(valores));

    }
    
    </script>
</head>
<body>
<table width="778" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td height="30" colspan="3" bgcolor="#FFFFFF">&nbsp;</td>
  </tr>
  <tr>
    <td height="25" colspan="3" bgcolor="#FFFFFF">&nbsp;</td>
  </tr>
  <tr>
    <td width="25" bgcolor="#FFFFFF">&nbsp;</td>
    <td valign="top" bgcolor="#FFFFFF"><p class="titulo">Editar || <?=$ed_site;?></p>
      <table width="100%" border="0" cellspacing="0" cellpadding="0">
        <tr>
          <td height="3" bgcolor="<?=$ed_cor_clara;?>"><img src="../img/spacer.gif" width="2" height="2" /></td>
        </tr>
      </table>      <p class="titulo"><?=$ed_secao;?></p>
      <?php if (!empty($_SESSION['msg'])) {?>
      <?php 
                    echo @$_SESSION['msg'];
                    @$_SESSION['msg'] = '';
                ?>
        <?php }?>
      
      <form action="<?php echo $_SERVER['PHP_SELF'];?>?ref=<?=$_GET['ref'];?>&amp;tipo=<?=$_GET['tipo'];?>" method="post" enctype="multipart/form-data" name="formulario" id="formulario" onsubmit="return validar();">
        <table width="490" border="0" cellpadding="0" cellspacing="0" class="conteudo">
          <tr>
            <td>Legenda:</td>
          </tr>
          <tr>
            <td><input name="legenda" type="text" class="faleconosco" id="legenda" style="width:490px" /></td>
          </tr>
          <tr>
            <td>Imagem:</td>
          </tr>
          <tr>
            <td><input name="arq" type="file" class="faleconosco" style="width:490px"/></td>
          </tr>
          
          <tr>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td class="editar_legenda">( ! ) O tamanho da imagem determina o tempo de carregamento da p&aacute;gina. D&ecirc; prefer&ecirc;ncia por fotos no formato 640x480 pixels (Horizontais) e 480x640 pixels (verticais) ou VGA.</td>
          </tr>
          <tr>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td><input name="enviar" type="submit" class="faleconosco" id="enviar" value="Incluir" />
              <input name="outro" type="submit" class="faleconosco" id="outro" value="Incluir outra" />
              &nbsp; 
              <button type="button" class="faleconosco" onclick="document.location.href='../<?=$_GET['tipo'];?>/editar.php?id=<?=$_GET['ref'];?>';">cancelar</button>
            <span class="comandos">
            <input type="hidden" name="referencia" id="referencia" value="<?php echo $_GET['ref'];?>" />
            <input type="hidden" name="tipo" id="tipo" value="<?php echo $_GET['tipo'];?>" />
            </span></td>
          </tr>
        </table>
      </form>      
    <p class="titulo">&nbsp;</p></td>
    <td width="260" align="right" valign="top" bgcolor="#FFFFFF"><table width="250" border="0" cellpadding="25" cellspacing="0" class="menu">
      <tr>
        <td><?php include "../includes/menu.inc.php";?></td>
      </tr>
    </table></td>
  </tr>
  <tr>
    <td colspan="3" bgcolor="#FFFFFF">&nbsp;</td>
  </tr>
  <tr>
    <td colspan="3" bgcolor="#FFFFFF">&nbsp;</td>
  </tr>
  <tr>
    <td height="25" colspan="3">&nbsp;</td>
  </tr>
  <tr>
    <td colspan="3" align="center"><?php include "../includes/rodape.inc.php";?></td>
  </tr>
</table>
<iframe width="130" height="140" name="gToday:normal:agenda.js" id="gToday:normal:agenda.js" src="/editar/js/datePicker/ipopeng.htm" scrolling="no" frameborder="0" style="visibility:visible; z-index:999; position:absolute; top:-500px; left:-500px;"></iframe>
</body>
</html>

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Valeu...já havia visto esse script, mais o meu já está pronto, esta gravando a imagem na pasta e gravbando os dados no banco bem completo mesmo, mais não estou conseguindo apenas fazer a array para enviar mais de um arquivo nunca mexi com isso então não sei ao certo como funciona, esse em jquery já muda completamente para implementar.

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,2k
    • Posts
      652k
×
×
  • Criar Novo...