PHP é à quinta-feira – Aprender a programar
Ora cá estamos nós para mais uma rubrica. Uma das coisas que me tenho apercebido é que nos vossos comentários têm dado pouco feedback relativamente à rubrica, isto é, se estão a gostar, se o ritmo está bom, se os exemplos são simples ou difíceis, se os conseguiram pôr a funcionar, etc etc. Com o vosso feedback podemos fazer ainda melhor e ir de encontro aos vossas expectativas.
Bem, para hoje pensei em algo diferente. E que tal se os “gurus” e “não gurus” em PHP, que visitam o blog, deixarem aqui o seu contributo?
A ideia será a seguinte: Partilham algum script simples, repito simples (pode ser o vosso favorito, e que tanto jeito vos dá... - algo com um máximo de 15 a 20 linhas), e digam qual a sua finalidade. Depois podemos analisar/discutir todos os scripts disponibilizados e até escolher um TOP 3. Que dizem? Hum, já estão a pensar nos presentes? Vou falar com o “Big Boss”, para ver se ele quer virar Papa Noel
Para dar o exemplo eu vou deixar o meu contributo (ok, ok, eu estou out dos presentes…regra aceite, isto se o Big Boss concordar com a ideia), como o tenho feito nas edições anteriores.
O exemplo que vos trago hoje tem por objectivo o seguinte: Um cliente acede a uma página (que vocês vão programar), e essa mesma página devolve-vos informações sobre o browser que estão a utilizar e qual o endereço IP utilizado. Parece complicado?
O PHP faz isso na boa, meia dúzia de linhas e está feito. Se queremos “sacar” o IP do cliente, usamos a seguinte instrução: $_SERVER[‘REMOTE_ADDR’] e depois colocamos o seu conteúdo numa variável ($ip_cliente):
$ip_cliente = $_SERVER[‘REMOTE_ADDR’];
O próximo passo é sacar as informações do browser do cliente. Para isso vamos usar a instrução: $_SERVER[‘http_USER_AGENT] e colocamos o seu conteúdo também numa variável ($browser): $browser = $_SERVER[‘HTTP_USER_AGENT’];
Bem, e já temos tudo o precisamos. Agora é só mandar escrever as nossas variáveis. Segue o script completo.
POSSÍVEL OUTPUT
Como veêm de complicado não tem nada. Experimentem abrir a página que criaram com o Ffox, IE ou Opera, para verem as diferenças. Com este código podemos fazer coisas como aquelas que às vezes aparecem nas páginas...Algo do tipo: Voçês está a usar Firefox.!!!
Agora aguardo pelos vosso scripts !!!
Este artigo tem mais de um ano
Gostei da “aula” de hoje… isto fica parecido com um plugin que utilizo na área dos comentários, onde é apresentado o Browser e Sistema Operativo de quem comenta.
Podias fazer o teu próprio plugin… com a tua assinatura 😀 😀 😀
Continuação…
Excelente..tenho acompanhado desde o inicio e estou a gostar muito do modo como é explicado…simples e directo!
Continuação de bom trabalho.
Ok Pinto… depois passa na tesouraria para levantar a verba 😉 Fica combinado.
Muito bons estes artigos sobre PHP estou a utilizar agora esta linguagem por isso saber estas pequenas coisas vam me dar muito geito.
Espero que continues com estas rubricas 😉
Posso concorrer?
É que se me disserem que sim coloco aqui todas as alterações que já fiz ao motor de wordpress do Pplware e ganho isto com uma “perna às costas”!
Ou não posso porque o Vitor diz que o código é pertença do Pplware?
Vou ter de apelar ao Provedor?
muito fixe eu ja dei php e gostei mas ainda nao conhecia este codigo.
gostei bastante continua assim…
ja agora vou aceitar o teu desafio 😉
fico a espera da proxima quinta feira
ATENÇÃO ATENÇÃO !!!!
O desafio é para hoje !!!!
Excelente esta rubrica. Apenas acho que cada tutorial podia conter mais algumas informações, pois penso que é pouca matéria para “estudar” durante uma semana inteira. Uma vez que o objectivo é iniciar os leigos (meu caso) nesta programação, acho que um pouco mais de cada vez só ia alimentar a vontade de programar cada vez mais e melhor. Grande abraço.
Ora bem, duas funçõezitas muito simples que eu costumo usar:
isto fez mal o parsing do código… aqui está de forma melhor:
Ora bem, duas funçõezitas muito simples que eu costumo usar:
/* Fiz esta função há uns anos porque me dava muito trabalho fazer multiplos addslashes
o objectivo é o fazer multiplos addslashes numa só linha e retornar o array, o uso que lhe dava era algo do genero:
list($nome, $cidade, $pais) = addMultiSlashes($_POST[“nome”], $_POST[“cidade”], $_POST[“pais”]);
e agora as variaveis $nome, $cidade e $pais têm o seu conteudo “slashed”
Decidi partilhar esta função e não outra para alertar o pessoal que este tipo de coisas deve ser feita antes
de fazer sql queries para evitar sql injections. Devem ter tambem em conta que se esperam um inteiro como por exemplo
um id devem verificar se é realmente um inteiro…
Sempre que possivel (ou seja, sempre :P) deve ser feita validação dos dados enviados, a regra é verificar apenas aquilo que
é esperado, ou seja… se quero 2 letras, um espaço e um nº tenho que “matchar” isso, e não o que não tudo o resto..
Já agora no meu velhinho site, podem ver mais programas e scripts em diversas linguagens.
CoolMaster
*/
function addMultiSlashes ($entities = FALSE) {
$args = func_get_args();
$ret = array();
foreach ($args as $arg) {
if ($entities)
$arg = htmlentities($arg);
$ret[] = addslashes($arg);
}
return $ret;
}
Arre, não me lembrei que isto retirava a formatação do codigo… acho que no opera não aparecem os controlos para o code e não sei qual é de cor:] Paciencia.
Aiiiiiiiiiiiii que o pessoal que anda a tentar aprender vai-lhe dar o treco depois de ver estes código…eh eh he .. Como esperava, anda aqui pessoal que já sabe umas coisas…
Pedro Pinto
@nrocha
Aqui não dá para por bbcode, mas faz o parsing de algumas tags html 🙂
Boa função 😉
@Pedro Pinto
Penso que não estão muito complicadas, e se estiverem estamos (pelo menos eu) disponíveis a explicar “passo-a-passo” as funções.
E, pelo menos da minha parte, “vivo” do PHP, por isso é normal que saiba mais uma coisita ou outra 😉
Abraço
Nunca gostei muito de programar, mas tive sempre curiosidade em aprender… nem que fosse meia dúzia de instruções para fazer qualquer coisa.
Desde que este rubrica começou, tenho acompanhado sempre com grande entusiasmo.
No início tive alguns problemas, mas depois de investir algum tempo no notepad ++, lá descobri.
Parabéns por esta iniciativa! Continuem.
Sou programador PHP e sem como é importante esses mini-tutos, comecei a despertar o interesse com um desses, bela iniciativa!!!
Pinto, trabalho muito bom.
Sou iniciado e tenho feito as aulas todas com sucesso.
Gostava que começasses a explicar como podemos pôr isto numa página de Internet.
Obrigado
Acho melhor criarem um fórum para isto do PHP e outros
Óptimo…
Para leigos curiosos como eu, isto é ouro sobre azul…
Continuem o excelente trabalho…
Obrigado
E PHP + SQL também é útil?
Genial. Adorei. Continuem.
Por causa disto estou a aprender PHP. E espero continuar.
Mantenham a boa disposição e os tutoriais.
Grande bem-haja.
Primeiro que tudo, quero dar os parabéns pela iniciativa. Hoje, trabalho por conta própria (webdeveloper) e praticamente só trabalho com PHP e Javascript (ajax).
Os primeiros passos em PHP também foram dados com estas pequenas coisas…
A primeira coisa que se visse que fiz, foi uma “galeria”, em que me bastava por numa pasta as fotos numeradas e um txt com a descrição…. Também podem aqui tentar algo assim!
Mas, agora cá fica um dos ultimos scrips que usei. Já todos foram a sites em que temos de meter um codigo de verificação por imagem. Aqui fica um php para gerar a imagem:
Agora, basta noutro php chamar a imagem gerada por este php e comparar o valor inserido com o guardado em sessão!
Simples, e aumenta a segurança dos nossos sistemas de login.
Já agora, como sabem o PHP e o MySQL andam de mãos dadas muitas vezes e é recomendado que se saiba o minimo de SQL para conseguir ter um site minimamente dinamico (claro que podem usar ficheiros ou outra coisa qualquer para gravar informações, mas o melhor é usar um DBMS).
Em 2002 fiz um documento que da uma introdução a linguagem SQL e tenta explicar e demonstrar o que se pode fazer e como se pode fazer.
Esta em inglês (que era muito fraco na altura, por isso peço desculpa:P)
Encontra-se aqui: http://coolmaster.webhs.org/docs/sql.txt
CoolMaster
@nrocha
Parabens pelo tutorial. Eu gostei..ta porreiro.
Temos de um dia destes pensar numa rúbrica “SQL aos Domingos – antes da missa 🙂 ”
Um abraço
Pedro Pinto
ROTFL… “antes da missa” .. 😛
@ Bruno Bernardino:
Desculpa, mas há umas pontuações que não consigo perceber se são acentos, se é um apóstrofo, se são aspas. Já no post corrigido.
Preciso que passes a “papinha” pelo passador outra vez, se faz favor.
Abri ficheiro novo e escervi isto, tal e qual:
‘.$name.”;
return $link;
}
?>
e dá o seguinte erro:
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in C:\xampp\htdocs\programa04.php on line 6
Que é na linha 6, eu percebi. Onde está o erro, nem por isso. Onde está o erro? Porquê?
Obrigado,
Agapito
Ok, já percebi que isto lê o php. Só para verem com quem estão a lidar…
Mesmo erro, mas com este código ( a ver se o vêem. No principio e fim são apostrofos):
‘ ‘.$name.”;
return $link;
}
?> ‘
Agapito
Arre!
?php
‘function getLink($url,$name,$params = ”) {
‘$link = ‘ ‘.$name.’‘;
‘return $link;
‘}
?
(faltam os )
Peço desculpa, mas não dá…
:((
é o seguinte, tens de usar pelicas (‘) e não apóstrofos (`), ou aspas (“).
Tenta copiar e colar o código e vê se consegues.
O erro dá porque se começas uma string com ‘, tens de acabar com ‘ e não com “.
A ver se é desta que consigo mostrar o código. As plicas no início servem apenas para se ver o código completo, assim como os parentesis rectos
Além disto, quando escrevem ” .$url. ” e semelhantes, é para ser mesmo isso, ou é para se escrever o endereço html?
”.$name.”;
‘return $link;
‘}
‘?>
Obrigado pela paciência,
Agapito
hehe, tenta colocar isso num ficheiro de texto online ou assim e manda o link, senão nunca mais.
de qualquer das formas, qualquer string/palavra começada por um dolar ($), significa que é uma variável, ou seja, pode ter qualquer valor, por exemplo, se tiveres
Isto vai imprimir no browser:
[browser]
O URL é https://pplware.sapo.pt, ok?
[/browser]
Percebes a ideia?
Até à parte de escrever as variáveis, percebi (obrigado PPLware pelo tutorial).
O que preciso de saber é se antes de escrever a function getLink(…), tenho de escrever o .$url. = endereço que quero mostrar, o .$name.= nome que lhe quero dar e o params a mesma coisa.
Assim , percebo que a função getLink vai procurar as variáveis url,name e params a essa parte do código, fazendo-se de seguida o echo da função (mas esta parte já não tenho a certeza).
Caso esteja completamente errado, vou ter de esperar pelos próximos tutoriais, a ver se aumento o vocabulário PHP.
Caso o site traduza os nomes acima com ($), aqui fica o link para o código que tenho escrito:
http://docs.google.com/Doc?id=dcwxbzqr_12d6m7cg
Muito obrigado,
Agapito
@Agapito
Tá quase lá, trocaste o sítio onde tens de mandar os argumentos 🙂
O que deveria ser está aqui: http://www.brunobernardino.com/files/getlink.txt
Abraço e vejo-te no tutorial de hoje 😉
@Bernardino
Finalmente funciona. Eureka! Obrigado pela ajuda e pela paciência.
Obrigado ao Pplware por interagir e ajudar os seus leitores desta maneira.
É sempre bom ter quem nos ajude. Continuem assim.
Agapito