Você está na página 1de 2

Este guio continua relacionado com o projeto ultrastar.

Pretende-se que no final deste guio, seja possvel listar os alunos com a sua respetiva foto. Comea por abrir o PhPMyAdmin e acrescenta um campo de nome imagem (varchar(50)) tua tabela aluno. No mesmo directrio onde tens vindo a trabalhar, edita a tua pgina form.php (1 guio) onde se encontra o formulrio de registo de alunos na atividade Ultrastar. Acrescenta, um elemento no formulrio do tipo FILE semelhante ao seguinte:

Figura 1 Nota: Atribui a este elemento do formulrio o nome imagem. No te esqueas tambm de acrescentar enctype = "multipart/form-data etiqueta <form> para indicar que os dados a submeter so binrios.

Edita a pgina inserir.php (1 guio) e acrescenta o cdigo necessrio para captar o nome, tamanho, tipo e nome temporrio da imagem inserida.
Ajuda: no te esqueas que estas informaes esto acessveis no array associativo $_FILES[nome_dado_ao_elemento_do_form_tipo_FILE][informao_a_obter]

Cria um directrio de nome fotos dentro da pasta onde tens vindo a trabalhar. Na pgina inserir.php acrescenta o cdigo necessrio enviar a foto para a pasta fotos. Ateno, este cdigo apenas pode ser executado caso se verifique que o utilizador que se est a registar ainda no existe na BD.
Ajuda: no te esqueas que, para enviares um ficheiro para o servidor tens de utilizar uma funo que te permita efetuar o upload move_uploaded_file($nome_temporrio, $Path). O nome temporrio podes obt-lo atravs de $_FILES[name_input_file][tmp_name].

Altera a query (Insert aluno values) existente no cdigo inserir.php, para que seja possvel adicionar ao novo campo da tabela (imagem) a Path para o local onde se encontra no servidor.
Ajuda: podes obter o caminho atravs de $Path=diretorio_serv/.$_FILES[name_input_file][name];

Insere, atravs do formulrio de registo, 3 alunos com fotos distintas.

Altera o ficheiro listar.php para que seja possvel listar os alunos com a sua respetiva foto.

Figura 2 Ajuda: utiliza a seguinte linha de cdigo para conseguires imprimir a imagem na tabela.

Ateno as imagens tm de ficar todas com 65X65. Nota: para o caso do aluno no possuir qualquer PATH no campo imagem da tabela aluno, mostra a imagem disponvel para download no website de nome semfoto.jpg.

Ateno existem ainda problemas por resolver como: - impedir que o utilizador envie ficheiros que no sejam imagens; - impedir o upload de imagens que ocupem muito espao no servidor; - impedir que duas imagens, ao serem enviadas por utilizadores diferentes mas com o mesmo nome, apenas prevalea a ltima (substituio do ficheiro). Estes so os desafios para a prxima aula de RC.

Você também pode gostar