Parte 3 – Desenvolvendo o relatório web de clientes

Neste artigo irei criar um relatório web que, quando acessado, irá possibilitar que o usuário veja a lista de clientes cadastrados, salvos na tabela cliente, abordada no artigo anterior.

Diretório do projeto

O primeiro passo é criar um diretório em nosso domínio, no qual iremos inserir os arquivos da camada web. Para acessar e manipular os arquivos no servidor web eu utilizo o FileZilla.

Então, após se conectar ao seu servidor web, crie um novo diretório chamado sistemadeclientes. No meu caso, irei criar esse diretório em meu domínio www.diegocavalca.com, mais precisamente dentro da subpasta articles, conforme pode ser observado na imagem abaixo.

ftp-createfolder

Relatório de clientes

Com esse diretório criado, irei criar o arquivo responsável por ser o relatório de clientes, que irá se conectar ao banco de dados, consultar todos os registros cadastrados na tabela cliente e listar essas informações para que o usuário possa visualizá-las quando acessar o site.

Então, com o Notepad++, irei criar um novo arquivo e salvá-lo em minha máquina como relatorio.php e este terá o seguinte código-fonte:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8"/>
		<title>Sistema de Clientes</title>

		<!-- Bootstrap Framework -->
		<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
		<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap-theme.min.css">
		<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
	</head>
	<body>

		<h1 align="center">Relatório de Clientes</h1>

		<?php
		# Abrir conexão com banco de dados...
		$conexao = new MySQLi("SERVIDOR","USUARIO","SENAH","BANCO_DE_DADOS");

		# Validar se houve conexão...
		if(!$conexao){ echo "Não foi possível se conectar ao banco de dados"; exit;}

		# Selecionar todos os cadastros da tabela 'cliente'...
		$registros = $conexao->query("select * from cliente");

		# Verificar se há registros na tabela...
		if($registros->num_rows>0){

			# Tabela da listagem...
			echo'
			<table class="table table-striped table-hover">
				<thead>
					<th><center>CÓDIGO</center></th>
					<th>NOME</th>
					<th><center>TELEFONE</center></th>
					<th><center>EMAIL</center></th>
				</thead>
				<tbody>';

				# Listar os clientes cadastrados...
				while($cliente = $registros->fetch_array(MYSQL_BOTH)){
					echo '
					<tr>
						<td align="center">'.$cliente["CODIGO"].'</td>
						<td>'.utf8_encode($cliente["NOME"]).'</td>
						<td align="center">'.$cliente["TELEFONE"].'</td>
						<td align="center">'.$cliente["EMAIL"].'</td>
					</tr>';
				}

				echo'
				</tbody>
			</table>';

		}else{
			echo "Nenhum registro encontrado na tabela 'cliente'.";
			exit;
		}

		# Encerrar conexão...
		$conexao->close();
		?>
	</body>
</html>

IMPORTANTE: Observe que na linha 18 (código acima) estou realizando a conexão com o banco de dados. É nesta linha que você deverá colocar as informações referentes a sua hospedagem e seu banco de dados, conforme havia pontuado no artigo anterior.

Após criar e salvar o arquivo relatorio.php, citado anteriormente, você deverá enviá-lo via FTP (FileZilla) para seu domínio, no diretório sistemadeclientes, recém-criado a pouco em nosso artigo.

Para facilitar o entendimento, observe a imagem abaixo, no qual mostro onde esse arquivo do relatório deverá ficar em seu domínio.

Com isso, ao acessarmos a URL referente a este arquivo, podemos visualizar os registros salvos em nosso banco de dados, mais especificamente na tabela cliente.

Neste momento, o relatório de clientes (web) está disponível em http://diegocavalca.com/articles/sistemadeclientes/relatorio.php

De modo geral, vemos a lista de registros salvos na tabela cliente através de uma interface web em nosso sistema.

No próximo artigo irei mostrar como construir a API (Webservice) que vai permitir que estas mesmas informações – de clientes cadastrados no banco de dados – sejam entregues para outras plataformas, incluindo nosso futuro aplicativo mobile.

Continue: Parte 4 – Construindo a API para integração de dados

Written by Diego Cavalca

Graduado em Análise e Desenvolvimento de Sistemas pela UNILINS em 2012, atualmente Mestrando em Ciência da Computação na Universidade Federal de São Carlos (UFSCar).

  • Diego Parabéns!

    só que o index.php está dando erro!

    Warning: require(Slim/Slim.php): failed to open stream: No such file or directory in /home/u258017540/public_html/articles/sistemadeclientes/api/index.php on line 6

    Fatal error: require(): Failed opening required ‘Slim/Slim.php’ (include_path=’.:/opt/php-5.4/pear’) in /home/u258017540/public_html/articles/sistemadeclientes/api/index.php on line 6