Otimizando MySQL no CentOS 6

Depois de instalar o MySQL em um servidor centOS o mesmo vem com suas configurações padrões. Nesse post vamos ver como otimizar e melhorar um pouco o nosso banco de dados.

O primeiro passo é abrir o arquivo de configuração com um editor de texto preferido. Por padrão este arquivo vem dentro do diretório /etc com o nome de my.cnf .

# vim /etc/my.cnf

Depois de aberto o arquivo vamos inserir estas linhas, salvar o arquivo e fecha-lo.

set-variable = key_buffer=312M
set-variable = max_allowed_packet=1M
set-variable = table_cache=20000
set-variable = sort_buffer=1M
set-variable = record_buffer=1M
set-variable = myisam_sort_buffer_size=64M
set-variable = thread_cache=8
set-variable = thread_concurrency=8
set-variable = max_connections=10000
set-variable = net_write_timeout=30
set-variable = connect_timeout=2
set-variable = wait_timeout=30

Depois de realizado o processo citado acima execute o comando para reiniciar o MySQL, ou para iniciar.

# service mysqld restart

ou

# service mysqld start

Pronto agora é só parti para o abraço.

Data por extenso PHP

Existem várias formas de se realizar esta tarefa no PHP, usando Switch, Ifs e muitas outras formas. Mais a forma que é a mais simples é:

1
2
3
4
5
6
7
8
<?php
header( 'Content-Type: text/html; charset=iso-8859-1' );
setlocale( LC_ALL, 'pt_BR', 'pt_BR.iso-8859-1', 'pt_BR.utf-8', 'portuguese' );
date_default_timezone_set( 'America/Belem' );
$data =  strftime( '%A, %d de %B de %Y', strtotime( date( 'Y-m-d' ) ) );
 
echo $data;
?>

Muito simples né pessoal. Até mais.

Uploads de arquivos grandes – PHP

Por padrão do PHP o limite de upload de um arquivo é 8MB (Megabits), mais como fazer para realizar um upload via POST maior que este valor?

Simples, precisamos adicionar algumas linhas de código no arquivo .htaccess. Estou considerando que você não tenha acesso ao arquivo php.ini no seu servidor.

As linha que se deve adicionar são:

1
2
3
4
5
php_value memory_limit 400M
php_value post_max_size 100M
php_value upload_max_filesize 120M
php_value max_execution_time 1800
php_value session.gc_maxlifetime 3600

O parâmetro: memory_limit, aumentamos o valor máximo de memória em bytes que um script pode alocar para “400MB”. O valor padrão é “128MB”, caso precise de mais espaço é só aumentar o valor.

O parâmetro: post_max_size, aumentamos o tamanho máximo de dados a ser enviados via POST. O valor padrão e “8MB”, no nosso script aumentamos para “100MB”.

O parâmetro: upload_max_filesize, aumentamos o tamanho máximo do arquivo que faremos o upload para “120MB”. O padrão é “2MB”.

O parâmetro: max_execution_time, aumentamos a quantidade de segundos de execução do script para 30 minutos. O padrão e 30 segundos.

O parâmetro: session.gc_maxlifetime, aumentamos em segundo o tempo de vida de sessão para uma hora. O padrão e 24 minutos.

Evitando conflitos no jQuery

Muitas vezes no código que se está desenvolvendo e necessário o uso de mais de uma biblioteca jQuery ou procurando outras bibliotecas javascript para adicionar no projeto. Um problema que ocorre é o conflito das bibliotecas.

O erro mais comum em bibliotecas javascript é quando se usa o mesmo identificador para chama-las, pois cada uma delas vao tentar interpretá-lo cada uma a sua maneira.

O identificador mais usado no javascript é o $, no jQuery pode ser tanto o $ quanto o jQuery.

Para resolver este conflito basta usar esta função:

1
   jQuery.noConflict()

Um exemplo para resolver este problema:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
<script type="text/javascript" src="jquery.js"></script>
 
 
<script type="text/javascript">// 
// Novo pseudonimo
 
var $idt = jQuery.noConflict();
 
// Suas funçoes
 
$idt(document).ready(function(){
		$("#data_nac").mask("99/99/9999");
 
	});
</script>

Segue o link da documentação da função jQuery.noConflict

Descobrindo a extensão de um arquivo – PHP

Quando vamos fazer o upload de um arquivo em nosso sistema, precisamos descobrir qual a extensão do arquivo, muitos desenvolvedores fazem isto de modo incorreto. Muitas vezes usam expressões regulares enormes ou mesmo um explode.

Para descobrir qual extensão é o arquivo basta usar a seguinte função nativa do PHP a parti da versão 4.0.3:

1
2
3
4
 
<?php     
   $extensao = pathinfo($arquivo, PATHINFO_EXTENSION);     
?>

Olhe quais são outros atributos desta função PHP manual

Instalando facilmente o Sublime Text 2 no linux Debian

Sublime Text Logo
Sublime Text

Para instalar o Sublime Text 2, primeiramente temos que baixar pelo site oficial do Sublime Text.  depois de ter realizado o download precisaremos entrar no terminal e digitar os seguintes códigos:

1
2
3
4
    # cd /home/seuusuario/Downloads
    # mv Sublime\ Text\ 2/ /opt/sublime-text-2/
    # ln -s /opt/sublime-text-2 /usr/local/sublime-text-2
    # ln -s /usr/local/sublime-text-2/sublime_text /usr/local/bin/sublime_text

Agora voce ja poderá abrir o sublime text direto pelo terminal com o seguinte comando: sublime_text.

Depois so adicione no seu menu de aplicativos. ate mais.

Fonte: www.ochobitshacenunbyte.com/

Conectando ao banco de dados Mysql – PHP

Salve galera, o banco de dados mais usado em conjunto com o PHP para desenvolvimento web é o MySQL, encontramos quilos e quilos de documentação sobre ele. Hoje vamos fazer uma simples conexão ao banco de dados usando o PHP.

1
2
3
4
5
6
$conexao = mysql_connect("servidor","usuario","senha"); 
  mysql_select_db("nomedobancodedados"):
 
 
$conexao = mysql_connect("localhost","root",""); 
  mysql_select_db("bd_blog"):

Uso essa variável $conexa para no fim da execução do código da um close, usando desse jeito

1
 mysql_close($conexao);

Diferença entre ‘=’, ‘==’, ‘===’ no PHP

Ola, salve salve. Vou  falar  sobre um operador que é muito usado em um código o sinal de igualdade. No php ele é usado basicamente de três maneiras, um sinal de igual ‘=’, dois sinais de igual ‘==’ e três sinais de igual ‘===’. Simples veja como  e usado:

= : Atribui-se um valor à uma variável
== : Verifica-se se os valores são equivalentes
=== : Verifica-se se os valores são equivalentes e do mesmo tipo.
Para atribuir um valor em variáveis usamos o ‘=’, um exemplo :
1
       $variavel = "PHP";
Para verificar se os valores são equivalentes usa-se o ‘==’, um exemplo:
1
         if( $variavel == "PHP"){}
Para verificar se os valores são equivalentes e do mesmo tipo, um exemplo:
1
       $b=0;
1
         if($b===false){}

Eventos no JavaScript

Eventos: São ações identificáveis em um sistemas (browser)
As ações podem ter os mais variáveis estímulos
Exemplo:
•O movimento do mouse
•O Clique
•Carregamento completo da página
•O envio do formulário
•Fechamento da janela

ONLOAD: quando á página termina de ser carregada. Funciona na tag BODY e FRAMESET.
•ONUNLOAD: quando o usuário sair da página. Funciona na tag BODY e FRAMESET.
•ONCLICK: quando o usuário clica com o mouse sobre o elemento. Funciona com todos os elementos visíveis da página.
•ONDBLCLICK: quando o usuário dá um duplo-clique sobre o elemento. Funciona com todos os elementos visíveis da página.
•ONMOUSEDOWN: quando o usuário pressiona o botão do mouse sobre o elemento.
•ONMOUSEUP: quando o usuário solta o botão do mouse sobre o elemento.

ONMOUSEOVER: quando o usuário passa com o mouse sobre o elemento.
•ONMOUSEMOVE: quando o usuário mexe o cursor do mouse sobre o elemento.
•ONMOUSEOUT: quando o usuário move o cursor do mouse fora do elemento.
•ONFOCUS: quando o elemento recebe o foco. Os elementos que os aceitam são: <A>, <AREA>, <LABEL>, <INPUT>, <SELECT>, <TEXTAREA> E <BUTTON>.
•ONBLUR: quando o elemento perde o foco. Esse evento é oposto ao ONFOCUS e funciona nos mesmos elementos.

ONKEYPRESS: quando o usuário pressiona e solta uma tecla e o elemento está no foco.
•ONKEYDOWN: quando o usuário pressiona uma tecla e o elemento está no foco
•ONKEYUP: quando o usuário solta uma tecla e o elemento está no foco
•ONSUBMIT: quando o formulário é submetido. Esse evento deve ser trabalhado na tag <FORM>
•ONRESET: quando resetamos os valores do formulário. Esse eventos deve ser trabalhado na tag <FORM>
•ONSELECT: quando selecionamos parte ou todo o texto de dentro de um elemento <INPUT> OU <TEXTAREA> e o elemento perde o foco.

Exemplo:

1
2
3
4
5
6
7
8
9
<html>
<body>
<p align="center">
<img src="img/imagem.jpg" width="66" height="52"
onmouseover="alert ("O mouse esta sobre a imagem.");"
onmouseout="alert ("O mouse esta fora da imagem");" />
</p>
</body>
</html>