Nele chamamos a função IncluiResposta , que envia a resposta para o web service(ws), que recebe a resposta e devolve para o browser.
Ao enviar a solicitação, a mesma é processada pelo ws, que devolve um json, na figura abaixo, vemos a execução direta do json, simulando a pergunta do browser.
Depois iremos criar o index.php , que monta uma interface para ser mostrada na tela.
O armazenamento das solicitações, podem ser gravadas pelo webservice, que permite gravar as respostas, para aprimoramento posterior.
Fonte do nlp.py, que gera a analise em python.
#!/usr/bin/env python3
#import pandas as pd
import sys
import numpy as np
import math
import time
import re
import random
pergunta = f'"{sys.argv[1]}"'
resposta = "Desculpe, não achei uma resposta válida"
#Iniciando o processo de analise de dados
#Devolvendo o modelo para o ws
resposta= "\"%s\""%(resposta)
print(resposta)
Neste exemplo simples porem integral, podemos notar o processo completo de desenvolvimento de chatbot, sem a implementação da parte do python, que abordaremos nos próximos tópicos.
A conexão de todos os scripts são definidos pelo código connectdb.php, conforme fragmento abaixo:
<?php
define("HOSTNAME","localhost");
define("USERNAME","php");
define("PASSWORD","123456");
define("DATABASE","testedb");
?>
$dbhandle = new mysqli(HOSTNAME, USERNAME, PASSWORD, DATABASE) or die("Erro ao conectar no banco de dados");
Nele definimos as definições de conexão que podemos chamar nos demais programas.
Web Service do PHP
Acesso a base de Pessoas, eu criei um web service bem simples.
Podemos notar que todo o serviço pesado é realizado pelo web service, ficando a responsábilidade apenas do controler de consumir as informações passadas.
Não entrarei no detalhe técnico do PHP, nem em detalhes sobre o modelo MVC.
Deixarei tal atividade para um post em momento oportuno.
Conclusão
O PHP é uma linguagem robusta e intuitiva, permitindo escrita elegante de um código limpo e eficiente.
Eu no entanto, não me considero um programador excepcional em PHP, apenas quebro o galho, criando algumas páginas e cumprindo um papel menor.
O PHP é muito mais que apresentado aqui, porem sei que isso será suficiente para dar um norte para muitos.
Espero ter ajudado, e caso tenham gostado do artigo, mandem um email para mim.
Agora iremos criar o Nosso Makefile para carregar os scripts:
Arquivo Makefile
# Script de criacao do banco de dados
# Autor Marcelo Maurin Martins
# Daa: 31/01/2022
#
APP=mysql
all: database Tabelas
database:
$(APP) < database.sql
Tabelas:
$(APP) < pessoas.sql
Em seguida iremos criar o script de criação da base de dados, database.sql:
#Cria um banco de dados em Mysql
#Autor: Marcelo Maurin Martins
#31/01/2022
create database IF NOT EXISTS `testedb`;
E por fim nossa tabela pessoas.sql
#Cria a tabela de pessoas
#Autor: Marcelo Maurin Martins
#31/01/2022
use testedb;
create table if not exists pessoas
(
idPessoa INT(6) unsigned auto_increment primary key,
nome varchar(30) not null,
dtnasc date,
profissao varchar(20),
sexo char(1),
dtchg timestamp default current_timestamp on update current_timestamp,
dtcad timestamp default current_timestamp
);
Executando Scripts
Entre na pasta scripts, para que possamos criar nossas estruturas de banco.
Digite o comando:
make
executa a criação do banco
A figura abaixo mostra sua execução
Por fim mais um vídeozinho
Permissões
Ao montar o segundo artigo lembrei que para melhorar este artigo, o ideal seria criar uma conta especifica para cada aplicação. Desta forma criei um scripts novo chamado GRANTS.SQL
Desta forma, existe essa ultima etapa. Que precisamos, que será criar um usuário para acesso a aplicação:
Criando o usuario:
CREATE USER 'seu_usuario'@'localhost' IDENTIFIED BY 'suasenha';
Dando permissão:
GRANT ALL PRIVILEGES ON * . * TO 'seu_usuario'@'localhost';
Finalizando
FLUSH PRIVILEGES;
Este procedimento será validado, quando digitarmos
mysql -h localhost -u gcc -p
Conectando em banco de dados
Pois se as permissões não estiverem corretas o usuario não conecta.
Sempre que avançarmos em uma etapa, um novo usuário será criado, neste script.
Então não estranhem se eventualmente os scripts sofrerem modificação no git.
Cenas do próximos capítulos
Agora que preparamos a cama, iremos começar a codificar nela. No próximo artigo iremos criar um crud em C para cadastrar pessoas.