Classes abstratas e finais em PHP

janeiro 19th, 2010

Hoje me deparei com algo que nunca precisei mexer e tinha esquecido disso (ja tinha visto na faculdade).

Classes abstratas e finais!

É bem bobo, mas vamo lá: Classe abstrata é quando você quer deixar tudo organizado numa classe principal, porem sem implementar (a implementação fica para os filhos dela que precisarem).

Dessa forma a classe fica organizada e cada filho implementa de acordo com sua necessidade.

Ex.:

abstract class pessoa
{

abstract function queroOutroNome();

}

class pessoaRevoltada extends pessoa
{

function queroOutroNome($novoNome){

$nome = $novoNome;

}

}

Depois escrevo da classe final e um detalhe sobre aspas até então desconhecido pra mim.

[]’s

Colocando Player no seu site

julho 2nd, 2009

Bom, encontrei milhares de sites com o mesmo conteúdo em português e em inglês e ninguém teve a decência de colocar a origem, então nem vou copiar o conteúdo deles, quem tiver interesse procura no google “como colocar player de mp3 no seu site”…

O meu problema foi com o maldito (ou bendito) Yahoo! Media Player!
Esse player tem opção de autoplay, etc, etc, etc, porem em lugar nenhum explica de forma “carinhosa” como usar, então foi no se vira nos 30…

o que eu fiz:

coloca isso no head da sua pagina:

<script src=”http://mediaplayer.yahoo.com/js” type=”text/javascript”></script>

e isso:

<script type=”text/javascript”>
var YMPParams = {
autoplay:true,
volume:0.5,
defaultalbumart:http://link.da.image.com.br/imagem.gif”
}
</script>

depois de onde vc fecha a tag body, coloque:
<script src=”http://mediaplayer.yahoo.com/latest”></script>

Agora sempre que você linkar uma música no site dessa forma:
<a href=”http://organica.bamumi.com/circovoadois/musica4.mp3″>Música 4</a>

o player automaticamente vai inserir isso na playlist…
se você linkar 100 músicas na mesma página, irão aparecer 100 músicas no playlist automaticamente.

Agora deixe-me explicar os problemas que encontrei, pois eu queria a página sem links de músicas expostos.

1) Queria simplificar a coisa toda e criar um arquivo .xspf que nada mais é do que uma lista de músicas que segue os padrões XML.
O player não reconheceu! Obs.: Para funcionar esse tipo de TAG você tem que colocar umas coisas a mais no link, quem tiver interesse vai no site do mediaplayer.yahoo.com e descubra como.

2) Tentei linkar as músicas de outra URL. Falhou tambem. (Segue os mesmo padrões do acima)

3) Comecei a pensar em engenharia de solução alternativa (aka POG, Gambiarra) e cheguei no seguinte ponto:
<div id=”x” style=”display:none”>links de musicas…</div>

Isso funcionou e ainda deu o autoplay!

Se alguem tiver uma solução mais decente que essa, favor me informar!

[]’s
Bamumi

Ventrilo Normalization

maio 2nd, 2009

Pra arrumar o ventrilo… sempre tenho que caçar no google… agora vou deixar aqui pra não precisar procurar mais.

* Ventrilo Normalization
Vent Normalization makes every bodies voice the exact same volume. In essence, you won’t blow your ear’s out or have difficulty hearing people.
____________________

Here’s how:
- Go to Setup
- Enable Direct Sound
- Select the SFX Button
- Select Compressor and click Add.
- Under Compressor Properties use the following settings
- Gain = Adjust for how loud you want people to be. (I use 15)
- Attack = 0.01
- Release = Around 500
- Threshold = Around -30
- Ratio = 100
- Pre delay = 4.0

Free e-Commerce PHP

março 9th, 2009

Pesquisando alguns e-comerces livres, cheguei nesses 2 melhores (do meu ponto de vista)

Magento

Presta Shop

Quem souber de mais algum, avise pra eu compartilhar aqui =)

[]’s,
Bamumi

Forum PHP

março 3rd, 2009

Criei esse post pra listar os foruns em PHP que conheço.

O melhor sem dúvida é o da Invision Power, porem ele é pago…

Outras alternativas free que conheço:

PunBB
PHP BB

O Rafa indicou um outro que eu não conhecia:SMF

Se alguem souber de um outro, favor avisar pra eu ir atualizando a lista =)

[]’s
Bamumi

Tunning MySQL

março 3rd, 2009

Olá ppl… vou começar a estudar melhor como tunar bancos MySQL.

Arrumei um arquivo que faz o trabalho sujo pra vc, basta rodar, ler o que é sugerido e boa sorte :P
(nao me responsabilizo por danos causados :P )

Clique aqui para fazer download do arquivo.

(Tirei a idéia daqui.. dos comentários, na verdade).

[]’s
Bamumi

Caracteres especiais HTML

março 3rd, 2009

Não é sempre que a gente lembra de todos os malditos caracteres…

Abaixo uma listinha pra ajudar :)

Á ………….. &Aacute;
á …………… &aacute;
 …………….. &Acirc;
â ……………. &acirc;
À …………… &Agrave;
à …………… &agrave;
Å …………….. &Aring;
å ……………. &aring;
à ……………. &Atilde;
ã …………… &atilde;
Ä ……………… &Auml;
ä …………….. &auml;
Æ …………….. &AElig;
æ ……………… &aelig;
É ……………. &Eacute;
é …………… &eacute;
Ê …………….. &Ecirc;
ê ……………. &ecirc;
È ……………. &Egrave;
è …………… &egrave;
Ë ……………… &Euml;
ë …………….. &euml;
Ð ………………. &ETH;
ð ……………… &eth;
Í ……………. &Iacute;
í …………… &iacute;
Î …………….. &Icirc;
î ……………. &icirc;
Ì ……………. &Igrave;
ì …………… &igrave;
Ï ……………… &Iuml;
ï …………….. &iuml;
Ó ……….. &Oacute;
ó ………….. &oacute;
Ô ……………. &Ocirc;
ô …………….. &ocirc;
Ò ………….. &Ograve;
ò …………… &ograve;
Ø ……………. &Oslash;
ø …………… &oslash;
Õ ……………. &Otilde;
õ …………… &otilde;
Ö ……………… &Ouml;
ö …………….. &ouml;
Ú ………….. &Uacute;
ú …………… &uacute;
Û ……………. &Ucirc;
û ……………. &ucirc;
Ù …………. &Ugrave;
ù ………….. &ugrave;
Ü …………….. &Uuml;
ü …………….. &uuml;
Ç …………… &Ccedil;
ç …………… &ccedil;
Ñ …………… &Ntilde;
ñ …………… &ntilde;
< …………….. &lt;
> …………….. &gt;
& ……………. &amp;
” …………….. &quot;
® ……………… &reg;
© …………… &copy;
Ý ………… &Yacute;
ý ………… &yacute;
Þ ………….. &THORN;
þ ……………. &thorn;
ß ……………. &szlig;

(conteudo retirado desse site)

Windows XP Professional Edition SP3 Lite Pt-Br

março 3rd, 2009

Windows XP Professional Edition SP3 Lite Pt-Br, o nome já diz tudo :)

Conteudo

Configurações Básicas::
Windows XP SP3 Final Pt-Br desenvolvido sobre a versão oficial disponibilizada pela MSDN.
Sistema super leve e funcional.

Adicionados:
Windows Media Player 11, Internet Explorer 7, Winrar 3.71 e drivers sata.

Instalação:
Requer apenas o nome de usuário e grupo de trabalho.

Otimizações:
Tema clássico padrão
Hibernação desativada
Suporte para temas não oficiais ativado
Desativada a proteção de arquivos do sistema
Teclas de aderência desativadas
Sempre mostrar barra de status ativado
Painel de controle modo clássico ativado
Prefetch desativado
Limite de conexões do IE alterado para 10
Menu iniciar mais rápido
Destacar programas recentemente instalados desativado
Pesquisar na internet removido
Removido catálogo do Windows no menu iniciar
Adicionado no menu do Meu computador: gerenciador de dispositivos
Alexa spyware removido
Proteção de tela desativada
Proteção de tela com senha desativada
Não armazenar miniaturas em cache ativado

Removidos:

# Aplicações #
Jogos para internet
NT backup
Pinball
Porta-arquivo
Proteção de telas
Visualizador de portifólios - clipbook viewer

# Drivers #
Ibm thinkpad
Impressoras
Isdn
Modems
Scanners

# Multimídia #
Antigos reprodutores de cd e gravador de sons
Imagens e fundos
Intel vídeo codecs
Media center
Músicas de exemplo
Suporte ao formato de imagem aol art
Suporte de voz
Tablet pc

# Opções do sistema operacional #
.Net framework
Assistente de busca
Assistente para limpeza da área de trabalho.
Assistente para transferência de arquivos e configurações
Dr watson
Editor de caractere pessoal
Gravando informações de depuração
Instalação manual e atualização
Pastas compactadas
Tour

# Rede #
Administrador de conexão
Extensões frontpage
Monitor e ferramenta do driver de rede.
Msn explorer
Netmeeting
Serviços de informação de internet (iis)
Windows messenger

# Serviços #
Agente de diretivas ipsec
Alerta
Cópia de volume em sombra
Dde de rede
Imapi serviço com de gravação de cd
Informe de erros
Mensageiro
Protocolo de advertência de serviço
Registro remoto
Serviço de indexação
Servidor telnet.

# Suporte de linguagem #
Árabe
Armênio
Báltico
Chinês simplificado
Chinês tradicional
Cirílico
Coreano
Georgiano
Grego
Grego
Hebraico
Indiano
Tailandês
Turco
Vietnamita

# Teclado #
Albanês teclado
Árabe
Armênio
Azeri
Belarusso teclado
Belga
Bélgica
Bengali
Bósnio
Búlgaro
Cazaquistão teclado
Chineses
Coreano teclado
Croata teclado
Devanagari - INSCRIPT teclado
Dinamarquês teclado
Divehi - máquina de escrever teclado
Divehi fonético teclado
Eslovaco
Esloveno teclado
Estoniano teclado
Faroês teclado
Farsi teclado
Finlandês
Gaélico teclado
Georgiano teclado
Grego
Gujarati teclado
Hebraico teclado
Hindi tradicional teclado
Holandês teclado
Húngaro
Inuctitut Latino teclado
Kannada teclado
Letão
Lituano
Luxemburguês teclado
Macedônio (Antiga República Iugoslava da Macedônia) teclado
Malaio teclado
Maltês
Maori teclado
Marata teclado
Mongol cirílico teclado
Nepali teclado
Norueguês
Pashto teclado
Polonês
Punjabi teclado
Quirgiz cirílico teclado
Reino
Romeno teclado
Russo
Sami
Sérvio
Sírio
Sistema de entrada coreano (IME 2000) teclado
Sueco
Suíça
Tailandês
Tâmil teclado
Tatar teclado
Tcheco
Télego teclado
Turco
Ucraniano teclado
Urdu teclado
Uzbek (cirílico) teclado
Vietnamita teclado

# Diretórios #
DOCS
SUPPORT
VALUEADD

Dados Técnicos:
Quantidade de Mídias: 1 Cd 
Idioma: Português 
Tipo de Compartilhamento: ed2k 
Criado por: Insane Fix 

Links p/ Emule: XPSP3_MLITE.iso [321.94 Mb]

(Informação retira desse site)

Instalando Apache 2.2 + PHP 5 + MySQL

março 2nd, 2009

Sempre surgem duvidas sobre como instalar o PHP/Apache/MySQL corretamente, então segue abaixo um tutorial que eu utilizo pra instalar:

Antes de começar a seguir o tutorial feito um louco, baixe a versão mais atual do Apache 2.x no site oficial e o PHP 5.2.9 zip package (versão que vem zipada, não precisa instalar) e o MySQL. Após baixar comece a seguir os passos abaixo.

1. Instale o MySQL. Não tem segredo nenhum… coloque uma senha para o usuario root e voalá!

2. Crie uma pasta na unidade c: com o nome php5. Exemplo: c:php5

3. Agora descompacte a pasta php5 que você acabou de baixar nesta pasta que você acabou de criar.

4. Agora você tem que colocar o caminho do php no path do Windows (tem outras formas de fazer isso, mas este e o mais garantido para facilitar reparos de segurança no futuro), clique com o botão direito do mouse no ícone meu computador agora vai em propriedades > avançado > e clique no botão variáveis de ambiente, tem duas telas vai em variáveis de sistema, tem uma variável com nome Path, de um duplo clique nela, vai abrir uma janela, agora no campo ambiente da variável, vá ate o final da linha e adicione esse caminho ;C:php5 , agora reinicie o Windows.

5. Agora vá ate a pasta do php5, e selecione o arquivo php.ini-recommended e renomeie ele para php.ini

6. Agora vamos instalar o apache 2.2, antes de tudo desabilite o firewall do Windows e desabilite o antivírus do seu PC, agora clique no executável do apache, o apache e fácil de instalar só na parte de escolha de nome de domínio que você vai digitar: no primeiro campo você digitara localdomain, no segundo campo você digitara localhost e na terceira você digitara seunome@localdomain.com, ai e só clicar e next ate começar a instalação.

7. Depois de instalado o apache va em C:Arquivos de programasApache Software FoundationApache2.2conf e abra o arquivo httpd, e faz esta mudanças que vou mostrar: acrescente estes caminhos perto dos loadmodules:

# Para o PHP 5:
LoadModule php5_module “c:/php5/php5apache2_2.dll”
AddType application/x-httpd-php .php

Agora localize o nome DirectoryIndex index.html no arquivo e mude o nome index.html para index.php e salve o arquivo, reinicie o apache, vá em menu iniciar > todos os programas > apache http server 2.2 > control apache server, e clique em restart.

Adicione essa linha no final do arquivo
PHPIniDir “C:php5″

8. Agora vá neste caminho C:Arquivos de programasApache Software FoundationApache2.2htdocs , e nesta pasta que ficara os arquivos do sistema web, note que dentro dela esta o index.html, renomeie ele para index.php, e abra o arquivo como bloco de notas e apague o que esta la dentro e digite estes códigos:

< ?php
phpinfo();
?>

Salve o arquivo, agora abra o seu brownser de navegação da internet, e digite na barra de endereços: http://localhost se abrir uma pagina parecida com essa abaixo é porque o PHP esta funcionando com o apache.

PHP Info

Desça a barra de rolagem e/ou procure pela Tag “MySQL” igual na imagem abaixo.

MYSQL

Caso ela estiver aparecendo, parabéns! Você concluiu a instalação com exito, caso não estiver aparecendo não se desespere.
Abra o php.ini (c:/php5/php.ini) e procure pela linha que tem escrito
;extension=php_mysql.dll
e remova o ; da frente da linha

Caso ainda não funcionar localize a linha que possui escrito
extension_dir =
e coloque esse valor (com as aspas)
"c:/php5/ext/"

IMPORTANTE: Lembre-se de dar stop no apache e depois dar start (o restart nao costuma funcionar… vai entender!)

Tirei as informações desse tópico e acrescentei algo pra complementar.
Caso tiver alguma dúvida que não foi sanada aqui, entre no link abaixo e veja se encontra a resposta… Caso não encontrar coloca um comentário que tentarei ajudar.

Obs.: Linkem as referencias de onde vocês copiam as coisas… não é vergonha nenhuma fazer isso :P

Acesso remoto MySQL

março 2nd, 2009

Boa tarde,

primeiro post é falando sobre como acessar o MySQL de forma remota.
Para isso você precisa de um usuário com permissao para isso,
caso for, basta rodar a query abaixo:

GRANT ALL PRIVILEGES ON *.* TO USER_NAME@IP_DE_ACESSO IDENTIFIED BY “SENHA”;

Opções de databases (aonde esta o *.*):
data_base.*
ou apenas para uma determinada tabela
data_base.nome_da_tabela

Opções de usuários:
root@127.0.0.1

Senha:
É a senha do usuario para acesso daquele local. A senha pode ser informada entre aspas simples ou duplas.

Por hoje é isso.
[]’s
Bamumi

Mudanças no blog

março 2nd, 2009

Boa dia povo,

 

recuperei a senha do blog e agora vou postar mais constantemente (dei uma apagada no conteudo antigo…)

Vou tentar colocar o conteudo dos meus favoritos no meu blog pra centralizar a informação do meu interesse (espero que alguma preste pra alguem), além disso vou postando outras coisas que aparecerem no dia a dia que não forem relacionadas a programação.

[]’s

Bamumi

Crise Mundial, como tudo começou

outubro 11th, 2008

Tô lendo no site da folha… lá explica direitinho.
Pelo menos pra mim ninguem nunca explicou certo e eu nao sabia exatamente o porque.

Quem quiser ficar um pouco menos ignorante, segue o link:

http://www1.folha.uol.com.br/folha/dinheiro/ult91u454948.shtml 

Testes Google Chrome III

setembro 4th, 2008

O depurador é um pouco voltado pra quem curte linha de comando… mas lá vai como usar

Pra iniciar digite ajuda.

Voce pode setar os breakpoints das páginas utilizando o comando “break nomeDaFuncao” nao coloque parenteses nem nada… ai o consoleira te informar que salvou o ponto #1.

Faça a função ser rodada e utilize os comandos: next, step, stepout, continue, args… tô pegando o jeito ainda, mas parece ser bom.

Agora outra coisa fantastica é a edição de HTML/CSS (ainda nao tentei JS) durante a execução da página.

Voce aperta o botão direito e clica em “Inspecionar Objeto”. Com um duplo clique você pode editar qualquer opção do objeto. Lá se vai a utilidade de usar campos readyonly ou bloqueados (ok, nao é novidade editar isso, mas o navegador aqui simplificou em MUITO o trabalho).

Até o próximo post =D

[]’s

Bamu

Testes do Google Chrome II

setembro 4th, 2008

tem gente que ainda nao ta sabendo usar bem o navegador…

segue link para os desenvolvedores: http://www.google.com.br/chrome/intl/pt_BR/webmasters-faq.html

Dicas de navegação:

Ao inves de acessar o google pra fazer a pesquisa, digita as palavras o termo ou o que for na barra de endereço e de enter, voces vao ver o resultado =)

Os atalhos foram mantidos iguais do IE e FF – Ctrl + t = nova aba…

novidade são as janelas anonimas que nao deixam rastro no PC. Ctrl + Shift + N … Agora acessem site pornô sem sujar o PC! hahahahahaha

Pop-Ups: Se liguem nas pop-ups.. elas aparecem LÁ EM BAIXO no cantinho direito minimizadas e fazem parte da janela que esta aberta, ou seja, elas nao poluem sua barra de tarefas nem as outras telas.

Depois posto mais coisas (:

[]’s

Bamu

Testes com o Google Chrome

setembro 4th, 2008

Meus primeiros testes com o Chrome:

Recursos que vi: about:memory – bom pra quem desenvolve e/ou é curioso.

O depurador de js ainda nao usei, mas parece ser bom tambem… hoje vou desenvolver algo e falo se funciona bem ou não :)
Meu gmail abriu numa velocidade que fiquei assustado, parece até aplicação pra desktop!

Fiz uns teste para ver o desempenho de JS em alguns navegadores…
Link abaixo:

http://code.google.com/apis/v8/run.html

Nota do Internet Explorer 6: 42
Nota do Internet Explorer 7: 46
Nota do Fire Fox 3: 140
Nota do Opera 9: 284
Nota do Google Chrome: 1900

No site o cara fala que o ideal é ter a nota acima de 100… Eu nao me dei o trabalho de ver os fontes, mas são apenas algoritmos feitos em JS. O chrome veio com a promessa de um super interpretador de JS e parece ser verdade.

Pelo que eu vi ele realmente importou TUDO do meu Fire Fox… Historico, favoritos, etc… Até senhas salvas!! Oo’.

Nem tudo são flores! No site do UOL rolou um pequeno erro, reparem na fonte como ficou:

(vou editar o post no firefox pq no Chrome nao rolou de dar upload na imagem -.-’)

E no site do mercado livre tambem deu pau:


a principio é isso…

obs.: editei pelo firefox mesmo, mas deu o mesmo erro.. como mudei de servidor a pouco tempo nao tinha tentado usar esse recurso, logo o pau eh no novo server… vou verificar o que ta rolando =)
Entao o Chrome ta indo!
[]’s

Bamu