Database Mysql

Quello che abbiamo visto fino ad adesso andava bene, anzi benissimo nel senso che funzionava alla perfezione senza pero’ l’ausilio di altri interventi, ma non era assolutamente la soluzione migliore.La soluzione migliore gioco di parole a parte è sicuramente quella che prevede l’utilizzo dei database e siccome stiamo utilizzando il php , il database da uitlizzare in questione è sicuramente il mysql. Quindi creaimo nel nostro phpadmin il seguente codice sql

Creare un Database Mysql per il tuo Blog

 

Database Mysql

 

DROP TABLE IF EXISTS posts;

CREATE TABLE posts (
id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY,
data DATETIME NOT NULL,
titolo VARCHAR(255),
testo TEXT
);

DROP TABLE IF EXISTS utenti;

CREATE TABLE utenti (
utente VARCHAR(20),
password VARCHAR(32)
);

INSERT INTO utenti VALUES ('CapitanBlogger', md5('segreta'));

 

nella tabella post memorizzeremo i post che andranno ad essere pubblicati enl blog

nella tabella utenti tabella di supporto , utilizzata per conetnere i dati di autenticazione dell’utente o di piu’ utenti.

a questo punto pero’ dobbiamo anche modificare alcune funzioni in pratica quella registra e leggi.. Iniziamo con la registra che cosi’ diventa

function registra($titolo, $testo) {
$conn = dbConnect();
$titolo = nl2br(htmlentities($titolo)); 
$testo = nl2br(htmlentities($testo));
$data = date("Y-m-d H:i:s");

$sql = "INSERT INTO posts(data, titolo, testo) VALUES('" 
. $data . "', '" . $titolo . "', '" . $testo . "')";
mysql_query($sql) or die("Errore nella query: " 
. $sql . "\n" . mysql_error());

mysql_close($conn);
}

 

come potete vedere grazie al mysql è addirittura diventata piu’ semplice della funzione registra antecedente.

la funzione leggi invece diventa


function leggi($da, $quanti = NULL) {
$conn = dbConnect();
$risultato = array();

$sql = "SELECT * FROM posts WHERE id >= " . $da; 
if (!is_null($quanti))
$sql .= " AND id <= " . ($da + $quanti);
$sql .= " ORDER BY data DESC";
$risposta = mysql_query($sql) or die("Errore nella query: " 
. $sql . "\n" . mysql_error());

while ($riga = mysql_fetch_row($risposta)) {
$risultato[] = $riga;
}
mysql_close($conn);

return $risultato;
}

e questa è la funzione leggi. mentre la funzione numero post deve essere sostituita con la seguente.



function numeroPost() {
$conn = dbConnect();
$sql = "SELECT MAX(id) as numero FROM posts";
$risposta = mysql_query($sql) or die("Errore nella query: " 
. $sql . "\n" . mysql_error());
$numero = mysql_fetch_row($risposta);
mysql_close($conn);

return $numero[0];
}

mentre la funzione di connessione diventa

function dbConnect() {
$conn = mysql_connect("localhost", "CapitanBlogger", "mysql_segreta") 
or die("Errore nella connessione al db: " . mysql_error());
mysql_selectdb("test")
or die("Errore nella selezione del db: " . mysql_error());
return $conn;
}

alla quale ovviamente voi dovrete sostituire i vostri dati, questi sono solo di esempio

non commentiamo piu’ di tanto gli script che ci sembrano veramente molto autoesplicativi, in ogni caso per dubbi o incertezze potete rivolgervi al forum cliccando sull’apposita voce sulla destra, saremo lieti di venire incontro alle vostre esigenze.

A questo punto il Gioco è fatto i file descritti e il database pure a domani con la lezione conclusiva