/** * Presenta un solo los juegos de tablero * @param array $datos */ public function index(array $datos = array()) { if (isset($_GET['p3'])) { $articulo_nombre = str_replace("-", " ", $_GET['p4']); //$articulo_nombre = mysql_escape_string($articulo_nombre); //printf("Escaped string: %s\n", $articulo_nombre); print $articulo_nombre; $clausulas['where'] = " nombre like '%{$articulo_nombre}%' "; //$clausulas['where'] = " id = {$_GET['p3']} "; } if (!($filas = \modelos\Datos_SQL::select($clausulas, self::$tabla))) { $datos['mensaje'] = 'El articulo seleccionado no se encuentra en nuestro catálogo de productos'; \core\Distribuidor::cargar_controlador('mensajes', 'mensaje', $datos); return; } else { $datos['articulo'] = $filas[0]; //Usando articulo_id como FK $articulo_id = $filas[0]['id']; $clausulas['where'] = " articulo_id = {$articulo_id} "; $clausulas['order_by'] = 'fecha_comentario desc'; $datos["comentarios"] = \modelos\Modelo_SQL::table(self::$tabla2)->select($clausulas); //Usando articulo_nombre como FK // $clausulas['where'] = " articulo_nombre like '%$articulo_nombre%' "; // $clausulas['order_by'] = 'fecha_comentario desc'; // $datos["comentarios"] = \modelos\Modelo_SQL::table(self::$tabla2)->select($clausulas); } //Mostramos los datos a modificar en formato europeo. Convertimos el formato de MySQL a europeo para su visualización self::convertir_formato_mysql_a_ususario($datos['articulo']); self::convertir_formato_mysql_a_ususario($datos['comentarios']); $datos['view_content'] = \core\Vista::generar(__FUNCTION__, $datos); $http_body = \core\Vista_Plantilla::generar('DEFAULT', $datos); \core\HTTP_Respuesta::enviar($http_body); }
public function getTeams_byConferenceName($conf_nombre_es) { $table_conf = \modelos\Modelo_SQL::get_prefix_tabla(self::$table_confs); $sql = "select * from {$table_conf} where nombre_es = {$conf_nombre_es}"; $conferencia = \core\sgbd\mysqli::execute($sql); $clausulas['where'] = " {$conferencia['siglas']}"; $teams = \modelos\Modelo_SQL::table(self::$table_teams)->select($clausulas); return $teams; }
public function confirmar_alta(array $datos = array()) { $validaciones = array('id' => 'errores_requerido && errores_numero_entero_positivo && errores_referencia:id/usuarios/id', 'key' => 'errores_requerido'); // Añadimos la fecha confirmaciondel alta, que no ha venido por post. $_POST["fecha_confirmacion_alta"] = date("d/m/Y H:i:s"); $_REQUEST["fecha_confirmacion_alta"] = date("d/m/Y H:i:s"); if (!($validacion = !\core\Validaciones::errores_validacion_request($validaciones, $datos))) { $datos['mensaje'] = 'Petición incorrecta.'; return \core\Distribuidor::cargar_controlador('mensajes', 'mensaje', $datos); } else { $datos["values"]["key"] = urldecode($datos["values"]["key"]); $clausulas['where'] = " id = {$datos['values']['id']} and clave_confirmacion = '{$datos['values']['key']}' and fecha_confirmacion_alta is not null "; $filas = \modelos\Modelo_SQL::table("usuarios")->select($clausulas); if (count($filas)) { // El usuario esta confirmado previamente $datos['mensaje'] = "Este proceso de confirmación lo realizazó en una fecha anterior: " . \core\Conversiones::fecha_hora_mysql_a_es($filas[0]['fecha_confirmacion_alta']); \core\Distribuidor::cargar_controlador('mensajes', 'mensaje', $datos); return; } else { $clausulas['where'] = " id = {$datos['values']['id']} and clave_confirmacion = '{$datos['values']['key']}' and fecha_confirmacion_alta is null "; $filas = \modelos\Modelo_SQL::table("usuarios")->select($clausulas); if (count($filas) == 1) { // El usuario es correcto y está sin confirmar unset($datos['values']['key']); $datos['values']['fecha_confirmacion_alta'] = gmdate("Y-m-d h:i:s"); $resultado = \modelos\Modelo_SQL::tabla("usuarios")->update($datos['values']); $datos['mensaje'] = "Proceso de confirmación completado fecha: {$datos['values']['fecha_confirmacion_alta']}. Ya puedes loguearte"; $datos['url_continuar'] = \core\URL::generar_sin_idioma("usuarios/form_login"); \core\Distribuidor::cargar_controlador('mensajes', 'mensaje', $datos); } else { $datos['mensaje'] = "Error indeterminado. Disculpa las molestias."; \core\Distribuidor::cargar_controlador('mensajes', 'mensaje', $datos); } } } }
public function busqueda(array $datos = array()) { $validaciones = array("buscar_nombre" => "errores_texto"); if (!($validacion = !\core\Validaciones::errores_validacion_request($validaciones, $datos))) { $datos["errores"]["errores_validacion"] = "Corrija los errores, por favor."; } else { if (!strlen($datos["values"]["buscar_nombre"])) { header("Location: " . \core\URL::generar("inicio")); return; } $next_art = isset($_REQUEST['p4']) ? $_REQUEST['p4'] : 0; $next_art *= self::$num_arts_por_pag; $clausulas['order_by'] = 'nombre'; $clausulas['limit'] = $next_art . "," . self::$num_arts_por_pag; //$datos["filas"] = \modelos\self::$tabla::select($clausulas, "self::$tabla"); // Recupera todas las filas ordenadas $datos["filas"] = \modelos\Modelo_SQL::table(self::$tabla)->select($clausulas); // Recupera todas las filas ordenadas $busqueda = isset($datos["values"]["buscar_nombre"]) ? $datos["values"]["buscar_nombre"] : ''; $_SESSION['busqueda'] = $busqueda; $clausulas["where"] = "nombre like '%{$busqueda}%' "; $datos["filas"] = \modelos\Modelo_SQL::table("articulos")->select($clausulas); $sql = "select count(*) as num_total_juegos from 3da2_articulos where " . $clausulas['where']; $datos["num_total_juegos"] = \modelos\Modelo_SQL::execute($sql); if ($datos["num_total_juegos"][0]['num_total_juegos'] == 0) { $datos['mensaje'] = '<b>No se encontraron articulos que coincidan con la busqueda especificada</b>'; \core\Distribuidor::cargar_controlador('mensajes', 'mensaje', $datos); } //Mostramos los datos a modificar en formato europeo. Convertimos el formato de MySQL a europeo self::convertir_formato_mysql_a_ususario($datos['filas']); $datos['view_content'] = \core\Vista::generar('index', $datos); $http_body = \core\Vista_Plantilla::generar("DEFAULT", $datos); \core\HTTP_Respuesta::enviar($http_body); } }
public static function getJuegos_by_categoria($categoria) { $clausulas['where'] = self::soloJuegosBasicos($clausulas); //sacamos el id de la categoria $table = \modelos\Modelo_SQL::get_prefix_tabla(self::$tabla_cat); $sql = "select id from {$table} where categoria like '%{$categoria}%'"; $categorias = \modelos\Modelo_SQL::execute($sql); if (!count($categorias)) { $table = \modelos\Modelo_SQL::get_prefix_tabla(self::$tabla_req); $sql = "select id from {$table} where tipo like '%{$categoria}%'"; $categorias = \modelos\Modelo_SQL::execute($sql); if (!count($categorias)) { return; } //Por número $num = (int) substr($categoria, 0, 1); if ($num == 0) { $num = 1; } if ($categoria === '2jugadores') { //numero exacto para 2 jugadores $clausulas['where'] .= " and requerimiento_id = {$categorias[0]['id']}"; } else { $clausulas['where'] .= " and ( requerimiento_id = {$categorias[0]['id']} or (num_min_jug = {$num} and num_max_jug >= {$num}) )"; //categoria extraida } $juegos = \modelos\Modelo_SQL::table(self::$tabla_j)->select($clausulas); return $juegos; } else { $clausulas['where'] .= " and categoria_id = {$categorias[0]['id']} "; //categoria extraida return \modelos\Modelo_SQL::table(self::$tabla_j)->select($clausulas); } }
private static function buscarInmuebles(array $post = array()) { //var_dump($post); //Clausulas para la busqueda: if (isset($post['referencia']) && $post['referencia'] != '') { $post['referencia'] = trim($post['referencia']); //Eliminamos los espacios en blanco del inicio y final $clausulas['where'] = " referencia like '%{$post['referencia']}%'"; } else { $clausulas['where'] = " 1 "; //Siempre es true if (isset($post['tipo_inmueble']) && $post['tipo_inmueble'] != '') { $clausulas['where'] .= " and tipo like '{$post['tipo_inmueble']}'"; } if (isset($post['buscar_nombre'])) { $clausulas['where'] .= " and ( localidad like '%{$post['buscar_nombre']}%' or provincia like '%{$post['buscar_nombre']}%' or cp = '{$post['buscar_nombre']}' )"; } //Si precio_venta es igual a cero quiere decir que esta para alquilar y viceversa. Si amboa son cero saldrá en ambas consultas. if (isset($post['tipo_transacion']) && $post['tipo_transacion'] != '') { if ($post['tipo_transacion'] === 'venta') { $clausulas['where'] .= " and (precio_alquiler = 0 or precio_venta > 0)"; if (isset($post['precio_max']) && $post['precio_max'] != '') { $clausulas['where'] .= " and precio_venta <= '{$post['precio_max']}'"; } } elseif ($post['tipo_transacion'] === 'alquiler') { $clausulas['where'] .= " and (precio_venta = 0 or precio_alquiler > 0)"; if (isset($post['precio_max']) && $post['precio_max'] != '') { $clausulas['where'] .= " and precio_alquiler <= '{$post['precio_max']}'"; } } } elseif (isset($post['precio_max']) && $post['precio_max'] != '') { $clausulas['where'] .= " and ( precio_venta <= '{$post['precio_max']}' "; $clausulas['where'] .= " or ( precio_alquiler <= '{$post['precio_max']}' and precio_alquiler <> 0 ) ) "; } $clausulas['order_by'] = ' rand()'; } $datos["bienes"] = \modelos\Modelo_SQL::table(self::$tabla)->select($clausulas); // Recupera todas las filas ordenadas //$datos["bienes"] = \modelos\Modelo_SQL::execute($sql); //var_dump($datos); //¡¡OJO!! no hacemos la conversión y habrá que hacerla luego en la vista mediante el modelo return $datos['bienes']; }