El último archivo que nos falta analizar es el de 'productos.php' y tiene por objetivo responder a preguntas sobre la tabla MySQL de productos.
productos.php<?php //******************************Consultas sobre productos */ function consultasSobreProductos() { global $palabras; if (strpos($_GET['oracion'], "producto numero") !== false ) { $numero = $palabras[count($palabras) - 1]; articuloNumero($numero); exit(); } if (strpos($_GET['oracion'], "precios de") !== false || strpos($_GET['oracion'], "precio de") !== false) { $categoria = ''; for ($inicio = 2; $inicio < count($palabras); $inicio++) { $categoria .= $palabras[$inicio] . " "; } preciosDe(trim($categoria)); exit(); } } function articuloNumero($numero) { $conexion = retornarConexion(); $datos = mysqli_query($conexion, " select codigo,descripcion,precio from productos where codigo=$numero "); $resultado = mysqli_fetch_all($datos, MYSQLI_ASSOC); echo json_encode($resultado); } function preciosDe($categoria) { $conexion = retornarConexion(); $datos = mysqli_query($conexion, " select pro.descripcion as nombre, precio from productos as pro inner join categorias as cate on cate.codigo=pro.codigocategoria where cate.descripcion='$categoria' "); $resultado = mysqli_fetch_all($datos, MYSQLI_ASSOC); echo json_encode($resultado); } ?>
Podemos consultar un producto por su número:
El resultado se logra mediante la ejecución del comando SQL siguiente:
function articuloNumero($numero) { $conexion = retornarConexion(); $datos = mysqli_query($conexion, " select codigo,descripcion,precio from productos where codigo=$numero "); $resultado = mysqli_fetch_all($datos, MYSQLI_ASSOC); echo json_encode($resultado); }
También podemos consultar todos los productos de una determinada categoría:
Como vemos debemos capturar las distintas consultas que puede hacer un usuario y generar los comandos SQL que respondan a los mismos.