Dec-07 28

Ler quebra de linha do dados do banco de dados com PHP

Enviado por: Thales RB. .     1 comentário.     Categorias: Aprendendo PHP, PHP

Eu estava aqui convertendo a base de dados do wordpress para o meu sistema e vi que, no wordpress ao salvar no banco de dados ele usa quebra de linha(o enter mesmo), o editor que eu estou usando, para quebrar a linha adiciona <p>; nbsp </p>. Mas ao listar o conteudo o HTML não reconhece essas quebra de linhas.

Para converter essas quebras de linhas para o codigo HTML <p>; nbsp </p>, que irá realmente quebrar a linha existe a função nl2br com isso todas as quebras de linhas que houver no BD serão convertidas para <p>; nbsp </p> tornando assim a quebra visivel pelo HTML.

O seu uso é bem simples:

<?

nl2br($conteudo);

?>

simples não?

Dec-07 21

Gravar ou exibir datas em português com o PHP

Enviado por: Thales RB. .     1 comentário.     Categorias: Aprendendo PHP, Diversos, PHP

No post anterior sobre data eu mostrei como salvar uma data, mas daquela maneira ela fica em ingles, isso fica visivel se usar o F ou o D que exibem o nome do mês.

Mas existe uma maneira de gravar as datas em pt-br para isso se usa o comando strftime ele permite formatar a data de acordo com as configurações locais.

Para definir o local do onde você está se usa o setlocale

[cod=''php"]setlocale(LC_ALL, “pt_BR”, “ptb”); //selecionar o local parapt-br[/code]

após ter definido o local que estamos, podemos usar o strftime, o seu uso é simples:

[cod=''php"] $formato = '%d-%B-%Y %H:%M:%S';
$horario = strftime($formato);

echo $horario; [/code] ]

as formatações aceitas são:

  • %a - dia da semana abreviado de acordo com a localidade
  • %A - nome da semana completo de acordo com a localidade
  • %b - nome do mês abreviado de acordo com a localidade
  • %B - nome do mês completo de acordo com a localidade
  • %c - representação da data e hora preferida pela a localidade
  • %C - número do século (o ano dividido por 100 e truncado para um inteiro, de 00 até 99)
  • %d - dia do mês como um número decimal (de 01 até 31)
  • %D - mesmo que %m/%d/%y
  • %e - dia do mês como um número decimal, um simples dígito é precedido por espaço (de ' 1' até '31')
  • %g - como %G, mas sem o século.
  • %G - o 4-dígito do ano correspodendo as ISO week number (see %V). Este tem o mesmo formato e valor que %Y, exceto que se o ISO week number pertence ao prévio ou próximo ano, aquele ano é usado ao invés deste.
  • %h - mesmo que %b
  • %H - hora como um número decimal usando um relógio de 24-horas (de 00 até 23)
  • %I - hora como um número decimal usando um relógio de 12-hoas (de 01 até 12)
  • %j - dia do ano como número decimal (de 001 até 366)
  • %m - mês como número decimal (de 01 até 12)
  • %M - minuto como número decimal
  • %n - caracter novalinha
  • %p - um dos dois `am' ou `pm' de acordo com o valor da hora dada, ou as strings correspondentes para a localidade
  • %r - hora em a.m. e p.m. notação
  • %R - hora em notação de 24 horas
  • %S - segundo como um número decimal
  • %t - caracter tab
  • %T - hora corrente, igual a %H:%M:%S
  • %u - dia da semana como número decimal [1,7], com 1 representando Segunda-feira

Uma outra maneira de formatar a exibição da data é usando o substr, e também pode ser util para para ler a data salva e exibi-la em partes, isso pode ser usado para exibir ela em uma imagem(em um calendario como é aqui no site). Ex:

[cod=''php"]$data = '2010-08-28';
$dia = substr($data, 8, 2);// 8 é o numero do primeiro caracter e ser lido e 2 é o numero de caracteres a ser mostrado

$mes = substr($data, 5, 2);
$ano = substr($data, 0, 4);
echo “$dia/$mes/$ano”;[/code]

com essa função, pode se montar um switch para exibir o mês com nome por extenso ex:

switch (substr($data, 5,2)) {
case '01':
echo 'Jan';
break;
case '02':
echo 'Fev';
break;
case '03':
echo 'Mar';
break;
case '04':
echo 'Abr';
break;
case '05':
echo 'Mai';
break;
case '06':
echo 'Jun';
break;
case '07':
echo 'Jul';
break;
case '08':
echo 'Ago';
break;
case '09':
echo 'Set';
break;
case '10':
echo 'Out';
break;
case '11':
echo 'Nov';
break;
case '12':
echo 'Dez';
break;
}

Acho que usar essa segunda maneira é melhor, principalmente se for preciso, fazer busca usando data, mas fica a criterio de cada um escolher a melhor opção =D

Dec-07 19

Formatação de textos HTML, com editor WYSIWYG

Enviado por: Thales RB. .     10 comentários.     Categorias: Aprendendo PHP, Blogs, HTML-CSS, Javascript, Scripts

Para quem oferece algum sistema, onde qualquer pessoa possa enviar textos é interessante, ter um editor para formatação de textos, já que não é qualquer um que sabe comandos HTML para formatar o texto. E o seu uso é recomendado para não permitir que qualquer comando HTML possa ser usado, já que alguns comandos poderiam arruinar o seu Layout

Para fazer isso existem dois tipo de editores:

WYSIWYG(What You See Is What You Get), que é um editor visual ou seja ao usa-lo você já verá o texto formatado, igual o word, g-mail, wordpress, etc.

BBCODE(Bulletin Board Code), que é uma simples função para substituir caracteres, ex: a tag <b></b> ficará [b][/b], como o seu nome diz ele foi criado para fóruns, onde é encontrado comumente, para criar um editor desse é preciso saber bastante programação, já que é preciso, substituir todos os caracteres, e bloquear o uso de outros comandos html.

Usando um WYSIWYG

Os editores desse tipo, são de uso mais facil, pois são feitos com Javascript, e podem ser usados com qualquer tipo de sistema, PHP, ASP, etc.

Quando eu estive procurando por isso, achei um monte de editores assim, mas não consegui usar ou adaptar ao que eu queria quase nenhum.

O unico que eu me dei bem foi o TinyMCE. Veja aqui um exemplo dele Para usa-lo é bem simple, com o download dele em alguma pasta do seu sistema, e adicione o seguinte no arquivoirá usa-lo

<script type=”text/javascript” src=”pasta_onde_esta_os_arquivos/tinymce/tiny_mce.js”></script>

<script language="javascript" type="text/javascript">
tinyMCE.init({
mode : "textareas",
theme : "advanced",
plugins : "safari,spellchecker,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,pagebreak,imagemanager,filemanager",
theme_advanced_buttons1_add_before : "save,newdocument,separator",
theme_advanced_buttons1_add : "fontselect,fontsizeselect",
theme_advanced_buttons2_add : "separator,insertdate,inserttime,preview,separator,forecolor,backcolor",
theme_advanced_buttons2_add_before: "cut,copy,paste,pastetext,pasteword,separator,search,replace,separator",
theme_advanced_buttons3_add_before : "tablecontrols,separator",
theme_advanced_buttons3_add : "emotions,iespell,media,advhr,separator,print,separator,ltr,rtl,separator,fullscreen",
theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,spellchecker,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,blockquote,pagebreak,|,insertfile,insertimage",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "left",
theme_advanced_statusbar_location : "bottom",
content_css : "/example_data/example_full.css",
plugin_insertdate_dateFormat : "%Y-%m-%d",
plugin_insertdate_timeFormat : "%H:%M:%S",
external_link_list_url : "example_data/example_link_list.js",
external_image_list_url : "example_data/example_image_list.js",
flash_external_list_url : "example_data/example_flash_list.js",
template_external_list_url : "example_data/example_template_list.js",
theme_advanced_resize_horizontal : false,
theme_advanced_resizing : true,
apply_source_formatting : true,
spellchecker_languages : "+English=en,Danish=da,Dutch=nl,Finnish=fi,French=fr,German=de,Italian=it,Polish=pl,Portuguese=pt,Spanish=es,Swedish=sv"
});
</script>

Esse segundo javascript serve para formatar a exibição, no caso aqui ele irá aparecer todas as opções, mas como ele usa um esquema de plugins, cada botão é um plugin, então é possiveo formatar isso.

Como pode ser visto ele tem theme_advanced_buttonsX_add e na frente de cada uma tem os botões que seram mostrados, ou seja é só deletar o nome do botão para remove-lo. E se não for usar um botão pode remover a sua pasta dentro do tinymce para ficar mais leve.

Adicionando esses scripts ele irá adicionar o editor em todas as textareas que houver na página.

Dec-07 14

Tutorial Básico PHP (Aprenda PHP)

Enviado por: Thales RB. .     28 comentários.     Categorias: Aprendendo PHP, PHP

Eu resolvi fazer uma coletanea de tutoriais voltados para ensinar PHP, e irei comecar a ensinar do mais basico possivel até aonde eu souber. Para isso eu criei a categoria chamada Aprenda PHP, todos os posts que tiverem nela teram um sequencia, em cada post irei colocar quais posts, devem ter sido lidos anteriormente e quais devem ser a proxima leitura(quando houver).

Mas Primeiro…

Na minha faculdade eu tive varias linguagens de programação, e tirando 1(delphi, e porque o professor era otimo), todas simplesmente ensinavam a fazer programas sem nenhuma utilidade pratica, eles não me servem pra nada, como calculadora, sistema de biblioteca, video-locadora, esses programas para terem alguma utilidade teriam que ser extremamente bem feitos, para poderem ser vendidos, e isso é bem dificil.

Mas com o PHP foi diferente, eu aprendi ele sozinho, só atravez de tutoriais, (nem apostila usei), mas eu usei uma tecnica interessante, eu primeiro tive um objetivo, o meu objetivo era criar um CMS, um sistema de gerenciamento de conteudo, um blog(o Wordpress), tanto que irei usa-lo aqui no clubepc. Com um objetivo e sabendo como ele funciona, e o que eu queria que ele tivesse, então corri atraz do conhecimento em php para fazer isso.

Então a dica é ter um objetivo ou seja aprender criando algo util, e que você possa usar, como um sistema de blog, ou um sistema de fórum, enfim qualquer coisa que lhe tenha alguma utilidade.

Usando essa tecnica eu consegui realmente aprender PHP. =D

E por isso irei ensinar PHP com algo pratico, irei ensinar a fazer um blog(que com pequenas mudanças pode ser um fórum), mas é logico que para aprender a fazer um blog antes é preciso saber muitas coisas, que seram uteis para qualquer coisa que você queira fazer, ou seja o objetivo final será um blog, mas será poucos posts voltados unicamente para o blog no geral seram ensinamentos genericos do PHP.

E é logico que para aprender uma linguagem de programação o passo fundamental é exercitar o que aprendeu, testanto, modificando, etc.

Introdução ao PHP

O PHP(um acrônimo recursivo para “PHP: Hypertext Preprocessor”) é uma linguagem de programação dinâmica para produção de websites. Para quem não conhece linguagens de programação, PHP pode ser um pouco difícil no começo, como toda linguagem. O PHP é uma linguagem orientada a objeto, com a sintaxe parecida com a do C, só que muito mais simples e prática.

Entende-se por uma página dinâmica, toda a página que é gerada quando existe um pedido no servidor. Ou seja, a página que chega ao utilizador não existe “escrita” no servidor. Existem sim os conteúdos, que serão depois colocados nos respectivos locais, na página, consoante os pedidos. O melhor exemplo de um site dinâmico, é um motor de pesquisa. É impossível (e impensável) armazenar todas as combinações de páginas que surgem, quando fazemos diversas pesquisas. Isto quer dizer, que as paginas não existem, elas são “geradas” com informações que estão em bases de dados.

Tudo o que sai do código PHP (output), usa HTML. Logo é fundamental ter conhecimentos de HTML.

(more…)

Dec-07 14

Como fazer formulários em HTML/PHP

Enviado por: Thales RB. .     90 comentários.     Categorias: Aprendendo PHP, Desenvolvimento, PHP

Para qualquer um que queira aprender alguma programação voltada para WEB(PHP, ASP, JAVA, etc) precisa saber como criar um formulário em HTML, já que é com eles que você irá coletar qualquer dado digitados pelo usuário.

Então irei explicar todos os passos, e as tags envolvidas, para se criar um fórmulario, e coletar os dados usando PHP.

(more…)