function eliminarColeccionFavoritos() { // Crear un objeto Db y conectarse a la base de datos. if (!class_exists('AccesoDb')) { include_once "../clases/accesoDb.php"; } $db = new AccesoDb(); $db->conectar(); $sql = "DELETE FROM favoritos WHERE " . $this->campoCriterio . " = '" . $this->id . "';"; $db->ejecutarSQL($sql); // TODO: Comprobar si la sentencia se ha ejecutado correctamente. // Desconectamos de la bdd. $db->desconectar(); }
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 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; }
function eliminarLike($camposCriterio) { if (!class_exists('AccesoDb')) { include_once "../clases/accesoDb.php"; } // Crear un objeto Db y conectar con la base de datos. $db = new AccesoDb(); $db->conectar(); $ok = false; // Sentencia DELETE para eliminar uno o varios likes de la BDD. $i = 1; $sql = 'DELETE FROM likes '; foreach ($camposCriterio as $campo => $valor) { if ($i == 1) { $sql .= " WHERE "; } $sql .= $campo . " = '" . $valor . "' "; if ($i < count($camposCriterio)) { $sql .= " AND "; } $i++; } if ($db->ejecutarSQL($sql)) { $ok = true; } // Desconexión del servidor de base de datos. $db->desconectar(); return $ok; }
function eliminarComentario() { // 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(); // Ejecución de la sentencia SQL que comprueba si el comentario existe en la bdd. $db->ejecutarSQL($sql); // Sentencia DELETE para eliminar el comentario. $sql = "DELETE FROM comentario WHERE idComentario = " . $this->idComentario . ";"; // Ejecución de la sentencia SQL que elimina la foto de la bdd. $db->ejecutarSQL($sql); // Desconexión del servidor de base de datos. $db->desconectar(); }
function eliminarFoto() { // 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(); // Creamos una colección de todos sus likes y la eliminamos. include_once 'colLikes.php'; $colLikes = new ColLikes('idFoto', $this->idFoto); $colLikes->eliminarColeccionLikes(); // Creamos una colección de todos sus favoritos y la eliminamos. include_once 'colFavoritos.php'; $colFavoritos = new ColFavoritos('idFoto', $this->idFoto); $colFavoritos->eliminarColeccionFavoritos(); // Creamos una colección de todos sus descargas y la eliminamos. include_once 'colDescargas.php'; $colDescargas = new ColDescargas('idFoto', $this->idFoto); $colDescargas->eliminarColeccionDescargas(); // Creamos una colección de todos sus comentarios y la eliminamos. include_once 'colComentario.php'; $colComentarios = new ColComentario('idFoto', $this->idFoto); $colComentarios->eliminarColeccionComentarios(); // Borrar del disco los ficheros (imágenes) asociados a esta foto. $ok = true; $fichero = '../imagenes/usuarios/' . $this->nombreUsuario . '/miniaturas/' . $this->nombreFichero; if (!unlink($fichero)) { $ok = false; } $fichero = '../imagenes/usuarios/' . $this->nombreUsuario . '/muestra/' . $this->nombreFichero; if (!unlink($fichero)) { $ok = false; } $fichero = '../imagenes/usuarios/' . $this->nombreUsuario . '/originales/' . $this->nombreFichero; if (!unlink($fichero)) { $ok = false; } if (!$ok) { echo 'Se ha producido un error al acceder al disco para borrar los ficheros asociados a esta fotografía'; } // Eliminamos los likes y favoritos de esta fotografía. // Sentencia DELETE para eliminar una noticia. $resultado = false; if ($sql = "DELETE FROM fotografia WHERE idFoto = " . $this->idFoto . ";") { $resultado = true; } // Ejecución de la sentencia SQL que elimina la foto de la bdd. $db->ejecutarSQL($sql); // Desconexión del servidor de base de datos. $db->desconectar(); return $resultado; }
function eliminarUsuario() { //$camposCriterio = array('idUsuario' => $this->idUsuario); //$this->leerUsuario($camposCriterio); if (!class_exists('AccesoDb')) { include_once "../clases/accesoDb.php"; } // Crear un objeto Db y conectar con la base de datos. $db = new AccesoDb(); $db->conectar(); // Creamos una colección de todas sus fotografías y la eliminamos. include_once "colFotografia.php"; $camposCriterio = array('idUsuario' => $this->idUsuario); $colFotografias = new ColFotografia($camposCriterio, 'fechaSubida'); $colFotografias->eliminarColeccionFotografias(); // Creamos una colección de todos sus likes y la eliminamos. include_once 'colLikes.php'; $colLikes = new ColLikes('idUsuario', $this->idUsuario); $colLikes->eliminarColeccionLikes(); // Creamos una colección de todos sus favoritos y la eliminamos. include_once 'colFavoritos.php'; $colFavoritos = new ColFavoritos('idUsuario', $this->idUsuario); $colFavoritos->eliminarColeccionFavoritos(); // Creamos una colección de todas sus descargas y la eliminamos. include_once 'colDescargas.php'; $colDescargas = new ColDescargas('idUsuario', $this->idUsuario); $colDescargas->eliminarColeccionDescargas(); // Creamos una colección de todos sus comentarios y la eliminamos. //include_once('colComentario.php'); //$colFavoritos = new colComentario('idUsuario', $this->idUsuario); //$colFavoritos->eliminarColeccionComentarios(); // Borrar foto de perfil en el caso de que la haya. if ($this->foto != 'defecto' || $this->foto != '') { unlink("../imagenes/usuarios/" . $this->nombreUsuario . "/perfil/" . $this->foto); unlink("../imagenes/usuarios/" . $this->nombreUsuario . "/perfil/" . $this->nombreUsuario . "Mini.jpg"); } // Borrar carpetas de usuario. rmdir("../imagenes/usuarios/" . $this->nombreUsuario . "/muestra"); rmdir("../imagenes/usuarios/" . $this->nombreUsuario . "/miniaturas"); rmdir("../imagenes/usuarios/" . $this->nombreUsuario . "/originales"); rmdir("../imagenes/usuarios/" . $this->nombreUsuario . "/perfil"); rmdir("../imagenes/usuarios/" . $this->nombreUsuario); // Sentencia DELETE para eliminar al usuario. $sql = "DELETE FROM usuario WHERE idUsuario = " . $this->idUsuario . ";"; $ok = false; // Ejecución de la sentencia SQL que elimina la foto de la bdd. if ($db->ejecutarSQL($sql)) { $ok = true; } // Desconexión del servidor de base de datos. $db->desconectar(); return $ok; }