Procediamo con la creazione dello script in php per la restituzione degli sport.
Utilizzare PDO per la connessione a mysql in un file separato chiamato database.php che contiene i parametri di connessione. Creare una classe da implementare con i diversi metodi necessari. Il primo metodo estrarrà l'elenco degli sport, il secondo l'estrazione dei dati relativi ad uno specifico sport.
Parte 1: Configurazione del Database (Database.php)
Creiamo un file Database.php che stabilisca la connessione al database usando PDO. Questo file conterrà una classe Database che offre un metodo per ottenere un'istanza del PDO.
<?php
class Database {
private $host = 'localhost';
private $db_name = 'nome_database'; // Sostituisci con il nome del tuo database
private $username = 'username'; // Sostituisci con il tuo username
private $password = 'password'; // Sostituisci con la tua password
public $conn;
public function getConnection() {
$this->conn = null;
try {
$this->conn = new PDO("mysql:host=" . $this->host . ";dbname=" . $this->db_name, $this->username, $this->password);
$this->conn->exec("set names utf8");
} catch(PDOException $exception) {
echo "Errore di connessione: " . $exception->getMessage();
}
return $this->conn;
}
}
?>
Parte 2: Classe per la Gestione degli Sport
Successivamente, implementiamo una classe SportManager che includerà i metodi per interagire con il database riguardo agli sport. Il primo metodo estrarrà l'elenco degli sport, mentre il secondo otterrà i dettagli di uno specifico sport.
<?php
require_once 'Database.php';
class SportManager {
private $conn;
public function __construct() {
$database = new Database();
$db = $database->getConnection();
$this->conn = $db;
}
// Metodo per ottenere l'elenco degli sport
public function getSports() {
$query = "SELECT id_sport, nome, img FROM sport";
$stmt = $this->conn->prepare($query);
$stmt->execute();
return $stmt;
}
// Metodo per ottenere i dettagli di uno specifico sport
public function getSportDetails($id_sport) {
$query = "SELECT id_sport, nome, img FROM sport WHERE id_sport = :id_sport";
$stmt = $this->conn->prepare($query);
$stmt->bindParam(':id_sport', $id_sport);
$stmt->execute();
return $stmt;
}
}
?>
Utilizzo
Per utilizzare queste classi nel tuo progetto, dovrai prima includere il file Database.php e SportManager.php nella tua pagina PHP che gestisce la visualizzazione degli sport. Poi, puoi creare un'istanza della classe SportManager e chiamare i suoi metodi per ottenere i dati che desideri visualizzare. Ecco un esempio di come potresti utilizzare il metodo getSports():
<?php
require_once 'SportManager.php';
$sportManager = new SportManager();
$stmt = $sportManager->getSports();
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
// Qui puoi utilizzare i dati, ad esempio:
echo $row['nome'] . "<br/>";
// E visualizzare l'immagine (assicurati che il campo img contenga il percorso dell'immagine o i dati binari)
}
?>