lunedì 11 marzo 2013

Recuperare i dati da un database

vai all' indice generale

Recuperare i dati da un database

Abbiamo montato WAMP Server, quindi abbiamo a disposizione la console MySql. Se la nostra root è  http://localhost:8080 la gestione del database si trova all'indirizzo http://localhost:8080/phpmyadmin.

Creiamo un database di nome cinema :
 

 

 
Creiamo una tabella di nome film con i campi : id, nome, anno :
 
scegliamo come tipi int , varchar e int:
inseriamo nella tabella alcuni dati :
INSERT INTO film (id, nome, anno) VALUES (1, 'Scarface', 1932);
INSERT INTO film (id, nome, anno) VALUES (2, 'Il Camorrista', 1986);
 
Se abbiamo montato il server WAMP con lo wizard avremoda inserire questi dati nella application\config\database.php che è la classe php di configurazione per il framework CodeIgniter :
 
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = '';
$db['default']['database'] = '';
$db['default']['dbdriver'] = 'mysql';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;
In realtà l'unica cosa da modificare è lo username che di dafult è vuoto.  Se invece avete un altro database si deve modificare questo file in accordo con la vostra istanza.
Adesso possiamo recuperare i dati. Creiamo un progetto CodeIgniter e inseriamo solo una classe di controllo (in application\controllers) : controllo.php con questo codice :
<?php
class controllo extends CI_Controller {
       public function index()
       {
         $this->load->database();
         $query = $this->db->query('SELECT id, nome, anno FROM cinema.film');            
             foreach ($query->result() as $row)
             {
                    echo $row->id;
                    echo $row->nome;
                    echo $row->anno;
             }           
             echo 'Risultati: ' . $query->num_rows();           
       }
} 
 recuperare
Se la root è http://localhost:8080/CI7 si testa il progetto all' indirizzo : http://localhost:8080/CI7/index.php/controllo col risultato (decisamente bruttino):
1Scarface19322Il Camorrista1986Risultati: 2

Nessun commento:

Posta un commento