PplWare Mobile

PHP é à quinta-feira – Aprender a programar

                                    
                                

Este artigo tem mais de um ano


Autor: Pedro Pinto


  1. S. Costa says:

    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…

  2. l3gionPT says:

    Excelente..tenho acompanhado desde o inicio e estou a gostar muito do modo como é explicado…simples e directo!

    Continuação de bom trabalho.

  3. Vítor M. says:

    Ok Pinto… depois passa na tesouraria para levantar a verba 😉 Fica combinado.

  4. Mário says:

    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 😉

  5. 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?

  6. Fernando Faria says:

    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

  7. Pedro Pinto says:

    ATENÇÃO ATENÇÃO !!!!

    O desafio é para hoje !!!!

  8. Speed says:

    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.

  9. Ora bem, duas funçõezitas muito simples que eu costumo usar:

    //-- Retorna uma string com o código HTML de um link
    //-- Ex.: getLink('https://pplware.sapo.pt','Peopleware','target="_blank"');
    //-- Output: <a href="https://pplware.sapo.pt" rel="nofollow">Peoplware</a>
    
    function getLink($url,$name,$params = '') {
    	$link = '<a>'.$name.'</a>';
    	return $link;
    }
    
    //-- Retorna uma string com o código HTML de uma imagem
    //-- Ex.: getImage('https://pplware.sapo.pt/wp-images/logo_colibri.jpg','Projecto Colibri','class="logo"');
    //-- Output: 
    
    function getImage($image,$alt,$params = "",$desc = "") {
    	if (exists($image,'','url_file')) {
    		$html = '';
    	}
    	else
    		$html = $alt;
    	return $html;
    }
    
  10. isto fez mal o parsing do código… aqui está de forma melhor:

    Ora bem, duas funçõezitas muito simples que eu costumo usar:

    //-- Retorna uma string com o código HTML de um link
    //-- Ex.: getLink('https://pplware.sapo.pt','Peopleware','target="_blank"');
    //-- Output: <a href="https://pplware.sapo.pt" target="_blank">Peoplware</a>
    
    function getLink($url,$name,$params = '') {
    	$link = '<a href="'.$url.'"';
    	if (!empty($params))
    		$link .= ' '.$params;
    	$link .= '>'.$name.'</a>';
    	return $link;
    }
    
    //-- Retorna uma string com o código HTML de uma imagem
    //-- Ex.: getImage('https://pplware.sapo.pt/wp-images/logo_colibri.jpg','Projecto Colibri','class="logo"');
    //-- Output: <img src="https://pplware.sapo.pt/wp-images/logo_colibri.jpg" alt="Projecto Colibri" title="Projecto Colibri" class="logo" />
    
    function getImage($image,$alt,$params = "",$desc = "") {
    	if (exists($image,'','url_file')) {
    		$html = '<img src="'.$image.'" alt="'.$alt.'" title="'.$alt.'"';
    		if (!empty($desc))
    			$html .= ' longdesc="'.$desc.'"';
    		if (!empty($params))
    			$html .= ' '.$params;
    		$html .= ' />';
    	}
    	else
    		$html = $alt;
    	return $html;
    }
    
  11. nrocha says:

    /* 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;
    }

  12. nrocha says:

    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.

  13. Pedro Pinto says:

    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

  14. @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

  15. AIR says:

    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.

  16. Alexandre Rangel says:

    Sou programador PHP e sem como é importante esses mini-tutos, comecei a despertar o interesse com um desses, bela iniciativa!!!

  17. JL says:

    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

  18. Nuno Amaral says:

    Acho melhor criarem um fórum para isto do PHP e outros

  19. Paulo Sousa says:

    Óptimo…

    Para leigos curiosos como eu, isto é ouro sobre azul…
    Continuem o excelente trabalho…

    Obrigado

  20. Ricardo G. says:

    E PHP + SQL também é útil?

  21. Agapito says:

    Genial. Adorei. Continuem.

    Por causa disto estou a aprender PHP. E espero continuar.
    Mantenham a boa disposição e os tutoriais.

    Grande bem-haja.

  22. Rui Peixeiro says:

    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.

  23. nrocha says:

    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

  24. Pedro Pinto says:

    @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

  25. nrocha says:

    ROTFL… “antes da missa” .. 😛

  26. Agapito says:

    @ 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

  27. Agapito says:

    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

  28. Agapito says:

    Arre!

    ?php
    ‘function getLink($url,$name,$params = ”) {
    ‘$link = ‘ ‘.$name.’‘;
    ‘return $link;
    ‘}
    ?

    (faltam os )

  29. Agapito says:

    Peço desculpa, mas não dá…
    :((

  30. é 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 “.

  31. Agapito says:

    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

  32. 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

    $url = "https://pplware.sapo.pt";
    echo "O URL é".$url.", ok?";
    

    Isto vai imprimir no browser:
    [browser]
    O URL é https://pplware.sapo.pt, ok?
    [/browser]

    Percebes a ideia?

  33. Agapito says:

    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

  34. @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 😉

  35. Agapito says:

    @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

Deixe um comentário

O seu endereço de email não será publicado.

You may use these HTML tags and attributes: <a href="" title="" rel=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

Aviso: Todo e qualquer texto publicado na internet através deste sistema não reflete, necessariamente, a opinião deste site ou do(s) seu(s) autor(es). Os comentários publicados através deste sistema são de exclusiva e integral responsabilidade e autoria dos leitores que dele fizerem uso. A administração deste site reserva-se, desde já, no direito de excluir comentários e textos que julgar ofensivos, difamatórios, caluniosos, preconceituosos ou de alguma forma prejudiciais a terceiros. Textos de caráter promocional ou inseridos no sistema sem a devida identificação do seu autor (nome completo e endereço válido de email) também poderão ser excluídos.