Documentación Proyecto WEB
Documentación Proyecto WEB
Materiales:
Xampp.- https://www.apachefriends.org/es/index.html
Visual Studio Code.- https://code.visualstudio.com/
Extensiones:
Bootstrap v4 Snippets
Material Icon Theme
PHP Intelephense
Emmet
Prettier – Code formatter
Codigo:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
<?php
require_once 'Config/Config.php';
$controller = ucfirst($array[0]);
$metodo = "index";
$parametro = "";
if (!empty($array[1])) {
if (!empty($array[1] != "")) {
$metodo = $array[1];
if (!empty($array[2])) {
if (!empty($array[2] != "")) {
require_once 'Config/App/Autoload.php';
require_once 'Config/Helpers.php';
$dirControllers = "Controllers/" . $controller . ".php";
if (file_exists($dirControllers)) {
require_once $dirControllers;
if (method_exists($controller, $metodo)) {
$controller->$metodo($parametro);
} else {
header('Location: '.BASE_URL.'errors');
} else {
}
?>
<?php
const DB = "tienda_web";
?>
class Controller{
//
$this->cargarModel();
$model = get_class($this)."Model";
$ruta = "Models/".$model.".php";
if (file_exists($ruta)) {
require_once $ruta;
} ?>
- Crear el archivo Autoload.php
Config/App/Autoload.php
<?php
spl_autoload_register(function($class){
if (file_exists("Config/App/".$class.".php")) {
})
?>
<?php
class Views{
if ($ruta == "home") {
$vista = "Views/".$vista.".php";
}else{
$vista = "Views/".$ruta."/".$vista.".php";
require $vista;
?>
<?php
$this->con = $this->pdo->conect();
$this->sql = $sql;
$resul = $this->con->prepare($this->sql);
$resul->execute();
$data = $resul->fetch(PDO::FETCH_ASSOC);
return $data;
$this->sql = $sql;
$resul = $this->con->prepare($this->sql);
$resul->execute();
$data = $resul->fetchAll(PDO::FETCH_ASSOC);
return $data;
$this->sql = $sql;
$this->datos = $datos;
$insert = $this->con->prepare($this->sql);
$data = $insert->execute($this->datos);
if ($data) {
$res = 1;
}else{
$res = 0;
return $res;
$this->sql = $sql;
$this->datos = $datos;
$insert = $this->con->prepare($this->sql);
$data = $insert->execute($this->datos);
if ($data) {
$res = $this->con->lastInsertId();
} else {
$res = 0;
return $res;
?>
- Crear la conexión
Config/App/Conexion.php
<?php
class Conexion{
private $conect;
$pdo = "mysql:host=".HOST.";dbname=".DB.";".CHARSET;
try {
$this->conect->setAttribute(PDO::ATTR_ERRMODE,
PDO::ERRMODE_EXCEPTION);
return $this->conect;
?>
<?php
parent::__construct();
session_start();
<?php
parent::__construct();
?>
Controllers/Errors.php
<?php
parent::__construct();
$this->views->getView('errors', "index");
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
</head>
<main class="px-3">
<h1>Not Found.</h1>
</p>
</main>
</div>
</body>
</html>