[Solución] Ejercicio de Programación PHP: Sistema de Consulta del Clima con Favoritos

db.php

<?php
// db.php: Configuración de conexión a la base de datos y funciones de acceso a datos.

function conectaDb() {
    try {
        $pdo = new PDO('mysql:host=localhost;dbname=nombre_de_tu_base_de_datos;charset=utf8', 'usuario', 'contraseña');
        $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        return $pdo;
    } catch (PDOException $e) {
        exit("Error: " . $e->getMessage());
    }
}

function obtenerCiudadesFavoritas($usuarioId) {
    $db = conectaDb();
    $consulta = "SELECT nombre_ciudad FROM ciudades_favoritas WHERE usuario_id = :usuario_id";
    $stmt = $db->prepare($consulta);
    $stmt->execute(['usuario_id' => $usuarioId]);
    return $stmt->fetchAll(PDO::FETCH_ASSOC);
}

function agregarCiudadFavorita($nombreCiudad, $usuarioId) {
    $db = conectaDb();
    $consulta = "INSERT INTO ciudades_favoritas (nombre_ciudad, usuario_id) VALUES (:nombre_ciudad, :usuario_id)";
    $stmt = $db->prepare($consulta);
    $stmt->execute(['nombre_ciudad' => $nombreCiudad, 'usuario_id' => $usuarioId]);
    return $stmt->rowCount();
}

function removerCiudadFavorita($nombreCiudad, $usuarioId) {
    $db = conectaDb();
    $consulta = "DELETE FROM ciudades_favoritas WHERE nombre_ciudad = :nombre_ciudad AND usuario_id = :usuario_id";
    $stmt = $db->prepare($consulta);
    $stmt->execute(['nombre_ciudad' => $nombreCiudad, 'usuario_id' => $usuarioId]);
    return $stmt->rowCount();
}

funciones.php

index.php

clima.php

favoritos.php

Last updated