io ho usato le sessioni php per il login però non so se è la strada migliore o se meglio usare i cookie o entrambe le cose.
Quello che ho fatto sino ad ora sta qua: http://www.leadergl.net/hosting/
vorrei un modulo di login con possibilità di registrazione e recupero password.
Inoltre vorrei la possibilità che se un utente è loggato abbia in basso a sinistra un menu (o un menu più esteso) rispetto un utente non loggato.
Queste le funzionalità principali...
Vi riporto il codice della mia classe database:
Codice PHP:
<?php
if (!defined("IN_UP")) {
die ("Non puoi accedere direttamente a questa pagina!");
}
class database {
var $id_connessione = "";
var $query_id = "";
var $query_count = 0;
function connect() {
$this->id_connessione = mysql_connect($db_host, $db_user, $db_pass);
if (!$this->id_connessione) {
echo "ERROR: Impossibile connettersi al server";
} else {
if (!mysql_select_db($db_name, $this->id_connessione)) {
echo ("ERROR: Impossibile selezionare il database: ".$db_name);
}
}
}
function query($query) {
$this->query_id = mysql_query($query, $this->id_connessione);
if (!$this->query_id) {
$error_type = mysql_error();
$error_id = mysql_errno();
echo ("ERROR: Errore Database.
Impossibile eseguire la query: $query.
Errore MySQL ritornato: $error_type
Codice Errore MySQL: $error_id");
}
$this->query_count++;
return $this->query_id;
}
function fetch_row($q_id = "") {
if ($q_id == "" ) {
$q_id = $this->query_id;
}
$result = mysql_fetch_array($q_id, MYSQL_ASSOC);
return $result;
}
function get_num_rows() {
return mysql_num_rows($this->query_id);
}
function close_db() {
return mysql_close($this->id_connessione);
}
}
?>
non so se devo aggiungere qualcosa o meno...mentre il mio index.php è così fatto:
Codice PHP:
<?php
session_start();
DEFINE ( 'IN_UP', 1 );
require "functions.php";
// codice per disegnare header e logo con menu in alto
// ...
// =============================================================================================================================================
// CORPO PAGINA CENTRALE
// =============================================================================================================================================
if (isset($_SESSION['loggato'])) {
$username = $_SESSION['username'];
$data_log = $library->logged($username);
} else {
if($_POST)
{
if( $_POST['usr']=='Chiara') {
$username = $_POST['usr'];
$data_log = $library->logged($username);
$_SESSION['loggato'] = true;
$_SESSION['username'] = $username;
} else {
$data_log = $library->loginform();
}
} else {
$data_log = $library->loginform();
}
}
if (!empty($_REQUEST['do'])) {
if ($_REQUEST['do'] == 'logout') {
session_destroy();
$_SESSION = array();
}
}
// codice per disegnare la parte centrale (sotto il login) della pagina
// ...
// codice per disegnare il footer
// ...
nel file functions.php la classe è definita così:
Codice PHP:
Class nome_classe {
function nume_funzione (...) {
}
}
$library = new nome_classe;
quindi nel corpo di index.php le funzioni sono richiamate tramite:
Codice PHP:
$library->nome_funzione();
credo di aver detto tutto 
Ora vorrei:
1) avere un file config.php dove mantenere i settaggi tipo server del database, user e pass del database, nome database
2) integrare il file database.php in modo da usare le sue funzioni per gestire il database...