PHP - Revisão
Aula R
Prof. Naércio Filho
Técnico em Informática
www.funpar.ufpr.br:8080/naercio
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
PHP - Sintaxe
Sintaxe o código php é delimitado por
<?
//código
?>
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;?>
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
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 =(";?>
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";
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);
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++;}?>
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);?>
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;}?>
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;
}?>
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;
}?>
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"
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"]; ?>.
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");?>
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?>
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
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.
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"]; } }?>
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
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);
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...)
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.
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)
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();}?>
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.
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.
Top Related