PHP 8 Free Course
PHP 8 Free Course

Corso PHP 8 Gratis – Lezione 9: Interazione con il Database in PHP

Introduzione

Interagire con un database è una parte fondamentale dello sviluppo web, permettendo di memorizzare, recuperare e gestire dati in modo efficiente. PHP 8 offre diverse estensioni per lavorare con database, tra cui MySQLi e PDO. In questa lezione, esploreremo come connettersi a un database, eseguire query e gestire i risultati in PHP 8. Per un ripasso delle lezioni precedenti o per navigare attraverso il corso, visita la pagina indice del corso PHP 8 gratis.

MySQLi vs PDO

PHP offre due estensioni principali per lavorare con database MySQL: MySQLi (MySQL Improved) e PDO (PHP Data Objects). Entrambe le estensioni forniscono un set di funzionalità per interagire con il database, ma ci sono alcune differenze chiave che possono influenzare la scelta tra l’una o l’altra.

  • MySQLi:
  • Specifico per database MySQL.
  • Fornisce una API procedurale e orientata agli oggetti.
  • Supporta transazioni, stored procedures e altre funzionalità specifiche di MySQL.
  • La scelta ideale se si lavora esclusivamente con database MySQL.
<?php
$mysqli = new mysqli("localhost", "utente", "password", "database");
$result = $mysqli->query("SELECT * FROM utenti");
// ...
$mysqli->close();
?>
  • PDO:
  • Driver neutro per il database, supporta molti database diversi.
  • Fornisce solo una API orientata agli oggetti.
  • Supporta transazioni, prepared statements, ma non tutte le funzionalità specifiche del database sono disponibili.
  • La scelta ideale se si prevede di lavorare con diversi tipi di database o si preferisce una API orientata agli oggetti.
<?php
$pdo = new PDO('mysql:host=localhost;dbname=database', 'utente', 'password');
$stmt = $pdo->prepare("SELECT * FROM utenti");
$stmt->execute();
// ...
$pdo = null;
?>

La scelta tra MySQLi e PDO dipenderà dalle tue esigenze specifiche e dalla struttura del tuo progetto. Entrambe le estensioni sono solide e ben supportate, quindi la scelta dipenderà principalmente dalle tue preferenze personali e dai requisiti del tuo progetto.

Connessione al Database

Per interagire con un database, il primo passo è stabilire una connessione utilizzando l’estensione MySQLi o PDO.

<?php
$mysqli = new mysqli("localhost", "utente", "password", "database");

if ($mysqli->connect_error) {
    die("Errore di connessione: " . $mysqli->connect_error);
}
?>

Spiegazione del Codice:

  • Si crea un nuovo oggetto mysqli per connettersi al database.
  • Se c’è un errore di connessione, lo script termina e mostra un messaggio di errore.

Esecuzione di Query

Una volta stabilita la connessione, si possono eseguire query SQL sul database.

<?php
$query = "SELECT * FROM utenti";
$result = $mysqli->query($query);

if (!$result) {
    echo "Errore nella query: " . $mysqli->error;
}
?>

Spiegazione del Codice:

  • Si crea una stringa di query SQL.
  • Si esegue la query utilizzando il metodo query() dell’oggetto mysqli.
  • Se c’è un errore nella query, viene visualizzato un messaggio di errore.

Gestione dei Risultati

Dopo aver eseguito una query, è possibile gestire i risultati per recuperare i dati.

<?php
if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        echo "Nome: " . $row["nome"] . " - Email: " . $row["email"] . "<br>";
    }
} else {
    echo "0 risultati";
}

$result->close();
$mysqli->close();
?>

Spiegazione del Codice:

  • Si controlla se ci sono righe nel risult

ato usando la proprietà num_rows.

  • Se ci sono righe, si itera attraverso di esse usando un ciclo while e il metodo fetch_assoc() per recuperare ogni riga come un array associativo.
  • Si stampa a schermo il nome e l’email di ogni utente.
  • Se non ci sono righe, si stampa un messaggio che indica “0 risultati”.
  • Infine, si chiude il risultato e la connessione al database con i metodi close().

Esercizi Pratici

  1. Connessione e Query: Crea uno script PHP per connettersi a un database, eseguire una query e visualizzare i risultati.
  2. Gestione degli Errori: Aggiungi la gestione degli errori allo script per gestire eventuali errori di connessione o di query.

Approfondimenti e Risorse Aggiuntive per il Corso PHP 8 Gratis

Hai completato la Lezione 9 del nostro corso PHP 8 gratis! Per approfondire ulteriormente i tuoi studi e scoprire altri argomenti interessanti relativi alla programmazione, ti invitiamo a visitare la nostra sezione dedicata alla programmazione sul blog.


Interagire con un database è una delle operazioni più comuni nello sviluppo web, e PHP 8 rende questa operazione semplice e sicura. Con una comprensione solida delle tecniche presentate in questa lezione, sarai in grado di creare applicazioni PHP robuste e dinamiche che interagiscono con un database. Per approfondire ulteriormente l’argomento puoi consultare la sezione dedicata ai database nella documentazione ufficiale.

Questo articolo ha un commento

Lascia un commento