Ir para conteúdo

Arquivado

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

johnhey

Upload de múltiplas imagens

Recommended Posts

Boa noite, fiz um upload de múltiplas imagens que no computador ou aparelhos com iOS funcionam na perfeição, já nos aparelhos com o sistema Android não funciona, apenas consigo selecionar uma imagem por vez. Porque?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Segue o código, esta a funcionar perfeitamente, mas não funciona em tablet android ou celular:

<?php
error_reporting(E_ALL);
?>
<html lang="pt-br" debug="true" style="height: 100%;"><!-- InstanceBegin template="/Templates/template.dwt" codeOutsideHTMLIsLocked="false" -->
<head>
<meta name='description' content='Reborn em Portugal' />
<meta name='keywords' content='boneca reborn, reborn portugal, doll, baby, reborn baby reborn baby doll' />
<meta property='og:site_name' content='Reborn Imaginações de Bebés' />
<meta property='og:title' content='Bebés Reborn Portugal' />
<link rel="shortcut icon" href="/favicon.ico">
<link href="css/estilo.css" rel ="stylesheet">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Reborn Imaginações de Bebés - Bebés Reborn Portugal</title>
<div id="topo">
<div id="sign">
            <a class="wood"></a>
         </div>

		<section id="cabecalho"> 
       		<header>
				<h5>"...Os bebés Reborn são mágicos, conseguem-nos transportar para um mundo imaginário e ao mesmo tempo real para todos nós, o tempo em que fomos bebés..."</h5>
			</header>
		</section>
</div>
</head>
<body>
<div id="pagina">
<div id="conteudo"><!-- InstanceBeginEditable name="EditRegion1" -->
<div class="fotos_expo">
<div id= "album">
<button type="submit" class="btn btn-default" name="enviar" value="enviar" onclick="javascript: location.href='menu_album.php';">Menu Principal</button>
                  <p> </p>
                  <form action="" method="post" enctype="multipart/form-data">
                     <table>
                        <tr>
                           <td>
                              Selecione o Album para importação:
                           </td>
                           <td>
                              <?php
                              //Conexão com o Banco de Dados
                              if (!$conexao) {
                                 die('Não foi possí­vel conectar: ' . mysql_error()); //Exibe o erro por não conectar
                              }

                              //Seleciona o BD
                              $db_selected = mysql_select_db('bd_reborn', $conexao) or die(mysql_error());


                              //Le o banco de Dados
                              $executa = "SHOW TABLES";

                              //Executa a query que irá mostrar as tabelas
                              $resultado = mysql_query($executa, $conexao) or die(mysql_error());
                              ?>
                              <select name="datatable">
                                 <?php
                                 //execulta o loop
                                 while ($dados = mysql_fetch_array($resultado)) {
                                    $nome_tabela = $dados[0];
                                    ?>
                                    <!--cria a listagem -->
                                    <option value ="<?php echo $nome_tabela; ?>"><?php echo $nome_tabela; ?></option>
                                    <?php
                                 }
                                 ?>
                              </select>
                           </td>
                           <td>
                           </td>
                        </tr>
                        <tr>
                           <td colspan="3">
                              Descrição do Album:
                           </td>
                        </tr>
                     </table>
                     <center><img src="imagens/miniatura/barra_separador.png" alt="Barra Separar" title="Barra de separação"></center>
                     <div id="desc_album">

                     </div>
                     <center><img src="imagens/miniatura/barra_separador.png" alt="Barra Separar" title="Barra de separação"></center>
                     <table>
                        <tr>
                           <td>
                              <input type="file" name="fotos[]" multiple>
                           </td>
                           <td>
                              <input type="submit" name="upload" value="Importar">
                           </td>
                           <td>
                           </td>
                        </tr>
                     </table>
                  </form>
                  <div class="carregar_foto">
                              <?php
                                 if (isset($_POST['upload'])) {

                                    $nome_tab = $_POST['datatable'];
                                    //contador	
                                    $contador = 1;

                                    //seleciona a pasta
                                    $diretorio = 'imagens/originais/bebes/'.$nome_tab.'/';

                                    $direciona = opendir($diretorio);

                                    //conta os arquivos
                                    while ($numeroitens = readdir($direciona)) {
                                       if (!(is_dir($numeroitens))) {
                                          $contador++;
                                       }
                                    }

                                    //Informações das imagens
                                    $file = $_FILES['fotos'];
                                    $numfotos = count(array_filter($file['name']));

                                    //Requisitos
                                    $permite = array('image/jpeg', 'image/png');
                                    $maxSize = 1024 * 1024 * 5;

                                    //Mensagem
                                    $msg = array();
                                    $erro = array(
                                        1 => 'O arquivo no upload é mairo do que o limite permitido em upload máximo',
                                        2 => 'O arquivo ultrapassa o limite de tamanho máximo por imagem',
                                        3 => 'O upload do arquivo foi feito parcialmente',
                                        4 => 'Não foi feito o upload do arquivo'
                                    );

                                    if ($numfotos) {
                                       foreach ($file['name'] as $k => $name) {
                                          // separar a extensão do nome do arquivo
                                          $n = explode('.', $name);
                                          $ext = '.' . array_pop($n);
                                          // gerar um nome com a numeração no final, antes da extensão
                                          $filename = "foto".sprintf('%02s', $contador) . $ext;
                                          // incrementa o contador
                                          $contador++;
                                          // checar se há alguma falha no arquivo
                                          if ($file['error'][$k]) {
                                             $msg[] = "<b> $name: </b>" . $errorMsg[$error];
                                             // checar se o tamanho é permitido
                                          } elseif ($file['size'][$k] > $maxSize) {
                                             $msg[] = "<b> $name:</b> Erro imagem ultrapassa o limite de 5 MB";
                                             // checar se o tipo de arquivo é permitido
                                          } elseif (in_array($file['type'][$k], $permite)) {
                                             // checar se o arquivo foi movido
                                             if (move_uploaded_file($file['tmp_name'][$k], $diretorio . "/" . $filename)) {
                                                // montar a query para inserção
                                                $query = "INSERT INTO $nome_tab values('','$filename',1)";
                                                // checar se a query é executada sem falhas
                                                if (mysql_query($query)) {
                                                   $msg[] = "<b>$filename :</b> Upload Realizado com Sucesso!";
                                                } else {
                                                   // exibe falha na tela
                                                   die(mysql_error() . '<br>' . $query);
                                                }
                                             }
                                          }
                                       }
                                    } else {
                                       echo 'Selecione uma ou mais imagens!';
                                    }
                                    foreach ($msg as $pop) {
                                       echo $pop . '<br>';
                                    }
                                 }
                                 ?>
                               
                  </div>
               </div>
        <!-- InstanceEndEditable -->
</div>
</div>
<footer id="rodapepg">
<div id="supercount">
	<div id="rp_contador">
		<script type="text/javascript" src="http://widget.supercounters.com/flag.js"></script><script type="text/javascript">sc_flag(596069,"FFFFFF","000000","cccccc",5,10,0,0)</script><br><noscript><a href="http://www.supercounters.com/">Contador de visitas</a></noscript>
    </div>
</div>
<div id="direitos_autor">
© - Todos os direitos de autor reservados a webdesign
</div>
</footer>
</div>
</body><!-- InstanceEnd -->

 

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.