segunda-feira, 26 de outubro de 2015

MySQL Slugify

O CÓDIGO:

UPDATE `noticias_noticia`   SET slug = lower(titulo),
slug = replace(slug, '.', ' '),
slug = replace(slug,'ß','Ss'),
slug = replace(slug,'à','a'),
slug = replace(slug,'á','a'),
slug = replace(slug,'â','a'),
slug = replace(slug,'ã','a'),
slug = replace(slug,'ä','a'),
slug = replace(slug,'å','a'),
slug = replace(slug,'æ','a'),
slug = replace(slug,'ç','c'),
slug = replace(slug,'è','e'),
slug = replace(slug,'é','e'),
slug = replace(slug,'ê','e'),
slug = replace(slug,'ë','e'),
slug = replace(slug,'ì','i'),
slug = replace(slug,'í','i'),
slug = replace(slug,'î','i'),
slug = replace(slug,'ï','i'),
slug = replace(slug,'ð','o'),
slug = replace(slug,'ñ','n'),
slug = replace(slug,'ò','o'),
slug = replace(slug,'ó','o'),
slug = replace(slug,'ô','o'),
slug = replace(slug,'õ','o'),
slug = replace(slug,'ö','o'),
slug = replace(slug,'ø','o'),
slug = replace(slug,'ù','u'),
slug = replace(slug,'ú','u'),
slug = replace(slug,'û','u'),
slug = replace(slug,'ý','y'),
slug = replace(slug,'ý','y'),
slug = replace(slug,'þ','b'),
slug = replace(slug,'ÿ','y'),
slug = replace(slug,'ƒ','f'),
slug = replace(slug, 'œ', 'oe'),
slug = replace(slug, '€', 'euro'),
slug = replace(slug, '$', 'dollars'),
slug = replace(slug, '£', ''),
slug = replace(slug, '/', ''),
slug = replace(slug, ',', ''),
slug = replace(slug, ':', ''),
slug = replace(slug, '!', ''),
slug = replace(slug, '?', ''),
slug = replace(slug, '%', ''),
slug = replace(slug, '"', ''),
slug = replace(slug, "'", ''),
slug = replace(slug, '+', ''),
slug = replace(slug, '(', ''),
slug = replace(slug, ')', ''),
slug = replace(slug, '\\', ''),
slug = replace(slug, '“', ''),
slug = replace(slug, '”', ''),
slug = replace(slug, 'º', ''),
slug = replace(slug, 'ª', ''),
slug = trim(slug),
slug = replace(slug, ' ', '-'),
slug = replace(slug, '--', '-') ;

hasta!

terça-feira, 20 de outubro de 2015

Como corrigir charset de uma base latin1 quando importada para uma utf8

O CÓDIGO

Faça o dump:

mysqldump -u USER -p --opt --quote-names --skip-set-charset --default-character-set=latin1 DBNAME > dump.sql

Substitua os valores de USER e DBNAME de acordo com sua necessidade.

Importe para sua nova base UTF8:

mysql -u USER -p --default-character-set=utf8 DBNAME  < dump.sql

hasta!

segunda-feira, 5 de outubro de 2015

Instalando PHP, Django, MySQL em um Cloudpro na Locaweb com Ubuntu 12.04

Instalação do Apache com mod_wsgi:


aptitude search apache2
aptitude install apache2
ps aux | grep apache
sudo aptitude install libapache2-mod-wsgi
sudo service apache2 restart

Instalação do Virtualenv

apt-get install python-virtualenv

Instalação do MySQL

apt-get update
apt-get install mysql-client-core-5.5
apt-get install mysql-server
mysql -u root -p
ps aux | grep mysql

Instalação do PHP

apt-get update
aptitude install php5 libapache2-mod-php5
/etc/init.d/apache2 restart
mysql -u root -p
ps aux | grep mysql

Instalação do GIT

apt-get install git
ssh-keygen

Instalação do Django com VirtualENV

virtualenv --no-site-packages --unzip-setuptools ENV
pip install django

Instalação de um novo projeto em PHP

Copie o arquivo default  da pasta /etc/apache2/sites-available/ para o mesmo diretorio com o nome do seu projeto, no exemplo abaixo utilizaremos seudominio.com.br.  Depois abra com o editor de sua preferência e deixe como a seguir:



E para configurar um em Django, deixe como a seguir:



hasta!

quinta-feira, 27 de novembro de 2014

Preview imagem antes do upload sem distorcer na exibição

Requisitos: JQUERY HTML:

...
<input type="file" name="imagem_upload" id="id_foto">
<div id="img2"></div>
...


CSS:

 #img2 {
    width: 80px; height: 80px;
    background: url(imagem-padrao.jpg) no-repeat center center;
    background-size: cover;
    position: absolute;
    top: 50%; left: 50%;
    margin-left: -40px;
    margin-top: -40px;
    border-radius: 50%;
    border: 5px solid #fff;
    z-index: 1;
}


JAVASCRIPT:

$('#id_foto').live('change', function(){
 var input = document.getElementById("id_foto");
 var fReader = new FileReader();
 fReader.readAsDataURL(input.files[0]);
 fReader.onloadend = function(event){
  $("#img2").css('background', 'url('+event.target.result+') no-repeat center center');
  $("#img2").css('background-size', 'cover');
 }
});


sábado, 15 de novembro de 2014

Configurando Apache no OS Yosemite para funcionar LOCALHOST na pasta Sites

Abra o arquivo /etc/apache2/httpd.conf com o editor de sua preferencia:

sudo nano /etc/apache2/httpd.conf


E deixe como a seguir, configurando o caminho para seu suarios

DocumentRoot "/Users/myusername/Sites"

<Directory "/Users/myusername/Sites">

    Options Indexes FollowSymLinks Multiviews

    MultiviewsMatch Any

    AllowOverride All

</Directory>

Salve e reinicie o apache

sudo apachectl restart

Depois basta abrir o navegador e digitar http://localhost

hasta!

terça-feira, 22 de abril de 2014

Como adicionar ou atualizar algum parametro da querystring via javascript

Surgiu a seguinte necessidade: Tinha uns filtros que utilizavam o método GET para enviar os valores. Como tinha mais que um e precisava deles de forma cumulativa, como fazer para pegar os filtros pré enviados e mantê-los num novo filtro?

Precisei verificar se o parâmetro já estava enviado e atualizá-lo se sim, ou incluí-lo se não.


O CÓDIGO:


function UpdateQueryString(key, value, url) {
    if (!url) url = window.location.href;
    var re = new RegExp("([?&])" + key + "=.*?(&|#|$)(.*)", "gi");

    if (re.test(url)) {
        if (typeof value !== 'undefined' && value !== null)
            return url.replace(re, '$1' + key + "=" + value + '$2$3');
        else {
            var hash = url.split('#');
            url = hash[0].replace(re, '$1$3').replace(/(&|\?)$/, '');
            if (typeof hash[1] !== 'undefined' && hash[1] !== null)
                url += '#' + hash[1];
            return url;
        }
    }
    else {
        if (typeof value !== 'undefined' && value !== null) {
            var separator = url.indexOf('?') !== -1 ? '&' : '?',
                hash = url.split('#');
            url = hash[0] + separator + key + '=' + value;
            if (typeof hash[1] !== 'undefined' && hash[1] !== null)
                url += '#' + hash[1];
            return url;
        }
        else
            return url;
    }
}


O USO:

location.href = UpdateQueryString('seu_parametro',SEU_VALOR);


hasta!

terça-feira, 7 de janeiro de 2014

App de cidades e estados brasileiros

Vez ou outra é necessário cadastrar a cidade e o estado em um formulário de algum projeto, seja para cadastro de perfis, pedidos, etc.

Quando tem endereço envolvido ainda é mais fácil, pois existem diversos webservices que fornecem o nome da forma correta, como consta nos correios. O problema acontece quando desejamos apenas cidade e estado.

Sempre aparece alguns "espertinhos" (pra não dizer outra coisa), que escrevem sua cidade cada hora de um jeito, abreviando das mais diversas maneiras, e com isso, o banco fica uma bagunça quando precisa-se filtrar ou tirar um relatório baseado em cidades.

Por isso, resolvi montar um banco com base nas informações dispostas no site do IBGE (http://www.cidades.ibge.gov.br/xtras/home.php - atualizado em 2010) para ajudar com esta tarefa.

Espero que ajude outros programadores.

Segue o link: https://github.com/zejuniortdr/cidades-br

hasta!