Postagem em destaque

Código Limpo: Nomes Significativos

Imagem
Às vezes fico com um assunto na cabeça por semanas, até achar uma situação ou um exemplo que esclareça a situação. Explico: estava querendo já a algum tempo escrever sobre boas práticas de programação, e pensei em iniciar por "Nomes Significativos", para seguir a nomenclatura utilizada pelo ótimo livro Código Limpo , de Robert C. Martin.  Entretanto, ficava sempre amarrado em exemplos que pareciam ser bons, mas que ainda eu não tinha visto a utilidade prática.  Antes de continuar preciso explicar que tenho um hábito de anotar num bloco de papel todas as ideias que surgem, pois elas desaparecem com a mesma velocidade que aparecem. Para isso tenho um bloco e caneta na mesa de cabeceira (além de um no banheiro), pois esses são os lugares onde tenho mais ideias... Vai entender... Semana passada, estava com um problema bem complicado e tive uma ideia: "vou criar uma variável para indicar que quando um arquivo tiver um certo tamanho deve gravar algumas informações no log. Pois

Upload com PHP+JQUERY em AJAX e na mesma página

Se você já perdeu horas procurando um código em PHP que funcionasse para fazer o upload de imagens mas que fizesse isso com AJAX e ainda por cima na mesma página, espero que esse post te ajude!

Crie uma pasta para armazenar as imagens que aqui chamo de upload. Copie e cole o código abaixo (testado com XAMPP localmente):

<?php
if(isset($_FILES['file']['name'])){
   /* Pega o nome do arquivo*/
   $filename = $_FILES['file']['name'];
   /* Local onde sera salvo o arquivo*/
   $location = "upload/".$filename;
   $imageFileType = pathinfo($location,PATHINFO_EXTENSION);
   $imageFileType = strtolower($imageFileType);
   /* Extensoes validas */
   $valid_extensions = array("jpg","jpeg","png");
   /* Checa a extensao do arquivo */
   if(in_array(strtolower($imageFileType), $valid_extensions)) {
      /* Faz o upload */
      move_uploaded_file($_FILES['file']['tmp_name'],$location);
   }
}
?>
<form id="data" method="post" enctype="multipart/form-data">
    <input type="text" name="nome" value="Maria" />    
    <input type="file" name="file" />
    <button>Enviar</button>
</form>
<script>
$("form#data").submit(function(e) {
    e.preventDefault();    
    var formData = new FormData(this);
    $.ajax({
        url: window.location.pathname,
        type: 'POST',
        data: formData,
        success: function(response){
    alert('Upload realizado!');
},
        cache: false,
        contentType: false,
        processData: false
    });
});
</script>

Comentários

Postagens mais visitadas deste blog

Netflix não mostra ícone de streaming

Google Hacking

FTP não funciona no PHP