PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

28
PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática www.funpar.ufpr.br:8080/naercio

Transcript of PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

Page 1: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP - Revisão

Aula R

Prof. Naércio Filho

Técnico em Informática

www.funpar.ufpr.br:8080/naercio

Page 2: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP - Revisão

Sumario– Sintaxe– Variáveis– Strings– IF– Array– Looping– Funções– Formulários– Scripts Externos– Sessão– Upload de Arquivos– Banco de Dados

Page 3: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP - Sintaxe

Sintaxe o código php é delimitado por

<?

//código

?>

Page 4: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP - Variáveis

as variáveis do php são especificadas por $ antes do nome

dispensam tipagem, ou seja, não é preciso especificar com qual tipo de dado irá se trabalhar

<?$ze = “nome”;$nu = 6;$bo = true;?>

Page 5: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP - Strings

as string em PHP possuem uma qualidade especial, as delimitadas por " serão interpretadas primeiro

por exempo<? $x = "abc"; $y = "$x def";?>o resultado será : abc defja em<? $x = "abc"; $y = '$x def';?>o resultado será apenas : $x def para concatenar uma string em php usa-se o ( . ) ponto<? $z = $x . $y; ?>o resultado será : abcdef

Page 6: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP - IF

sua estrutura em php éIf (condicao){// codigo} else {// codigo} podendo agrupar outros dentro dele, ou em seu else<?php$d=date("D");if ($d=="Fri")echo "hoje é sexta-feira =)";elseif ($d=="Sun")echo "hoje é Domingo =/";elseecho "hoje não é sexta-feira =(";?>

Page 7: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP - Arrays

permitem guardar os dados em vetores Numéricos

– possuem seu índice como um valor numérico– podem ser criados de dois modos

automaticamente$nomes = array("Joao","Maria","Jose");ou$nomes[] = "Joao";$nomes[] = "Maria";$nomes[] = "Jose";

Ou podem ser definidos manualmente$nomes = array(5 => "Joao",32 => "Maria", 26 => "Jose");ou$nomes[5] = "Joao";$nomes[32] = "Maria";$nomes[26] = "Jose";

Page 8: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP - Arrays

Associativos possuem seu índice como um texto na criação precisam ter seu índice informado explicitamente$idades = array('Joao' =>32, 'Maria' => 30, "Jose" => 34);Ou assim:$idades["Joao"] = "32";$idades["Maria"] = "30";$idades['Jose'] = "34";

Multidimensionais são arrays que possuem outros arrays dentro$nomes = array("Joao","Maria","Jose");$idades = array('Joao' =>32, 'Maria' => 30, "Jose" => 34);$turma = array($nomes, $idades);

Page 9: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP - Loopings

while verifica a condição antes de executar o bloco de códigos.while (condicao){ // bloco de codigos}<?$i=1;while($i<=5) {echo "O Numero é " . $i;$i++;}?>

Page 10: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP - Loopings

do ... while executa o bloco de comandos uma vez antes de verificar a

condiçãodo {// bloco de comandos} while (condição);

<?$i=0;do {$i++;echo "o numero é " . $i;} while ($i<5);?>

Page 11: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP - Loopings

for é usado para situações quando se conhece a quantidade de

vezes a ser repetido a cada interação haverá uma variável contador disponívelfor (inicialização; condição; incremento) { // bloco de códigos}<?for ($i=1; $i<=5; $i++) {echo "o numero é " . $i;}?>

Page 12: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP - Loopings

foreach usado em Arrays, percorre o mesmo desde sua primeira

posição até a ultima, em cada interação haverá uma variável com o índice e outra com o valor atual

foreach (array as índice => valor) {//Bloco de comandos;}<?$arr=array("um", "dois", "três");foreach ($arr as $k => $v) {

echo "Posição: ". $k;echo " Valor: " . $v;

}?>

Page 13: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP - Funções

especialmente para reutilizar códigos, as funções ainda facilitam a manutenção do código em rotinas que se repetem

function Nome_da_Funcao($parametros) {Código a ser executado;return valor de retorno;

} podem ter ou não parâmetros e um valor de retorno<?function soma($x,$y) {

$total = $x + $y;return $total;

}?>

Page 14: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP - Formulários

executam a interação entre um usuário e o sistema, são por eles que os dados serão cadastrados

<form action="entra.php" method="post">

Nome: <input type="text" name="nome" />

senha: <input type="password" name="senha" />

<input type="submit" />

</form>

o tipo de método de envio (method) ira definir como esses dados serão tratados no PHP

se esse dado for enviado pelo endereço da pagina irá ser tratado como method="get"

Page 15: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP - Variáveis Especiais

os Arrays $_GET e $_POST, irão permitir que os dados enviados por um formulário sejam acessados por uma pagina em php

nesses vetores cada um dos elementos serão um campo do formulário

Olá <?=$_POST["nome"]; ?>.<br />

Sua senha é <? echo $_POST["senha"]; ?>.

Page 16: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP - Scripts Externos

as vezes é preciso para evitar códigos duplicados deixar algumas informações em scripts únicos, então para inserir um cabeçalho, rodapé, menu, ou um pacote de funções usa-se incluir arquivos dentro de outros, esse é um modo de dizer ao PHP para procurar dados dentro de outros arquivos

Usa-se include / require<?phpinclude("pagina.php");// ourequire("pagina.php");?>

Page 17: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP – Sessão $_SESSION

o Array de sessão permite que um dado (variável) permaneça vivo durante toda a execução da aplicação

para trabalhar com sessões precisamos iniciar uma sessão (pelo php podemos deixar essa fase

automática) armazenar/ utilizar os dados destruir a sessão<? session_start(); // precisa ser a primeira coisa a ser escrita na pagina$_SESSION['USUARIO'] = 'jose'; // armazenamos os dados como em um array$_SESSION['SENHA'] = "1234";echo $_SESSION['USUARIO']. " – " . $_SESSION['SENHA']; // e acessamos assim// para destruir a sessãounset($_SESSION['USUARIO']); //podemos destruir apenas um dadosession_destroy(); // ou toda a sessão?>

Page 18: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP – Upload de Arquivos

usando o mesmo conceito de formulários, podemos enviar arquivos para a aplicação

<form action="upload.php" method="post" enctype="multipart/form-data">Arquivo:<input type="file" name="arquivo" id="arquivo" /><input type="submit"/></form>

prestamos atenção à propriedade enctype="multipart/form-data" do formulário, ela irá informar que será enviado um arquivo nesse formulário

e o campo input usamos o type="file", que irá habilitar a pesquisa e a seleção do arquivo no computador local

Page 19: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP – $_FILES

após ser enviado para o servidor para manipularmos o arquivo temos outro array do php o $_FILES que será indexado da seguinte forma:

no qual o índice "arquivo" possuirá o nome do input do type="file" no formulário

$_FILES["arquivo"]["name"] - O nome do Arquivo.

$_FILES["arquivo"]["type"] - O Tipo do Arquivo.

$_FILES["arquivo"]["size"] - O Tamanho do Arquivo em Bytes.

$_FILES["arquivo"]["tmp_name"] - O nome temporário dado ao arquivo no servidor.

$_FILES["arquivo"]["error"] - A Mensagem de erro caso exista.

Page 20: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP – $_FILES

após carregado no servidor podemos usar o comando move_uploaded_file(tmp, original); para armazenar o arquivo onde precisamos.

<? if ($_FILES["arquivo"]["error"] > 0) { echo "Codigo de Erro: " . $_FILES["arquivo"]["error"] . "<br />"; } else { if (file_exists("upload/" . $_FILES["arquivo"]["name"])) { echo $_FILES["arquivo"]["name"] . " Arquivo já existente. "; } else { move_uploaded_file($_FILES["arquivo"]["tmp_name"], "upload/" . $_FILES["arquivo"]["name"]); echo "Armazenado em: " . "upload/" . $_FILES["arquivo"]["name"]; } }?>

Page 21: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP – Banco de Dados

Ao usar bancos de dados em nossas aplicações precisamos seguir alguns passos

1 - Fazer a conexão, abrir um link de comunicação entre a aplicação e o SGDB

2 - Abrir uma transação 3 - Executar Comandos SQL, Selects,

Inserts, Updates, Deletes 4 - Finalizar a transação (commit, Rollback) 5 - Fechar a Conexão

Page 22: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP – Mysql

para o mysql podemos omitir as fazes de abrir/fechar transação

para fazer uma conexão usamos

mysql_connect(servidor,usuário,senha); Tambem precisamos escolher com qual

banco de dados trabalhar

mysql_select_db("Banco_de_dados", Id_conexão);

Page 23: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP – Mysql

para executar uma ação no banco de dados fazemos

mysql_query("sql",id_conexão); mysql_query executa qualquer

ação,comandos SQL, no banco de dados (select, insert, update, delete, create, drop, etc...)

Page 24: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP – Mysql

ao usar o mysql_query para executar um select teremos um resultado para a pesquisa, podemos acessa-lo com

mysql_fetch_array(Resultado da pesquisa); seu resultado será um array com as colunas

da tabela, como informado no sql, ou como foi definido no BD (no caso de select *)

caso seja usado para as outra ações irá retornar apenas verdade para sucesso, ou falso para falha.

Page 25: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP – Mysql

para acessar a msg de erro caso exista usa-se mysql_error();

Após utilizar a conexão com o banco é necessário fecharmos, existem dois caminhos

1 - podemos esperar a execução do código e o termino do script (mais usado)

2 - podemos usar a função mysql_close(id_conexão)

Page 26: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP – Mysql

<?phpif ($con = mysql_connect("localhost","turma","abc123")){ mysql_select_db("aula", $con); $result = mysql_query("insert into pessoa (nome, idade) values ('juvenal', 23)"); if ($result = mysql_query("SELECT nome, idade FROM pessoa")){ while($row = mysql_fetch_array($result)) { echo $row['nome'] . " - " . $row['idade']; echo "<br />"; } } else { echo mysql_error(); }} else { echo mysql_error();}?>

Page 27: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP - Exercícios

Exercícios das aulas anteriores em especial os da aula 7 de montagem de formulário e gravação de dados em um banco de dados.

Page 28: PHP - Revisão Aula R Prof. Naércio Filho Técnico em Informática .

PHP - Exercícios

Utilizando o formulário para gravação dos dados, montar um formulário para enviar usuário e senha, verificar no banco de dados se o usuário esta cadastrado, e se a senha confere, então salvar um identificador do usuário na sessão e dar acesso a ele para usar as telas de inclusão, alteração e exclusão, dos exercícios da aula 7.