TagPHP

Chat simples utilizando Websocket, Vue.JS e PHP

O Websocket  é um protocolo que nos permite abrir uma comunicação bidirecional com o servidor utilizando um único soquete TCP (Transmission Control Protocol) através do navegador. Sendo assim, tanto o cliente quanto o servidor podem enviar informações entre si a qualquer momento. Neste artigo, veremos como implementar um simples aplicativo de chat utilizando este protocolo.

No lado cliente utilizaremos o Vue.JS para facilitar a construção da interface do chat, além de manter um código mais organizado.

No lado servidor utilizaremos o Ratchet que é uma biblioteca PHP que nos permite construir um servidor de Websocket de um jeito descomplicado.

Confira o exemplo em funcionamento, clicando aqui.

Menu dinâmico com submenus infinitos utilizando AngularJS e PHP

Neste artigo veremos uma maneira de construir um menu dinâmico, ou seja, no cadastro do menu será definido o menu superior e através de um método recursivo construiremos o menu completo hierarquicamente, permitindo um número “infinito” de submenus.

No lado servidor iremos utilizar PHP para buscar os menus no banco de dados e organizá-los em um vetor de forma hierárquica.

No lado cliente iremos utilizar AngularJS para construir o menu visualmente com base nos dados retornados pelo servidor.

Imagem 1 – Resultado final

Consulta dinâmica com paginação utilizando AngularJS e PHP

Neste artigo pretendo mostrar como fazer uma consulta de registros completamente dinâmica, ou seja, sem a necessidade de recarregar a página para filtrar ou paginar os registros. Utilizaremos como exemplo uma simples consulta de clientes onde o usuário poderá filtrá-los e navegar entre as páginas.

No lado cliente iremos utilizar o AngularJS para facilitar a comunicação com o servidor, além de manter um código mais organizado e reutilizável. Atualmente já temos o Angular 2, porém ainda gosto da simplicidade do AngularJS e acredito que se encaixa melhor no propósito deste artigo.

No lado servidor iremos apenas utilizar uma biblioteca de Query Builder para montarmos nossa query de consulta com o banco de dados. Hoje em dia é muito comum a utilização de um Query Builder em frameworks e no nosso caso vai facilitar muito a paginação dos registros.

Confira o exemplo em funcionamento, clicando aqui.

Backup do banco de dados MySQL com PHP

Hoje em dia temos diversas ferramentas para gerar backup de um banco de dados MySQL. Podemos gerar manualmente através do phpMyAdmin ou então por linha de comando utilizando o mysqldump, por exemplo.

Se o seu projeto estiver hospedado em uma hospedagem compartilhada, você provavelmente não tem acesso a linha de comando, e suas opções para automatizar o processo de backup ficam limitadas.

Neste artigo vou apresentar uma forma de fazer o backup com PHP, utilizando uma biblioteca que gera o backup completo do banco de dados sem precisar de nenhuma dependência. Além disso vamos implementar um método para apagar os backups antigos, mantendo apenas uma quantidade X de backups.

Backup na nuvem com Dropbox e PHP

Vamos supor que você tenha um sistema que armazene documentos dos usuários em uma pasta no seu servidor, porém para manter uma estrutura mais organizada, você separa os documentos em sub-pastas de acordo com o ano. Normalmente você se preocupa em fazer backup do banco de dados, porém e os arquivos desta pasta?

É indiscutível que em qualquer sistema online que armazene arquivos no servidor possua uma estrutura de backup. Uma opção interessante é manter uma cópia desses arquivos em algum serviço de armazenamento na nuvem. Hoje em dia temos diversos serviços desse tipo, porém falaremos especificamente do Dropbox neste artigo.

Veremos neste artigo como copiar uma pasta que está no servidor para uma pasta no Dropbox de forma recursiva, ou seja, copiando todos os arquivos da pasta e de suas sub-pastas.

Uma breve introdução ao Composer

Vamos supor que você está trabalhando em um projeto PHP e em algum momento você precisa de uma biblioteca para manipulação de strings. Para não reinventar a roda, você decide procurar alguma biblioteca pronta na internet. Você acha uma biblioteca X com os recursos que você precisa e então baixa ela para utilizar em seu projeto. Porém, ao rodar o projeto, descobre que a biblioteca X dependente da biblioteca Y. Sem escolha, você baixa a biblioteca Y e então descobre que ela depende da biblioteca Z; e assim por diante.

É neste inferno de dependências que entra o Composer para nos ajudar. O Composer é uma ferramenta para gerenciar dependências em um projeto PHP. Basta você definir quais bibliotecas que o seu projeto dependente e o Composer vai fazer o trabalho de baixar e atualizar elas e suas dependências.

Redimensionar imagem antes de enviar com Javascript

Normalmente, quando fazemos o upload de uma imagem nós precisamos redimensiona-lá para reduzir seu tamanho. Esse processo normalmente é feito do lado servidor, ou seja, enviamos a imagem na sua forma e tamanho original e então redimensionamos no servidor utilizando PHP, por exemplo.

Porém, em um aplicativo de galeria de fotos, por exemplo, o usuário normalmente baixa as fotos (em alta resolução) de sua câmera e quer em seguida enviar para o aplicativo. Supondo que ele deseja enviar 200 fotos, cada uma com 5 MB, seria necessário fazer o upload de 1 GB de dados para o servidor, para que então possamos reduzi-las em um tamanho viável.

Sendo assim, pretendo apresentar nesse artigo uma solução para este problema. Vamos ver como redimensionar a imagem antes de enviar ao servidor, utilizando Javascript. Para isso faremos um formulário para envio de várias imagens que serão salvas em uma pasta no servidor.

Confira o exemplo em funcionamento, clicando aqui.

Atualizar DIV de segundos em segundos com PHP/JQuery/AJAX

Nesse artigo veremos como atualizar uma <div> de segundos em segundos, ou seja, a cada N segundos iremos colocar um valor em uma <div>. Iremos utilizar como exemplo uma página que exibe frases sortidas, que estão em um banco de dados, a cada 10 segundos.

Confira o exemplo em funcionamento, clicando aqui.

Salvar imagem no banco de dados com PHP/MySQL

Quando precisamos fazer o upload de uma imagem, geralmente temos duas opções:

  • 1 – Copiar a imagem em uma pasta no servidor e salvar apenas o caminho no banco de dados, como é feito nesse artigo.
  • 2 – Converter a imagem para binário e salvá-la diretamente no banco de dados.

O primeiro método é o mais comum, pois é mais fácil de ser implementado, além de ter melhor desempenho. Porém, em alguns casos torna-se necessário salvar a imagem diretamente no banco de dados, e assim recorremos ao segundo método. A desvantagem é que é um pouco mais trabalhoso de ser implementado e o desempenho é menor se comparado ao primeiro método, pois será necessário converter a imagem de binário para seu formato original toda vez que for necessário mostrá-la ao usuário.

Nesse artigo veremos como implementar o segundo método. Criaremos um cadastro de fotos sem contexto, apenas para demostrar a ideia, vamos nessa?

Confira o exemplo em funcionamento, clicando aqui.

Upload dinâmico com PHP/jQuery

Olá pessoal, tudo certo? Várias pessoas me perguntam como fazer upload de arquivos com ajax e hoje pretendo apresentar uma solução para isso. Na verdade, não se trata de um upload com ajax, mas sim um upload dinâmico, porém para um usuário comum isso é indiferente.

A solução é simples e conhecida: fazer um iframe contendo um campo do tipo file, fazemos o envio desse arquivo dentro do iframe e então com a ajuda do jQuery recuperamos as informações desse arquivo e trazemos para a página pai. Nesse artigo irei utilizar anexo de arquivos como exemplo.

Confira o resultado final

Carregamento dinâmico de registros com PHP/JQuery/AJAX

Olá pessoal, tudo certo? O artigo de hoje foi baseado em uma sugestão que achei interessante. Trata-se de um carregamento dinâmico de registros, assim como no twitter que, em nossa home, quando clicado em “more” ele nos traz mais tweets. Outro exemplo é o formspring.me que quando clicado em “more” ele nos traz mais perguntas. No nosso caso, iremos utilizar frases como exemplo.

Confira o resultado final, clicando aqui.

Sistema de votação simples com PHP/JQuery/AJAX

Olá pessoal, hoje vamos montar um sistema de votação bem simples. Irei utilizar como exemplo uma página com algumas frases e o usuário poderá escolher o que ele achou da frase: bom ou ruim. Tudo isso sem refresh na página, claro. Vamos lá?

Veja o resultado final aqui

[Video Aula 2] Listando, Editando, Removendo registros com PHP

Fala pessoal. Depois de muito tempo consegui fazer a segunda parte da Primeira vídeo aula, onde aprenderemos: listar, editar e remover os clientes cadastrados anteriormente. Caso você ainda não tenha assistido a primeira vídeo aula, peço que você dê uma olhada para não ficar perdido.

O som não ficou lá essas coisas, mas espero que vocês gostem.
Abraços.

Download dos arquivos

Restringindo páginas de forma simples com PHP

Olá pessoal, tudo bom? Nesse artigo pretendo apresentar uma forma simples de restringir uma página com um nome de usuário e senha. Na verdade é uma forma muito simples mesmo; é recomendada para sistemas pequenos, onde necessita restringir algumas páginas para algum adminitrador.

Atualizar DIV de segundos em segundos com PHP/XAJAX

Olá pessoal. Farei esse artigo a pedido de uma sugestão e também por ser um assunto bem interessante e interativo. Veremos como atualizar um div de segundos em segundos, ou seja, a cada N segundos iremos colocar um valor em uma DIV. Bom, vamos lá.

Clique aqui para ver o projeto pronto

© 2017 Rafael Couto

Tema por Anders NorénSubir ↑