Javier Oltra - Diego Rodríguez - Sergio Serrano
Web de ranking simple de videojuegos.
Existen otras webs con densos análisis, detallados y con valoraciones complejas.
Nosotros ofrecemos sencillez.
Responder de manera simple una pregunta simple.
Crear un medio de opinion pública lejos de los "lobbys" influyentes del periodismo de videojuegos.
Información básica acerca de un videojuego
Contribuir con tu opinión.
Juegos | Plataformas |
Sagas | Usuarios |
$config = array();
...
$config['db_server'] = 'localhost';
...
$config['t_games'] = 'games';
...
$config['server_root'] = '/';
.
├── ...
├── classes
├── controllers
│ ├── controller1.php
│ ├── ...
│ └── controllerN.php
├── ...
├── functions
├── ...
└── templates
└── controller1
├── template1.html
└── ...
...
index.php
//Include all needed files
include_once './autoinclude.php';
autoinclude.php
//Include all the controllers
foreach (glob("./controllers/*.php") as $filename)
{
include_once $filename;
}
Original
http://isthisgamefun.com/games/top/page/2Resuelta
http://isthisgamefun.com/index.php?section=games&action=top&args=page/2.htaccess
RewriteRule ^(\w+)/(\w+)/((\w+/?)+)/?$ index.php?section=$1&action=$2&args=$3 [L]
index.php
$_GET["section"] //string - P.E. "games"
$_GET["action"] //string - P.E. "top"
$_GET["args"] //string - P.E. "page/2"
//Set the router
$router = new Router($section, $action, $args);
//If the class exist
if (class_exists($this->controller)) {
//Invoke the new class
$c = new $this->controller();
//If the class has the action method
if (method_exists($c, $this->action)) {
//Invoke the method
return $c->{$this->action}($this->args);
} else {
//Manage "Method doesn't exists"
}
} else {
//Manage "Class doesn't exists"
}
public function __construct() {
global $config;
parent::__construct();
if (!$this->isAdmin()) {
//Manage "not allowed"
}
}
protected function isAdmin() {...}
private function build() {...}
Generan excepciones controladas
Descripción
Utilizamos jQuery para validar los campos del formulario de registro.
Impedimos el envio del formulario mientras haya campos erroneos.
Además gestionamos alertas visuales de las validaciones.
Hacemos consultas AJAX al servidor para comprobar la disponibilidad de un Nick.
Si no esta disponible, el campo no es valido.
Establecimos una estimación de tiempo de 30 horas por miembro (90h).
Esa estimación no se cumplió.
90h
110h