Jump to content
Sign in to follow this  
Natanael Paiva

Ajuda com UPLOAD de arquivo PHP, JAVASCRIPT

Recommended Posts

Olá, tenho um FORM que quería aderir um input para UPLOAD de arquivo, já tentei da forma que colocarei debaixo mas nao consegui. Agradeco se podem me ajudar com isto.
Obrigado!
index.php(existem mais campos, vou subir os arquivos completos)

<form class="form-horizontal well" enctype="multipart/form-data" method="post">
				<div class="row">
					<div class="control-group">
						<label class="control-label" for="inputEmail"><span class="req">*</span>
							Email:</label>
						<div class="controls">
							<input name="email" type="text" id="email" />
						</div>
					</div>
				</div>
 
				<div class="row">
					<div class="control-group">
						<label class="control-label" for="inputEmail"><span class="req">*</span> Telefone:</label>
						<div class="controls">
							<input name="tel" type="text" id="tel" size="28"
								maxlength="50" />
						</div>
					</div>
				</div>
 
				<div class="row">
					<div class="control-group">
						<label class="control-label" for="inputEmail"><span class="req">*</span>Anexar arquivos:</label>
						<div class="controls">
								<input name="uploadedfile" id="uploadedfile" type="file" />
						</div>
					</div>
				</div>
 
				<div class="form-actions">
 
					<button type="button" onclick="sendFrmOrcamento();"
						class="custom-btn" id="enviar-botao">
						<div class="arrow-btn-icon pull-left"></div>
						Enviar
					</button>
				</div>
			</form>

Aqui scrip incluido no index

<script>
 
		$(".ui-corner-all").hover(function(){
			console.log("entrou");
		}, function(){
			console.log("saiu");
		});
 
		$('#cnl-btn').click(function(){
			if(confirm('Tem certeza que deseja desfazer o orçamento e voltar para a tela anterior?')) window.location = './'
		});
 
		$('#termo').change(function(){
			if(this.checked){
				$('#termo-compromisso span').removeClass('shown');
			}else{
				$('#termo-compromisso span').addClass('shown');
			}
		});
 
		function validaEmail(email){
			var str = email;
			var filtro = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
			return filtro.test(str) ;
		}
 
		/*$('#data').datepicker();*/
		var frm_send_orcamento = 0 ;
		function campos_validados_frm_orcamento () {
 
				var obj = new Object();
				obj.test = true;
				obj.msg = new Array();
 
				if ( $('#data').val().length <= 0 ) {
					obj.msg.push('Informe a data da mudança.');
					obj.test = false;
				}
 
				if ( $('#tel').val().length <= 0 ) {
					obj.msg.push('Informe o telefone.');
					obj.test = false;
				}
 
				if ( $('#est-origem').val().length <= 0 || $('#est-origem').val() == '--' ) {
					obj.msg.push('Selecione o estado de origem.');
					obj.test = false;
				}
 
				if ( $('#contato_mudanca_Torigem').val().length <= 0 || $('#contato_mudanca_Torigem').val() == '--' ) {
					obj.msg.push('Selecione o tipo de mudança origem.');
					obj.test = false;
				}
 
				if ( $('#cid-origem').val().length <= 0 || $('#cid-origem').val() == 'cidade' ) {
					obj.msg.push('Informe a cidade de origem.');
					obj.test = false;
				}
 
				if ( $('#est-destino').val().length <= 0 || $('#est-destino').val() == '--' ) {
					obj.msg.push('Selecione o estado de destino.');
					obj.test = false;
				}
 
				if ( $('#contato_mudanca_Tdestino').val().length <= 0 || $('#contato_mudanca_Tdestino').val() == '--' ) {
					obj.msg.push('Selecione o tipo de mudança destino.');
					obj.test = false;
				}
 
				if ( $('#cid-destino').val().length <= 0 || $('#cid-destino').val() == 'cidade' ) {
					obj.msg.push('Selecione a cidade de destino.');
					obj.test = false;
				}
 
 
				if ( $('#nome').val().length <= 0 ) {
					obj.msg.push('Preencha o campo nome.');
					obj.test = false;
				}
 
				if ( $('#email').val().length <= 0 || !validaEmail($('#email').val()) ) {
					obj.msg.push('Preencha o campo com um e-mail válido.');
					obj.test = false;
				}
 
				if(!$('#termo')[0].checked ){
					obj.msg.push('Para utilizar nossos serviços, você deve concordar com os Termos de Serviço do Mudanças Econômicas.');
					obj.test = false;
					$('#termo-compromisso span').addClass('shown');
				}
 
 
				/*
				if ( $('#info').val().length <= 0 || ($('#info').val()).toLowerCase() == 'informe aqui os itens a serem transportados'  ) {
					obj.msg.push('Informe aqui os itens a serem transportados');
					obj.test = false;
				} 
				*/
 
				return obj;
 
 
 
		}
 
		function sendFrmOrcamento(){
 
			if( frm_send_orcamento == 0){
 
				cv = new campos_validados_frm_orcamento();
 
				if ( cv.test == true ) {
 
					$('#enviar-botao')
					.addClass('disabled')
					.removeClass('btn-success')
					.text('Enviando formulário...');
 
						frm_send_orcamento = 1;
						$('#envia input').hide();
						$('#envia-aguarde').show();
						var btn = document.getElementById('uploadedfile')
						document.forms[0].append("uploadedfile", btn.files[0]);
						$.post( '../ajax/ajax_contato_send2.php' , $(document.forms[0]).serialize() , function(data){
 
							if(data){
								if(data.status == 0) {
									alert(data.msg);
								}else{
 
									$('#enviar-botao')
									.removeClass('disabled')
									.addClass('btn-success')
									.text('Enviar orçamento');
 
									window.location = 'ok.html' ;
								}
							}else{
								var msg = '';
								msg = 'Erro ao receber resposta do serviço de envio de dados, confira em seu e-mail ou entre em contato\n';
								msg += 'através do e-mail <?php echo $email_sistema; ?>';
								alert( msg );
							}
 
 
							$('#envia input').show();
							$('#envia-aguarde').hide();
 
							frm_send_orcamento = 0;
 
						},'json');
 
				}else{
					alert(cv.msg[0]);
				}
			}
		}
		function EmptyField(id)
		{
		        var Fid             = document.getElementById(id);
		        var TheDefaultValue = Fid.defaultValue;
		        var TheValue        = Fid.value;
		        if(TheDefaultValue == TheValue)
		        {
		                Fid.value = '';
		        }
		}
 
		//$('.form-horizontal select option:contains(SP)').attr('selected', true)
 
		</script>

ajax_contato_send2.php (somente coloco o codigo de upload, podem ver o codigo inteiro anexo)

if(isset($_FILES['uploadedfile']['name'])){
		if ($_FILES['uploadedfile']["error"] > 0){
			echo "Error: " . $_FILES['uploadedfile']['error'] . "<br>";
		}else{
			/*ahora co la funcion move_uploaded_file lo guardaremos en el destino que queramos*/
			$target_path = "uploads/";
			$target_path = $target_path . basename( $_FILES['uploadedfile']['name']);
			if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) {
			}
		}
	}

Testei por searado o código de upload y funciona corretamente,
Muito obrigado.

ARQUIVOS: https://my.pcloud.com/publink/show?code=XZO56bZR2wDmkOG4wYV7Mqa8Ofs4478qdh7

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Similar Content

    • By daviassumpcao
      Pessoal... estou iniciando estudos em JS e me deparei com um desafio: Preciso tratar um valor (string) para obter apenas número...  a primeira variável retorna NAN, as outras retornam corretamente. O que posso estar fazendo errado na variável "a" ... preciso que seja retornado "299,00" ... agradeço antecipadamente. 
       
      Segue código: 
       
      <p id="demo"></p> <script> var a = parseInt("R$ 299,00") + "<br>"; var b = parseInt("40 years") + "<br>"; var c = parseInt("10.00") + "<br>"; var n = a + b + c; document.getElementById("demo").innerHTML = n; </script>  
    • By violin101
      Caros amigos, saudações...
       
      Tenho uma rotina para mostrar ao usuário todos os produtos Relacionados com um determinado Produto.
       
      Exemplo:
      Caderno ---> relacionado com: lápis, borracha, caneta, apontador e etc.
       
      O problema que estou enfrentando é o seguinte:
      ==> o produto caderno se estiver relacionado com mais de 4 produtos não ocorre o erro.
       
      Quando mostro o relacionamento se o produto estiver relacionado com apenas 3 ou menos produto, o CAROUSEL fica repetindo o 1º ou 2º item.
       
      Como faço para isso não acontecer ?
       
      Abaixo posto como está o JavaScript.
      $(".produto_relaciona").owlCarousel({ loop: true, nav: true, items: 4, dots: false, navText: ["<i class='fa fa-angle-left'></i>", "<i class='fa fa-angle-right'></i>"], smartSpeed: 1200, autoplayTimeout: 5000, autoHeight: false, autoplay: true, responsive: { 0: { items: 1 }, 480: { items: 2 }, 768: { items: 3 }, 992: { items: 4 } } });  
       
      Grato,
       
      Cesar
    • By AlexandreHenrique
      Olá pessoal. preciso de uma ajuda com o meu projeto de upload.
      O projeto de upload roda no IIS + Php;
      Tenho um script que ta enviando  o arquivo para o diretório correto.
      O problema é que ao tentar acessar esse arquivo via URL, o anexo não abre  e exibe a mensagem abaixo.
       

      Notei que o arquivo au cair no DIR, ele entra sem permissões (vi em propriedades), se eu editar o mesmo alterando as permissões, ele carrega pela url do meu site.
      Quero que o arquivo enviado pelo script caia no DIR correta com as devidas permissões pra eu poder ler no navegador via URL;
       
      Já tentei resolver de toda forma mas nao tive sucesso;.
      No Apache isso é mais simples, mas no IIS ta complicado;
       
       
       
      Alguem pode me dá uma dica?
    • By anabeatrizzz
      2. Por que PHP é a mais utilizada em projetos? Explique.
       
      3. São 24 anos de desenvolvimento em PHP, o que faz ele durar tanto na área da programação? Explique.
       
      4. Você acredita que o PHP vai morrer ou não? Explique.
       
      5. Explique o que seria esta HHVM que as empresas utilizam.
       
      6. PHP tem a facilidade de criar APIs, quais seriam as vantagens na hora de desenvolver aplicativos para celular? Explique.
       
      7. Explique um pouco sobre o Laravel, Zend Framework, Sympony, lumen, codelgniter que foram surgindo ao decorrer dos anos.
       
      8. “O PHP veio da WEB e da WEB ele permanecerá”. O que essa frase significaria para você? Explique.
       
      9. Como funcionariam as comunidades em PHP? Por que existem tantas pessoas ainda usando a linguagem? Explique.
       
      10. O PHP vem se modernizando durante anos, quais seriam estas evoluções dele? Explique.
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.