Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa noite a todos,
Estou com um problema ao subir arquivo por upload pelo PHP.
Ele sobe qualquer arquivo supostamente pequeno, acredito que até de 1 mega talvez, porém quando tento subir uma imagem razoavelmente grande, mais ou menos uns 4 megas ele sem nem pensar direito faz um refresh na página e não fala nada.
Fiz alguns testes que seguem abaixo:
Lembrando que este script de upload que esta no código peguei da internet e modifiquei ele.
Por favor se alguém puder me ajudar agradeço desde já.
SEGUE CÓDIGO DA PÁGINA ABAIXO:
<?php
session_start();
require("conexao/conexao.php");
require("funcoes/funcoes_busca.php");
?>
<?php
set_time_limit(0);
if($_POST){
$grava_login = $_SESSION['login_user'];
$grava_email = $_SESSION['email_u'];
$grava_id_usuario = $_SESSION['id_user'];
$grava_tipo_arte = $_POST['tipo_arte'];
$grava_nome_arte = $_POST['nome'];
$grava_autor_arte = $_POST['autor_arte'];
$grava_maq_foto = $_POST['maq_foto'];
$grava_data_criacao = $_POST['data_criacao'];
$grava_data_criacao = explode("/",$grava_data_criacao);
$grava_data_criacao = $grava_data_criacao[2]."-".$grava_data_criacao[1]."-".$grava_data_criacao[0];
$grava_desc_arte = $_POST['desc_arte'];
$grava_estado = $_POST['estado'];
//********************************************************************************
//********************************************************************************
if(is_file($_FILES['arquivo']['tmp_name'])){
$_UP['pasta'] = 'uploads/';// pasta de destino das fotos
$_UP['tamanho'] = 20971520;// conta de besta limite do tamanho da foto
$_UP['extensoes'] = array('jpg','jpeg','png','gif');// tipos de extensoes
$_UP['renomeia'] = true;// renomear arquivos true sim or false nao
$_UP['errors'][0] = 'Não tivemos erros.';//
$_UP['errors'][1] = 'Pasta de upload não encontrada.';
$_UP['errors'][2] = 'Tamanho da imagem maior que 20MB.';
$_UP['errors'][3] = 'Extenção Não permitida.';
$_UP['errors'][4] = 'Não foi feito upload de sua foto, foto com nome duplicado';
if($_FILES['arquivo']['error'] != 0){
die("Erro ao fazer upload, motivivo:" . $_UP['errors'][$_FILES['arquivo']['errors']]);
exit();
}
$extensao = strtolower($_FILES['arquivo']['name']);
$extensao = explode('.',$extensao);
$extensao = end($extensao);
$valida_extensao = array_search($extensao,$_UP['extensoes']);
if($valida_extensao === false ){
?>
<div id="alerta" style="line-height:60px;">
<script>alert('Formato de foto inválido.');</script>
</div>
<?php
}else if ($_UP['tamanho'] < $_FILES['arquivo']['size']){
?>
<div id="alerta" style="line-height:60px;">
<script>alert('Tamanho do arquivo ultrapassa 20 megas');location.href=('cad_arte.php')</script>
</div>
<?php
}else{
if($_UP['renomeia'] == true){
$nome_final = md5(time()).".".$extensao;
}else{
$nome_final = $_FILES['arquivo']['name'];
}
if(move_uploaded_file($_FILES['arquivo']['tmp_name'], $_UP['pasta'] . $nome_final)){
$sql_gravar = mysql_query ("INSERT INTO artes (id_estado, email_u, login_u, id_tipo_arte, nome_arte, arte, descricao_arte, autor_arte, criacao_arte, maquina_fotografada, id_usuario) value ('$grava_estado','$grava_email','$grava_login','$grava_tipo_arte','$grava_nome_arte','$nome_final','$grava_desc_arte','$grava_autor_arte','$grava_data_criacao','$grava_maq_foto','$grava_id_usuario')")or die(mysql_error());
if($sql_gravar){
echo "<script>alert('A imagem foi carregada com sucesso, obrigado!'); location.href=('cad_arte.php');</script>";
}else{
echo "<script>alert('Não foi possível carregar a imagem, por favor nos encaminhe uma mensagem!');location.href=('cad_arte.php');</script>";
}
}
}
}
}
?>
<!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">](http://www.w3.org/1999/xhtml)
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>BellaTattoo - A primeira revista feminina de tatuagem!</title>
<script language="javascript" src="efeitos/menu_drop_down_2/pro_dropdown_2/stuHover.js"></script>
<script src="jquery/jquery_novo.js" type="text/javascript"></script>
<script src="efeitos/slider_imagem/s3Slider.js" type="text/javascript"></script>
<script type="text/javascript" src="[http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"](http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js) ></script>
<script type="text/javascript" src="[http://ajax.googleapis.com/ajax/libs/jqueryui/1.5.3/jquery-ui.min.js"](http://ajax.googleapis.com/ajax/libs/jqueryui/1.5.3/jquery-ui.min.js) ></script>
<script type="text/javascript" src="efeitos/efeito_quadrado_img/coin-slider.min.js"></script>
<script src="SpryAssets/SpryValidationTextField.js" type="text/javascript"></script>
<script language="javascript">
var $j = jQuery.noConflict();
$j(document).ready(function(){
$j("#featured > ul").tabs({fx:{opacity: "toggle"}}).tabs("rotate", 5000, true);
});
</script>
<script language="JavaScript" type="text/javascript">
function mascaraData(campoData){
var data = campoData.value;
if (data.length == 2){
data = data + '/';
document.forms[0].data_criacao.value = data;
return true;
}
if (data.length == 5){
data = data + '/';
document.forms[0].data_criacao.value = data;
return true;
}
}
</script>
<script type="text/javascript">
var $a = jQuery.noConflict();
$a(document).ready(function() {
$a('#coin-slider').coinslider({ width:254, navigation: false, delay: 8000, sdelay: 2, height:336, spw:5, sph:5 });
});
</script>
<script src="[http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"](http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js) type="text/javascript"><!--mce:0--></script> <!-- Inclusão do Jquery Validate --><script src="[http://ajax.microsoft.com/ajax/jquery.validate/1.6/jquery.validate.js"](http://ajax.microsoft.com/ajax/jquery.validate/1.6/jquery.validate.js) type="text/javascript"><!--mce:1--></script>
<script language="JavaScript" src="jquery/jquery_novo.js" type="text/javascript"></script>
<script language="JavaScript" src="efeitos/validar_formulario/jquery.validate.js" type="text/javascript"></script>
<script>
$(document).ready( function() {
$("#cadastro_user").validate({
// Define as regras
rules:{nome:{
// campoNome será obrigatório (required) e terá tamanho mínimo (minLength)
required: true, minlength: 2,
},
tipo_arte:{
// campoNome será obrigatório (required) e terá tamanho mínimo (minLength)
required: true
},
autor_arte:{
// campoNome será obrigatório (required) e terá tamanho mínimo (minLength)
required: true, minlength: 2,
},
maq_foto:{
// campoNome será obrigatório (required) e terá tamanho mínimo (minLength)
required: true, minlength: 2,
},
estado:{
// campoNome será obrigatório (required) e terá tamanho mínimo (minLength)
required: true,
},
data_criacao:{
// campoNome será obrigatório (required) e terá tamanho mínimo (minLength)
required: true, date: true,
},
arquivo:{
// campoNome será obrigatório (required) e terá tamanho mínimo (minLength)
required: true,
},
desc_arte:{
// campoNome será obrigatório (required) e terá tamanho mínimo (minLength)
required: true, minlength: 2,
},
},
// Define as mensagens de erro para cada regra
messages:{
tipo_arte:{
required: "Selecione o tipo de arte"
},
arquivo:{
required: "Selecione o arquivo"
},
nome_arte:{
required: "Digite o seu nome",
minLength: "O nome deve conter, no mínimo, 2 caracteres"
},
autor_arte:{
required: "Digite o autor da arte",
remote: 'Este nome ja existe'
},
maq_foto:{
required: "Digite a maquina utilizada",
},
data_arte:{
required: "Digite a data de criação",
date: "Coloque uma data válida"
},
desc_arte:{
required: "Queremos saber sobre a arte",
descricao: "Por favor fale sobre a arte"
}
}
});
});
</script>
<link rel="stylesheet" href="efeitos/efeito_quadrado_img/coin-slider-styles.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="efeitos/carrossel2/style.css" />
<link rel="stylesheet" type="text/css" href="estilo.css" />
<link rel="stylesheet" type="text/css" href="efeitos/menu_drop_down_2/pro_dropdown_2/pro_dropdown_2.css"/>
<link href="SpryAssets/SpryValidationTextField.css" rel="stylesheet" type="text/css" />
</head>
<body>
<input type="hidden" name="MAX_SIZE_FILE" value="20971520" />
<span id="sprytextfield1">
<input type="text" name="text1" id="text1" />
<span class="textfieldRequiredMsg">A value is required.</span></span>
<!-- Abrir div abertura id geral -->
<div id="geral">
<!-- Abrir div topo id topo -->
<div id="topo"><div id="logo"><img src="imagens/logo2.png" /></div><div id="publicidade"><img src="imagens/gif-banner.gif" /></div></div>
<!-- Fechar div topo id topo -->
<!-- Abrir div topo id topo -->
<div id="menu">
<?php require("menu.php"); ?>
</div>
<!-- Fechar div topo id topo -->
<div id="meio" style="background-image:url(imagens/fundo_sobe_tattoo.png); background-repeat:no-repeat; background-position:top; background-position:right; background-color:#EAF3CC; ">
<!-- Abrir div topo id topo -->
<div id="esquerda" style="width:100%;">
<div id="titulo_cadastro"><img src="imagens/titulo_subir_tattoo.png" /></div>
<div id="cadastro">
<div id="formulario">
<form id="cadastro_user" name="form1" method="post" enctype="multipart/form-data" >
<table width="200" border="0" cellpadding="5" cellspacing="0">
<tr>
<td align="left" valign="top"><select name="tipo_arte" id="tipo_arte">
<option value="*">Tipo de arte</option>
<?php
tipos_arte();
?>
</select></td>
<td align="left"> </td>
</tr>
<tr>
<td align="left" valign="top">Nome da arte:<br />
<label for="nome"></label>
<input name="nome" type="text" id="nome" size="65" maxlength="60" /></td>
<td align="left">Autor da arte:<br />
<label for="autor_arte"></label>
<input name="autor_arte" type="text" id="autor_arte" size="20" maxlength="15" /></td>
</tr>
<tr>
<td align="left" valign="top"><p>
<label for="maq_foto"></label>
Maquina fotografada:<br />
<input name="maq_foto" type="text" id="maq_foto" size="25" maxlength="20" />
<br />
</p></td>
<td align="left">Estado:<br />
<label for="estado"></label>
<select name="estado" id="estado">
<option value="*">--Estado--</option>
<?php estados(); ?>
</select>
<br /></td>
</tr>
<tr>
<td colspan="2" align="left" valign="top" nowrap="nowrap">Data de criação:<br />
<label for="data_criacao"></label>
<input name="data_criacao" type="text" id="data_criacao" size="15" maxlength="10" onkeyup="mascaraData(this);" /></td>
</tr>
<tr>
<td colspan="2" align="left" valign="top" nowrap="nowrap"><label for="data_criacao"></label>
<label for="arquivo"></label>
<input name="arquivo" type="file" id="arquivo" size="50" /></td>
</tr>
<tr>
<td colspan="2" align="left" valign="top">Descrição da arte:<br />
<label for="desc_arte"></label>
<textarea name="desc_arte" id="desc_arte" cols="100" rows="10"></textarea></td>
</tr>
<tr>
<td align="left" valign="top"> </td>
<td align="left" nowrap="nowrap"><input type="reset" name="limpar" id="limpar" value="Limpar" />
<input type="submit" name="enviar" id="enviar" value="Enviar" /></td>
</tr>
</table>
</form>
</div>
<p> </p>
</div>
</div>
<!-- Fechar div topo id topo -->
<!-- Abrir div topo id topo --><!-- Fechar div topo id topo -->
<!-- Abrir div topo id topo --></div>
<!-- Fechar div topo id topo -->
</div>
</div>
<!-- Abrir div topo id topo -->
<div style="clear:both"></div>
<div id="compartilhar">
</div>
<!-- Fechar div topo id topo -->
<!-- Abrir div topo id topo -->
<div id="rodape">
<div id="titulo_compartilhar"><img src="imagens/titulo_compartilhar.png" /></div>
<div id="facebook">
<iframe src="[http://www.facebook.com/plugins/like.php?href=www.bellatattoo.art.br&layout=standard&show_faces=true&width=100%&action=like&font=arial&colorscheme=light&](http://www.facebook.com/plugins/like.php?href=www.bellatattoo.art.br&layout=standard&show_faces=true&width=100%25&action=like&font=arial&colorscheme=light&) scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:100%; height:80px; style="background-color:;border-color:#EB268F;" allowtransparency="true"></iframe>
</div><div id="twitter"> <a href="[http://twitter.com/share?url=http%3A%2F%2Fwww.bellatattoo.art.br&via=rbellatattoo"](http://twitter.com/share?url=http%3A%2F%2Fwww.bellatattoo.art.br&via=rbellatattoo) class="twitter-share-button" data-count="horizontal" data-via="Royizziizzi">Tweet</a><script type="text/javascript" src="[http://platform.twitter.com/widgets.js">](http://platform.twitter.com/widgets.js)
</div>
</div>
<!-- Fechar div topo id topo -->
<!-- Fechar div abertura id geral -->
<script type="text/javascript">
var sprytextfield1 = new Spry.Widget.ValidationTextField("sprytextfield1");
</script>
</body>
</html>Carregando comentários...