function colFotografia($camposCriterio, $criterioOrdenacion = '', $comienzo = 0, $limite = '') { if (!class_exists('AccesoDb')) { include_once "../clases/accesoDb.php"; } include_once 'fotografia.php'; // Crear un objeto Db y conectarse a la base de datos. $db = new AccesoDb(); $db->conectar(); $i = 1; // Sentencia SELECT para obtener la colección de fotografías de un usuario. $sql = "SELECT * FROM fotografia"; if (!empty($camposCriterio)) { foreach ($camposCriterio as $campo => $valor) { if ($i == 1) { $sql .= " WHERE "; } $sql .= $campo; // Si se quiere una colección en base a una etiqueta el operador de comparación será LIKE en vez de =. if ($campo != 'etiquetas') { $sql .= " = '"; $sql .= utf8_decode($valor) . "' "; } else { $sql .= " LIKE '"; $sql .= "%" . $valor . "%' "; } if ($i < count($camposCriterio)) { $sql .= " AND "; } $i++; } } if (!empty($criterioOrdenacion)) { $sql .= ' ORDER BY ' . $criterioOrdenacion; } $sql .= ' DESC'; if (!empty($comienzo) || !empty($limite)) { $sql .= " LIMIT " . $comienzo . ", " . $limite; } $resultado = $db->ejecutarSQL($sql); while ($fila = $db->siguienteFila($resultado)) { $this->colFotos[] = new Fotografia($fila['idFoto'], $fila['idUsuario'], $fila['nombreUsuario'], $fila['nombreFichero'], utf8_encode($fila['titulo']), utf8_encode($fila['descripcion']), utf8_encode($fila['categoria']), $fila['fechaSubida'], $fila['fechaTomada'], $fila['latitud'], $fila['longitud'], utf8_encode($fila['camara']), $fila['lente'], $fila['distanciaFocal'], $fila['velocidad'], $fila['apertura'], $fila['iso'], utf8_encode($fila['etiquetas']), $fila['likes'], $fila['favoritos'], $fila['visitas'], $fila['puntuacion'], $fila['descarga'], $fila['descargas']); } // Liberamos recursos. $db->liberarRecursos($resultado); // Desconectamos de la bdd. $db->desconectar(); }
function crearColeccionFavoritos() { if (!class_exists('AccesoDb')) { include_once "../clases/accesoDb.php"; } // Crear un objeto Db y conectarse a la base de datos. $db = new AccesoDb(); $db->conectar(); include_once 'favorito.php'; // Sentencia SELECT para obtener la colección de favoritos de un usuario o de una fotografía. $sql = "SELECT * FROM favoritos WHERE " . $this->campoCriterio . ' = ' . $this->id; $resultado = $db->ejecutarSQL($sql); while ($fila = $db->siguienteFila($resultado)) { $this->colFavoritos[] = new Favorito($fila['idFavorito'], $fila['idFoto'], $fila['idUsuario'], $fila['fecha']); } // Liberamos recursos. $db->liberarRecursos($resultado); // Desconectamos de la bdd. $db->desconectar(); }
function crearColeccionComentarios() { if (!class_exists('AccesoDb')) { include_once "../clases/accesoDb.php"; } // Crear un objeto Db y conectarse a la base de datos. $db = new AccesoDb(); $db->conectar(); // Sentencia SELECT para obtener la colección de comentarios referentes a la fotografía. $sql = "SELECT * FROM comentario WHERE " . $this->campoCriterio . " = '" . $this->idFoto . "' ORDER BY fecha DESC;"; $resultado = $db->ejecutarSQL($sql); require_once 'comentario.php'; while ($fila = $db->siguienteFila($resultado)) { $this->colComentarios[] = new Comentario($fila['idFoto'], $fila['idUsuario'], $fila['fecha'], utf8_encode($fila['texto'])); } // Liberamos recursos. $db->liberarRecursos($resultado); // Desconectamos de la bdd. $db->desconectar(); }
function leerListaCategorias() { // Crear un objeto db y conectar con la base de datos. if (!class_exists('AccesoDb')) { include_once "../clases/accesoDb.php"; } $db = new AccesoDb(); $db->conectar(); // Sentencia SELECT para leer la coleccin de categoras. $sql = "SELECT value, texto FROM categorias ORDER BY texto ASC;"; $resultado = $db->ejecutarSQL($sql); $listaCategorias = array(); while ($categoria = $db->siguienteFila($resultado)) { $listaCategorias[$categoria['value']] = utf8_encode($categoria['texto']); } // Liberamos recursos. $db->liberarRecursos($resultado); // Desconectamos de la bdd. $db->desconectar(); return $listaCategorias; }