- Home
- Categorie
- Coding e Sistemistica
- PHP
- [Tutorial] Area privata
-
Ciao xDPasqualeDx,
fai attenzione alle maiuscole e ad non usare lo stile sms nei tuoi messaggi.
Per quanto riguarda il problema, hai modificato il file di configurazione scrivendo i dati corretti per la connessione al database?
-
Beh veramente ho usato il solito copia e incolla del codice html o php (a me sembrano uguali) e li ho creati in file .php con il nome indicato.
-
Si, ma i dati per la connessione al database devi modificarli, mettendo i tuoi corretti.
-
Non so come si fa e quale file va modificato, me lo potresti spiegare?
-
Ciao xDPasqualeDx,
fai attenzione alle maiuscole nei tuoi messaggi.
Nel file config.php trovi le variabili da modificare, i valori da inserire deve darteli il tuo provider.
-
Bhe, io non capisco niente di queste cose :bho: l'unica cosa che so è l'indirizzo del mio sito yourbestsite.altervista.org e so come accedere al mio database per inserirci nuove pagine o file oppure utilizzare il PhpMyAdmin.
Non so neanche che cosa è il provider e come contattarlo :bho: sono disperato .
-
Ho risolto ho inserito i miei dati in config.php e ora mi ha registrato, grazie mille Thedarkita
-
Il tuo provider è altervista in questo caso, da qualche parte di avranno fornito nome database, host del database, nome utente e password, e devi inserire questi dati nel file config.php
-
Si si :-), in effetti ho inserito quelli, però ora se una persona si iscrive e fa il log-in non può fare niente... perchè dove che ha effettuato il log-in gli esce una pagina bianca con scritto "area privata" e un link sotto che gli fa il log-out. non posso creare un profilo per ogni utente?
-
Questo è un tutorial per creare un'area riservata, non sono previste altre operazioni, ma puoi comunque modificare lo script in base alle tue esigenze. Ovviamente bisogna imparare php, questo tutorial serve proprio a spiegare il funzionamento di certe cose, non è un semplice script da utilizzare cosi com'è.
-
A capito... per caso sai se c'è un codice che legge il nome dell'utente che ha fatto il log-in e lo inserisce nella pagina dopo il log-in?grazie
-
Puoi farlo modificando il file login:
[php]
<?php
// Includo la connessione al database
require('config.php');// Se il modulo viene inviato...
if(isset($_POST['login']))
{// Dati Inviati dal modulo $user = (isset($_POST['user'])) ? trim($_POST['user']) : ''; // Metto nella variabile 'user' il dato inviato dal modulo, se non viene inviato dò di default '' $pass = (isset($_POST['pass'])) ? trim($_POST['pass']) : ''; // Metto nella variabile 'pass' il dato inviato dal modulo, se non viene inviato dò di default '' // Filtro i dati inviati se i magic_quotes del server sono disabilitati per motivi di sicurezza if (!get_magic_quotes_gpc()) { $user = addslashes($user); $pass = addslashes($pass); } // Crypto la password e la confronto con quella nel database $pass = md5($pass); // Controllo l'utente esiste $query = mysql_query("SELECT id, user FROM utenti WHERE user = '$user' AND pass = '$pass' LIMIT 1"); // Se ha trovato un record if(mysql_num_rows($query) == 1) { // prelevo l'id dal database $login = mysql_fetch_array($query); // Creo una variabile di sessione $_SESSION['login'] = $login['id']; $_SESSION['login_user'] = $login['user']; // reindirizzo l'utente header('Location: privata.php'); exit; } // se non esiste da l'errore else die('Nome Utente o Password errati');
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Login</title>
</head><body>
<form action="" method="post">
<input name="user" type="text" id="user" value="Nome Utente" onfocus="if(this.value=='Nome Utente') this.value='';" /><br />
<input name="pass" type="password" id="pass" value="Password" onfocus="if(this.value=='Password') this.value='';" /><br />
<input name="login" type="submit" value="Login" /><br />
</form>
</body>
</html>
[/php]E nella variabile di sessione $_SESSION['login_user'] hai il nome dopo aver effettuato il login.
-
Ok grazie ho fatto,scusa se ti chiedo molte cose, il fatto è che sò poco e niente... però ora mi puoi dire come mandare un e-mail con i dati di iscrizzione e un codice per la modifica della password? ti ringrazio già per le altre risposte .
-
Il codice per la modifica della password, lo trovi in una delle pagine di questa discussione.
Mentre per l'email ti basta leggere la documentazione relativa alla funzione mail, che è molto semplice:
http://php.net/mail
-
Ciao, volevo farti un paio di domande:
- Il tuo tutorial risale al 2008 (o almeno cosi leggo nel primo post) dopo 4 anni, va ancora bene, oppure andrebbe aggiornato?
- Vorrei creare un log delle connessioni, vorrei salvare nel db l'ultima volta che x utente ha fatto i login, è possibile? io avevo pensato di mettere un update di un campo nel db subito dopo aver creato la sessione, secondo te va bene?
- E' possibile utilizzarlo su un proprio sito? non ho trovati info al riguardo, se si visto che si tratto di un sito con dati sensibili, me lo consigli come script oppure e meglio trovare altro?
Scusa per le troppe domande, e ti ringrazio per il tutorial, mi sei stato molto utile.
-
Ciao sixdas,
ti rispondo per punti:- Il tutorial va più che bene, non c'è alcun problema di compatibilità con la versione corrente di PHP (PHP 5.4).
- Utilizzare una tabella apposita sarebbe meglio, se desideri tenere traccia di tutte le connessioni, e non solo dell'ultima.
- Puoi utilizzarlo sul tuo sito, lo script tratta anche la sicurezza per evitare SQL INJECTION per cui non c'è motivo per non utilizzarlo.
-
@Thedarkita said:
Ciao sixdas,
ti rispondo per punti:- Il tutorial va più che bene, non c'è alcun problema di compatibilità con la versione corrente di PHP (PHP 5.4).
- Utilizzare una tabella apposita sarebbe meglio, se desideri tenere traccia di tutte le connessioni, e non solo dell'ultima.
- Puoi utilizzarlo sul tuo sito, lo script tratta anche la sicurezza per evitare SQL INJECTION per cui non c'è motivo per non utilizzarlo.
Grazie per la velocissima risposta
- Perfetto.
- Se non chiedo molto, potresti farmi un esempio? tipo ho visto che wordpress, salva anche altri dati, tipo ip etc... Per me sarebbe l'ideale.
- Oltre alla sicurezza, io mi riferivo alla licenza d'uso, chiedevo se potevo utilizzarlo in un sito che sto facendo.
Grazie ancora.
-
Per salvare ip, ora di connessione, ecc devi semplicemente creare una tabella e poi eseguire una query insert, ci sono vari esempi nel tutorial di query di questo tipo.
Puoi tranquillamente utilizzarlo nel sito che stai facendo.
-
Ciao, ho visto che sei un esperto in php e mysql, vorrei porti alcune domande.
Mi hanno incaricato di spostare un sito da un provider ad un altro, fare il restiling e successivamente importare il vecchio metodo di registrazione e di login con conseguente perdita di pass, il tutto è gia scritto e configurato e sul vecchi sito funziona alla grande.
Naturalmente appena lo uploado sul nuovo hosting nascono i problemi:- nei files non esiste un congif.php e l'ho creato inserendo correttamente i dati del database
- ho soltanto il modulo della registrazione, registrati.php, quello dell' account account.php uno strano login.php recupera pass, e basta.
Il tutto funziona bene a video ma naturalmente ho problemi di configurazione sul nuovo server, potresti aiutarmi se ti mando i file sorgenti e ti faccio vedere il tutto sul web.
Attendo una tua risposta.
Grazie.
-
Ciao Thedarkita e a tutti,
Avrei bisogno del tuo aiuto.Ho fatto un sito, dove c'è la pagina iscrizione, dalla quale parte un'email per l'attivazione dell'account, poi c'è una pagin attivautente, che conferma l'ttivazione avvenuta dell'utente quindi da 0 = account disattivato, cliccando sul link dell'email si passa a 1 account attivato. Dopodichè, ho creato la pagina di login con username e password (criptata con metodo md5), e una pagina riservata. Ad ogni login di un utente che si registra e poi effettua il login, la paginaris.php (pagina riservata), da il benvenuto alla persona, l'ultimo acesso effettuato e un tasto logout. Il tutto gestito da un db e da una tabella chiamata utenti. Ora il punto cruciale è il seguente. Se faccio una modifica sulla paginaris.php, la vedono tutti gli utenti che si loggano, invece a me interessa che ognuno abbia la sua paginariservata e ci faccia quello che vuole. Quindi ad esempio se pincopallino si registra e si logga, e mette delle info tipod ei video o delle foto, poi pincopallino2 che a sua volta si è registrato non può vedere quello che ha fato pincopallino. E viceversa pincopallino, non può vedere la pagina di pincopallino2, a meno che non gli chieda l'amicizia. Ma questo è un discorso a parte. Come posso gestire la cosa per renderla anche dinamica ???? Mi puoi dare una mano per favore ??? Non so dove sbattere la testa. Grazie. Ovviamente la collaborazione è per tutti non solo per Thedarkita.