← Tutoriais

[PHP] Iniciantes, Getting Started

Lida 35679 vezes

Offline

morpheus 
Membro
Mensagens 1199 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1 1000 Posts

Ora muito bom dia:
Respeitando os (muitos) pedidos que tive relativamente ao assunto, ora cá vai:  :D

PHP: episódio nº 1 - Getting Started!

PHP... uma linguagem muito útil no dia a dia. Mas que raio é isto, perguntam vocês. PHP (que significa Hypertext PreProcessor) é uma linguagem server side que, como o nome indica, "trabalha" o código antes de este ser enviado para o browser do visitante! Neste sentido, só trás vantagens:
1- o visitante só vê o que o webmaster quer;
2- o código está sempre protegido;
3- os SE "adoram" o php porque somente veem HTML;
4- temos um controlo absoluto sobre o que é apresentado ao visitante;
5- e se eu continuar a dizer todas as razões... ficamos sem espaço para mais! ;)

Então, o que é necessário para funcionar?
A maneira mais fácil e rápida de começar a trabalhar com PHP é tendo um alojamento que já tenha suporte para PHP. Assim, todas as configurações já estão realizadas e afinadas. Para os mais arrojados, podem sempre fazer o download do EasyPHP (http://www.thewebstylist.com/php/easy-php.html) e instalar no seu próprio PC. Este pack já inclui o Apache e todos os módulos necessários para instalar um servidor caseiro com suporte PHP.

E como é que o PHP funciona?
Sem problemas.  :lol:  O PHP são comandos que são inserido no meio de código HTML! Ou seja, a página continua a ser o HTML que já conhecemos do dia a dia! :D Até um simples notepad dá para escrever php!

Vamos lá fazer um teste?
OK! depois desta pequena introdução, vamos passar á prática!
1º exercício: um comando simples de PHP:

abram o notepad e escrevam:

Código: [Seleccione]
<?php
echo "Que grande moca! Isto funciona!";
?>

guardem como teste.php, e façam o upload para uma pasta de testes (o nome não interessa) para o vosso servidor.
Testem agora no vosso browser favorito: http://www.o_vosso_servidor.com/teste.php

O que deve aparecer é somente "Que grande moca! Isto funciona!"! Podem ver o código fonte que continua a ser somente isso! ;)
Se conseguirem ver exactamente o que foi escrito no ficheiro, revejam os vossos passos. Ou algo não foi feito como aqui indica, ou o vosso servidor não suporta PHP!

Traduzindo o que fizemos:
<?php - esta é a tag em que dizemos ao servidor "aqui começa código PHP". Basicamente, é a tag de entrada!
echo "Que..."; - O comando echo. Sempre que queremos que o PHP diga algo ao servidor, usamos este comando: ECHO "whatever";. O texto tem SEMPRE que estar rodeado por " e a linha tem SEMPRE que terminar com ;
?> - da mesma maneira que abrimos a tag, temos que a fechar ;)

Este é o script mais básico que existe... um bom teste para verem se realmente perceberam a lógica da coisa! ;)

Agora, algo um bocadinho mais complicado:

Código: [Seleccione]
<?php
$i
=0;
while(
$i<10)
{
     
$i++;
     echo
"Contagem até dez: $i<br>";
}
?>

Novamente, guardem como PHP a façam o upload para o vosso servidor. Vai resultar numa linda contagem até 10!

Traduzindo:
<?php - a tag de abertura
$i=0; - definir variáveis! o PHP adora variáveis e cálculos e, através deste comando, podemos definir as variáveis que quisermos. Uma variável funciona SEMPRE com um $ antes. Ou seja, se escrevermos $var, o valor "var" é uma variável. Aqui, definimos que a variavel $i é igual a 0. E fechamos a linha com o ;
while($i<10) - aqui pomos o php a trabalhar. While, como diz a tradução enquanto a variável $i for menor que 10... faz o que estiver a seguir. O código que queremos que seja "a seguir" é rodeado por { e }. Assim, o PHP sabe que ENQUANTO aquela fórmula não se verificar, vai repetir SEMPRE aquele código.
$i++; - ora aqui temos a nossa amiga variável $i! e aqui dizemos para ela aumentar! Sempre que se põe um ++ ou um -- á frente da variável, é indicação para ela aumentar 1 valor (ou diminuir). E novamente, fechamos a linha com ;
echo"Contagem até dez: $i<br>"; - o echo. Este comando é para comunicar ao browser a variável $i! o que o visitante vai ver... é somente o valor do $i. Repararam no <br>? HTML normal! podem sempre aplicar no meio de php!;)
?> - a fechar o código!

e para já vamos ficar por aqui! se conseguirem fazer estes dois códigos e compreende-los (sim, isso é o mais importante) já deram o primeiro passo! :D

agora, como TPC:
quem consegue dizer-me como fazemos a contagem de 1 a 10, mas invertida? ou seja de 10 a 1? pensem nisso! profissionais não estão autorizados a responder a isto!  :wink:

e, é claro, estou aqui para tirar dúvidas!
portem-se bem!
Offline

Tartaruga 
Membro
Mensagens 2908 Gostos 0
Troféus totais: 29
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5 Level 4 Level 3 Level 2

Olá... td bem?
OBRIGADÃO tava mesmo a precisar disto... quero aprender PHP e não sbaia que era preciso HTML assim vou aprofundar os meus conhecimentos de HTML também!

Tenho-te a dizer que já li tudo e percebi tudo o que disseste, ainda não experimentei pk vou sair agr, mas já tenho uma dúvida e uma sugestão para a resposta.

1. Dúvida: Tipo quando tu falas de um servidor caseiro com o easy php, quais são as desvantagens disso? Fala-me mais sobre isso, se poderes... (sobre tudo mesmo, desda a ligação da internet ao resto ;))

2. Sugestão para a resposta: sinceramente a primeira coisa que me ocorre é trocar a palavra while por if e depois colocar
Código: [Seleccione]
($i=10)

e depois dentro dos { } mudar para
Código: [Seleccione]
$i--;

Não deve ser bem isso...lolol mas foi a minha tentativa depois de uma noite mal dormida!
Offline

morpheus 
Membro
Mensagens 1199 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1 1000 Posts

Citação de: "Tartaruga"
Olá... td bem?
OBRIGADÃO tava mesmo a precisar disto... quero aprender PHP e não sbaia que era preciso HTML assim vou aprofundar os meus conhecimentos de HTML também!

De nada! ;) e sim, HTML dá sempre muito jeito!
Citação de: "Tartaruga"

Tenho-te a dizer que já li tudo e percebi tudo o que disseste, ainda não experimentei pk vou sair agr, mas já tenho uma dúvida e uma sugestão para a resposta.

1. Dúvida: Tipo quando tu falas de um servidor caseiro com o easy php, quais são as desvantagens disso? Fala-me mais sobre isso, se poderes... (sobre tudo mesmo, desda a ligação da internet ao resto ;))

Posso te dizer duas muito rapidamente:
1-computador ligado 24 horas/dia ou o site não está disponível
2-Upload... muito lento... um site para estar bem disponível, acho que deve ter pelo menos 1Mb Upload... no mínimo! a net em pt normalmente tem upload de 128 ou 256...
Citação de: "Tartaruga"

2. Sugestão para a resposta: sinceramente a primeira coisa que me ocorre é trocar a palavra while por if e depois colocar
Código: [Seleccione]
($i=10)

e depois dentro dos { } mudar para
Código: [Seleccione]
$i--;

Não deve ser bem isso...lolol mas foi a minha tentativa depois de uma noite mal dormida!


eh eh boa tentativa! e não está má por completo! mas ainda não vou revelar a resposta.  :wink:
Offline

Tartaruga 
Membro
Mensagens 2908 Gostos 0
Troféus totais: 29
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5 Level 4 Level 3 Level 2

CLaro... na boa... sem problemas ;)
Offline

Ricardo75 
Membro
Mensagens 1660 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1

És o maior pá, nem sabes o jeito que me vais dar, mas continua a fazer estas aulas n pares por aqui por favor e obrigado mesmo ;)

Código: [Seleccione]
<?php
$i
=0;
while(
$i<10)
{
     
$i++;
     echo
"Contagem até dez: $i<br>";
}
?>


assi deu-me... mas na verdade não percebi muito bem  :D foi mis por tentativas depois de ver que iniciava em 9 e terminava em 1 mudei o valor para 11... vou ler outra vez a tua aula.
Offline

morpheus 
Membro
Mensagens 1199 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1 1000 Posts

parabéns, Ricardo75... tás quase, quase lá!
o resultado que te dá é esse mas esse código só precisa de um bocadinho de atenção!  :wink:
Offline

Ricardo75 
Membro
Mensagens 1660 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1

não é a parte do contagem até dez pois não? :D
Offline

morpheus 
Membro
Mensagens 1199 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1 1000 Posts

:lol:  :lol: vou dar uma pista... no original começa em 0 e acaba em 10! :wink:
Offline

vkthor 
Membro
Mensagens 34 Gostos 0
Troféus totais: 23
Trófeus: (Ver todos)
Level 5 Super Combination Combination Topic Starter Level 4 Level 3 Level 2 Level 1 10 Posts First Post

Hello teacher.
será assim?

Código: [Seleccione]
<?php
$i
=0;
while(
$i<10)
{
     
$i++;
     echo
"Contagem até dez: $i<br>";
}
?>




err... n tenho como experimentar...
pergunta: posso usar a tag <br /> ou tem de ser <br>?


PS. Erro crasso!  :oops: esqueci-me de agradecer a aula   :-)
Offline

morpheus 
Membro
Mensagens 1199 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1 1000 Posts

we have a winner!!!!  :D  :D  :D
vkthor, é mesmo isso! ;) boa!

vou partir para algo um bocado mais complicado!  :twisted:  :twisted:

uma contagem de 0 a 10... mas só numeros pares!

quem consegue?
Offline

Ricardo75 
Membro
Mensagens 1660 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1

xiiii, eu nem cheguei a perceber bem aquele, pq é que mudando o lugar daquela linha já fica a dar?  :?:
Este não faço a mínima ideia... só com a 1ª aula fica um bocado dificil, quando é que vem a próxima?  :D
Offline

morpheus 
Membro
Mensagens 1199 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1 1000 Posts

ok, eu explico:

Código: [Seleccione]
<?php
$i
=0;
while(
$i<10)
{
     
$i++;
     echo
"Contagem até dez: $i<br>";
}
?>


o PHP vai correndo as linhas por ordem, exactamente como nesta explicação:

<?php - tag de abertura;
$i=10; - a variavel i fica com um valor de dez;
while($i>0){ - enquanto $i for maior que zero, correr o que está entre { e }. aqui, $i continua a ser 10
echo"Contagem de dez a um: $i<br />"; - echo a variavel $i (continua a ser 10;
$i--; - diminuir $i por 1 valor. $i passa a ser 9;
} - já se verificou o que dizia no while? Não? então, volta atrás! e assim até $i não ser maior que 0!
?> - tag de fim.

como no html, o php vai seguindo as linhas top 2 bottom, compilando todos os comandos que estão marcados, por sucessão! trocar ali o $i--; foi crucial!

agora, quem aceita o novo desafio? vá lá! não é dificil!  :D

PS: vkthor, sim, pode ser <br />. até pode ser um <hr>! ;)
Offline

Ricardo75 
Membro
Mensagens 1660 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1

Epá já deu para entender qq coisinha...
vê se é isto:
Código: [Seleccione]
<?php
$i
=0;
while(
$i<10)
{
     
$i++;
     echo
"Contagem até dez: $i<br>";
}
?>


mas apesar de funcionar não deve ser assim pois não  :?:  principalmente a parte dos dois $i--;
Offline

morpheus 
Membro
Mensagens 1199 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1 1000 Posts

é isso, sim senhor!
a repetição do $i--; tem mesmo esse efeito: diminuir duas unidades! podem usar também $i=$i-2;

muito bem! :wink:
Offline

vkthor 
Membro
Mensagens 34 Gostos 0
Troféus totais: 23
Trófeus: (Ver todos)
Level 5 Super Combination Combination Topic Starter Level 4 Level 3 Level 2 Level 1 10 Posts First Post

Hi...
Estou mesmo a gostar disto.  :D
E se forem números ímpares? É assim?

Código: [Seleccione]
<?php
$i
=0;
while(
$i<10)
{
     
$i++;
     echo
"Contagem até dez: $i<br>";
}
?>


PS.
Acho isto mais giro que o ponto cruz  :twisted: