Home
Forum
Inserisci
   
Home
Home
Forum
Inserisci
 
 
_______________________________________________________________________________________________________________________________________________________________________
 
 
  Inserisci un tutorial  
  Totale contenuti: 114
   
 
Sito3D.com Ultimi 15 Tutorial Tutorial
 
   
   
   
   
   
   
   
   
   
   
   
   
   
     
 
Sito3D.com Ultimi 15 Tutorial Template
 
   
   
     
 
Sito3D.com Ultimi 15 Tutorial Guide
 
   
   
   
   
     
 
Sito3D.com Ultimi 15 Tutorial Corsi
 
   
     
 
Contenuti sponsorizzati
 
 
 
 
     
     
 
 
Siete qui: Home > Tutorial > PhP & MySql > Progetti Generali > Libreria Online
 
     
 
PhP & MySql: Progetti Generali: Libreria Online
 
     
 
Categoria:
 
PhP & MySql
Aggiunto:
 
07/10/2007
Anteprima:
 
No
Download:
 
 
     
 

In questo tutorial creeremmo un applicazione che gestisce l’inserimento e la cancellazione dei libri da un database.
Lo scopo e’ quello di illustrare le operazioni quali:

 

1. connessione ad un database mysql.

2. inserimento di elementi nel database
3. cancellazione di elementi dal database
 

L’applicazione e’ stata scritta interamente in PHP quindi si vedranno anche elementi base di PHP.

 
REQUISITI:
 
Per eseguire con successo l’applicazione dovete aver installato sul vostro PC un server MYSQL e un server PHP. Quello che vogliamo fare consiste nella visualizzazione di una pagina web dei libri che si trovano nel database, ed ovviamente aggiungere e cancellare nuovi libri al database.
 
Ma prima creiamo il nostro database come segue.
 

CREATE database library;
USE library
CREATE TABLE books (
`BOOKID` int(10) unsigned NOT NULL
auto_increment,
`TITOLO` text NOT NULL,
`AUTORE` text NOT NULL,
`DESCRIZIONE` text NOT NULL,
PRIMARY

Con CREATE creiamo un db che si chiama library
USE ci permette di usare il DB
Con CREATE TABLE possiamo creare una
tabella.

 
Adesso creiamo un file PHP e scriviamo il codice che ci permette di caricare dal db tutti i libri.
 

$dbcnx = mysql_connect('localhost',
'root', '');
if (!$dbcnx) {
die( '<p>Impossibile connettersi ' .
'al database server in questo
momento.</p>' );
}
// Seleziona il books database
if (! mysql_select_db('library') ) {
die( '<p>Unable to locate the book '.
'database at this time.</p>' );
}

La prima cosa che dobbiamo fare è
connettersi al database usando la seguente funzione:
mysql_connect($server,$user,$passwd,$
link,$flag)
Noi abbiamo usato solo i primi tre parametri :
$server – indirizzo del server mysql.
$user – nome utente che si deve collegare al db
$passwd – password del utente
$link – nel caso mysql_connect() viene
chiamato con gli stessi parametri non viene
create una nuova connessione ma si
utilizza quella creata in precedenza.
$flag – sono una combinazione di costanti
che si usano per dare proprietà specifiche
ad una connessione.
Un flag importante e’ MYSQL_CLIENT_SQL la quale dà la possibilità di usare SSL .
Se eseguita con successo mysql_connect() ritorna un link (collegamento) altrimenti ritorna FALSE .
Dopo esserci collegati al SERVER con successo dobbiamo selezionare il DB che ci interessa.
Per selezionare il DB si usa la funzione
mysql_select_db (‘nomeDB’) che prende
come parametro il nome del DB che vogliamo aprire,nel caso che non lo può aprire chiudiamo stampando in OUTPUT un messaggio attraverso la funzione die().

 

$result = @mysql_query('SELECT * FROM books');
if (!$result) {
die('<p>Error performing query: ' .
mysql_error() . '</p>');
}
while ( $row =
mysql_fetch_array($result) ) {
$bookid = $row['BOOKID'];
$titolo = $row['TITOLO'];
$autore = $row['AUTORE'];
$desc = $row['DESCRIZIONE'];
echo('<p>' . '<b>Titolo:</b> '.$titolo
.'&nbsp;&nbsp; <b>Autore:</b> '.
$autore .'&nbsp;&nbsp;
<b>Descrizione:</b> '. $desc
.</p>');

Con l'istruzione
mysql_query(SQLQuery) eseguiamo
il query che trova tutti i libri nel db library.
Se qualcosa va male l'applicazione visualizza un messaggio e si chiude.
I risultati del query li mettiamo in un variabile
“$result” e con un loop prendiamo i risultati
usando mysql_fetch_array() che mette in un array la riga e muove il puntatore interno in avanti.
Eventualmente li visualizziamo nella nostra pagina web attraverso la funzione echo()
&nbsp e' un meta-carattere che identifica uno
spazio vuoto.

 

<?php
if (isset($_GET['addbook']))
?>

<?php
print <<<_HTML_
<form method="post"
action="$_SERVER[PHP_SELF]" >
<p>Titolo:<br />
<textarea name="titolo" rows="1"
cols="40" wrap>
</textarea>
<p>Autore:<br />
<textarea name="autore" rows="1"
cols="40" wrap>
</textarea>
<p>Descrizione:<br />
<textarea name="desc" rows="1"
cols="40" wrap>
</textarea><br />
<input type="submit"
name="submitbook"
value="SUBMIT" />
</p>
</form>
_HTML_;
?>

Questo e' il codice che realizza la funzione di aggiungere un nuovo libro al database.
La variabile _GET e' un array associativo di variabile passato allo script (corrente) attraverso il metodo
HTTP GET.
Praticamente viene controllato se è stato premuto un link che in questo caso  si chiama addBook,
nel caso sia stato premuto, si visualizzerà un form dove è possibile inserire le informazioni di un nuovo libro, altrimenti visualizzerà la pagina normale.
Il resto del codice costruisce un form.

E’ interessante notare come si è usata la funzione print <<<_HTML_.
Si chiamano HERE docs (operatore speciale che ci permette di specificare la fine di una stringa), questo serve quando si hanno grandi blocchi di testo.

Si comincia con <<< seguito da un’identificatore che useremmo per finire la stringa, se l’identificatore viene trovato da solo in una riga PHP lo considera come la fine della stringa.
 
Alla fine il form si vedrà come in figura 1:
 
 

if (isset($_POST['submitbook'])) {
$titolo = $_POST['titolo'];
$autore = $_POST['autore'];
$desc = $_POST['desc'];
$sql = "INSERT INTO books SET
TITOLO='$titolo',
AUTORE='$autore',
DESCRIZIONE='$desc'";
if (@mysql_query($sql)) {
echo('<p>Il libro e\' stato
inserito.</p>');
} else {
echo('<p>Errore d’inserimento: ' .
mysql_error() . '</p>');
}}

if (isset($_GET['deletebook'])) {
$bookid = $_GET['deletebook'];
$sql = "DELETE FROM books
WHERE
BOOKID=$bookid";
if (@mysql_query($sql)) {
echo('<p>Il Libro e\' stato
cancelato.</p>');
} else {
echo('<p>Errore di cancellazione: ' .
mysql_error() . '</p>');
}}

Questo pezzo di codice realizza l'inserimento di un libro nel database.
Anche in questo caso _POST e' un array associativo di variabili, passato allo script attraverso il metodo HTTP POST.
Se il pulsante SUBMIT e' stato premuto,allora possiamo prendere tutti i dati del libro da inserire nel database che li troviamo nell’array _POST e possiamo costruire una query sql che inserisce il libro.
Se l'inserimento non a va a buon fine visualizzeremmo il messaggio d'errore.
In questa parte del codice realizziamo la cancellazione di un libro dal database,anche in questo caso come in quello precedente se viene

premuto il link deleteBook possiamo cancellare il libro attraverso una query sql.