Torna indietro   Hardware Upgrade Forum > Software > Programmazione

iPhone 17 Pro: più di uno smartphone. È uno studio di produzione in formato tascabile
iPhone 17 Pro: più di uno smartphone. È uno studio di produzione in formato tascabile
C'è tanta sostanza nel nuovo smartphone della Mela dedicato ai creator digitali. Nuovo telaio in alluminio, sistema di raffreddamento vapor chamber e tre fotocamere da 48 megapixel: non è un semplice smartphone, ma uno studio di produzione digitale on-the-go
Intel Panther Lake: i processori per i notebook del 2026
Intel Panther Lake: i processori per i notebook del 2026
Panther Lake è il nome in codice della prossima generazione di processori Intel Core Ultra, che vedremo al debutto da inizio 2026 nei notebook e nei sistemi desktop più compatti. Nuovi core, nuove GPU e soprattutto una struttura a tile che vede per la prima volta l'utilizzo della tecnologia produttiva Intel 18A: tanta potenza in più, ma senza perdere in efficienza
Intel Xeon 6+: è tempo di Clearwater Forest
Intel Xeon 6+: è tempo di Clearwater Forest
Intel ha annunciato la prossima generazione di processori Xeon dotati di E-Core, quelli per la massima efficienza energetica e densità di elaborazione. Grazie al processo produttivo Intel 18A, i core passano a un massimo di 288 per ogni socket, con aumento della potenza di calcolo e dell'efficienza complessiva.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 26-09-2006, 19:48   #1
Pro7on
Senior Member
 
L'Avatar di Pro7on
 
Iscritto dal: Jun 2005
Città: CH
Messaggi: 1058
PHP] HELP Login

Ciao a tutti, dovrei fare un login in php del tipo che chi si logga ha una voce in piu nel menu come si potrebbe fare ?

Thx Ciao

es.

Menu: HOME-guide-immagini-.. ===> Login ==> HOME-guide-immagini-Admin-..

__________________
My_Site|| My Work CPU || MY I MOD
Pro7on è offline   Rispondi citando il messaggio o parte di esso
Old 26-09-2006, 20:04   #2
mamo139
Senior Member
 
L'Avatar di mamo139
 
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
con le sessioni
http://it2.php.net/manual/it/ref.session.php
se il log in è corretto allora imposti l'utente come loggato e con un controllo delle sessioni tipo if(isset($_SESSION['login'])) echo "admin"; lo fai comparire

Ultima modifica di mamo139 : 26-09-2006 alle 20:06.
mamo139 è offline   Rispondi citando il messaggio o parte di esso
Old 26-09-2006, 20:17   #3
Pro7on
Senior Member
 
L'Avatar di Pro7on
 
Iscritto dal: Jun 2005
Città: CH
Messaggi: 1058
Quote:
Originariamente inviato da mamo139
con le sessioni
http://it2.php.net/manual/it/ref.session.php
se il log in è corretto allora imposti l'utente come loggato e con un controllo delle sessioni tipo if(isset($_SESSION['login'])) echo "admin"; lo fai comparire

MMm thx provo un po e posto poi i problem

Thx
__________________
My_Site|| My Work CPU || MY I MOD
Pro7on è offline   Rispondi citando il messaggio o parte di esso
Old 26-09-2006, 20:32   #4
Pro7on
Senior Member
 
L'Avatar di Pro7on
 
Iscritto dal: Jun 2005
Città: CH
Messaggi: 1058
e nn mi e molto chiaro

in pratica devo fare un ciclo che mi dice se il nome utente e giusto confronto al user e pas che ci sono su un db, e in caso di si quidni isset.... mostra admin ...??? teoria giusta??
__________________
My_Site|| My Work CPU || MY I MOD
Pro7on è offline   Rispondi citando il messaggio o parte di esso
Old 26-09-2006, 21:14   #5
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da Pro7on
e nn mi e molto chiaro

in pratica devo fare un ciclo che mi dice se il nome utente e giusto confronto al user e pas che ci sono su un db, e in caso di si quidni isset.... mostra admin ...??? teoria giusta??
Il form di login richiama una pagina che si deve occupare di autenticare l'utente. L'autenticazione la puoi fare in mille modi diversi, non c'è una regola. Dipende se la fai usando un db degli utenti, dipende dal tipo di db, da come è fatta la tabella, ecc....
Alla fine della fiera, saprai se l'utente è autenticato oppure no. Se lo è, imposti una variabile di sessione del tipo:

$_SESSION['loggato'] = "yes";

Il valore non è molto importante. Puoi anche mettere altre variabili di sessione che tengono per comodità, ad es. il nome dell'utente, il testo di benvenuto, ecc...

Da quel momento, per tutte le pagine richieste durante la sessione, puoi fare:

if (isset ($_SESSION['loggato'])) {
....
}
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 26-09-2006, 21:18   #6
mamo139
Senior Member
 
L'Avatar di mamo139
 
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
usare le sessioni è utilissimo xche nn sono altro che variabili che mantengono il loro valore di pagina in pagina...
l'unica clausula è chiamare in ogni pagina prima del loro utilizzo la funzione session_start()
mamo139 è offline   Rispondi citando il messaggio o parte di esso
Old 27-09-2006, 08:35   #7
wisher
Senior Member
 
L'Avatar di wisher
 
Iscritto dal: Aug 2005
Messaggi: 2755
mi accodo con una domanda, secondo voi come è meglio memorizzare le password nel database, in formato testo o (come credo) solo la hash della password?
mi potreste dare qualche indicazione
__________________
wisher è offline   Rispondi citando il messaggio o parte di esso
Old 27-09-2006, 08:41   #8
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da wisher
come è meglio memorizzare le password nel database, in formato testo o (come credo) solo la hash della password?
Hash, MD5 o meglio ancora SHA1.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 27-09-2006, 09:00   #9
wisher
Senior Member
 
L'Avatar di wisher
 
Iscritto dal: Aug 2005
Messaggi: 2755
Quote:
Originariamente inviato da andbin
Hash, MD5 o meglio ancora SHA1.
grazie, adesso provo partendo da qui
__________________
wisher è offline   Rispondi citando il messaggio o parte di esso
Old 27-09-2006, 09:17   #10
wisher
Senior Member
 
L'Avatar di wisher
 
Iscritto dal: Aug 2005
Messaggi: 2755
funziona tutto, però vorrei una piccola precisazione:
dato che sha1 genera una hash da 40 caratteri esadecimali e il tutto viene ad occupare 240 bit è giusto nel database mySql dare un tipo di dato binary 240 o c'è qualcosa di + adatto?
__________________
wisher è offline   Rispondi citando il messaggio o parte di esso
Old 27-09-2006, 10:04   #11
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da wisher
funziona tutto, però vorrei una piccola precisazione:
dato che sha1 genera una hash da 40 caratteri esadecimali e il tutto viene ad occupare 240 bit è giusto nel database mySql dare un tipo di dato binary 240 o c'è qualcosa di + adatto?
La funzione sha1() ti ritorna una stringa di 40 caratteri. Con PHP5 puoi passare il parametro raw_output=TRUE per ottenere il valore binario lungo 20 byte. In ogni caso, anche con solo PHP4, nulla ti vieta di ottenere in qualche modo il valore binario dalla stringa.

A questo punto la scelta è: memorizzare la stringa (40 caratteri / 320 bit) oppure memorizzare il valore binario (20 byte / 160 bit). Nel primo caso potresti dichiarare il campo come CHAR(40), nel secondo caso potresti usare BINARY(20). Nota: mi sto riferendo a MySQL.

Vedi tu cosa ti è più comodo.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 15-03-2007, 19:49   #12
mummolo
Member
 
L'Avatar di mummolo
 
Iscritto dal: May 2005
Città: L'aquila
Messaggi: 182
Scusate la domanda!
Ma se un utente ha effettuato correttamente il login,come faccio a reindirizzarlo in un'altra pagina?
Mi spiego meglio...
Siamo nella pagina autenticazione.php;ora voglio che se l'utente ha effettuato correttamente il login,una volta confrontati i dati con un database,mi venga aperta la pagina (a.php),altrimenti se il login non è corretto mi venga aperta la pagina (b.php).

Sapreste aiutarmi gentilmente?!
Spero di essere stato chiaro!!
__________________
Date un'occhiata al mio sito web personale!
mummolo è offline   Rispondi citando il messaggio o parte di esso
Old 15-03-2007, 19:56   #13
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da mummolo Guarda i messaggi
Scusate la domanda!
Siamo nella pagina autenticazione.php;ora voglio che se l'utente ha effettuato correttamente il login,una volta confrontati i dati con un database,mi venga aperta la pagina (a.php),altrimenti se il login non è corretto mi venga aperta la pagina (b.php).
Con:

header("Location: blabla");
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 15-03-2007, 20:13   #14
mummolo
Member
 
L'Avatar di mummolo
 
Iscritto dal: May 2005
Città: L'aquila
Messaggi: 182
Perfetto,funziona!!!Grazie mille!
__________________
Date un'occhiata al mio sito web personale!
mummolo è offline   Rispondi citando il messaggio o parte di esso
Old 15-03-2007, 21:36   #15
mummolo
Member
 
L'Avatar di mummolo
 
Iscritto dal: May 2005
Città: L'aquila
Messaggi: 182
scusate e per proteggere le pagine come posso fare?
nel senso per far accedere a determinare pagine solo le persone che hanno effettuato correttamente il login come posso fare?
vorrei far questo perche altrimenti inserendo semplicemente il nome della pagina nel browser si potrebbe cmq aver accesso alla pagina "aggirando" cosi il login!!
Grazie a tutti per eventuali risposte
__________________
Date un'occhiata al mio sito web personale!

Ultima modifica di mummolo : 15-03-2007 alle 21:42.
mummolo è offline   Rispondi citando il messaggio o parte di esso
Old 16-03-2007, 08:31   #16
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da mummolo Guarda i messaggi
scusate e per proteggere le pagine come posso fare?
nel senso per far accedere a determinare pagine solo le persone che hanno effettuato correttamente il login come posso fare?
vorrei far questo perche altrimenti inserendo semplicemente il nome della pagina nel browser si potrebbe cmq aver accesso alla pagina "aggirando" cosi il login!!
Fai un semplice script che dovrai includere (con include o require) in ogni pagina .php.

Un esempio:
Codice:
session_start ();

if (!isset ($_SESSION['LOGGATO']))
{
    header ("Location: http://blabla/login.php");
    exit;
}
Altrimenti lo script continua e il resto della pagina viene inviato.

E ovviamente se il login ha successo, imposti $_SESSION['LOGGATO'].
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 16-03-2007, 08:58   #17
mummolo
Member
 
L'Avatar di mummolo
 
Iscritto dal: May 2005
Città: L'aquila
Messaggi: 182
Ok,grazie per la risposta!!!
Oggi se ho un po di tempo lo provo e posto i risultati!!
Ciao e grazie
__________________
Date un'occhiata al mio sito web personale!
mummolo è offline   Rispondi citando il messaggio o parte di esso
Old 16-03-2007, 09:09   #18
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da mummolo Guarda i messaggi
Ok,grazie per la risposta!!!
Prego. Comunque, indipendentemente da come poi implementerai la cosa, il concetto è molto semplice: sei loggato? allora invia tutta la pagina. Non sei loggato? Allora rimanda alla pagina di login, non inviare la pagina e termina lo script.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 16-03-2007, 09:52   #19
mummolo
Member
 
L'Avatar di mummolo
 
Iscritto dal: May 2005
Città: L'aquila
Messaggi: 182
credo di aver chiaro il concetto!
L'unico dubbio è se il valore di $_SESSION lo devo impostare nella pagina nella pagina di autenticazione e poi controllarne il valore in quella da aprire giusto?
__________________
Date un'occhiata al mio sito web personale!
mummolo è offline   Rispondi citando il messaggio o parte di esso
Old 16-03-2007, 10:12   #20
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da mummolo Guarda i messaggi
L'unico dubbio è se il valore di $_SESSION lo devo impostare nella pagina nella pagina di autenticazione e poi controllarne il valore in quella da aprire giusto?
Sì, esatto. Il concetto è che devi avere un "qualcosa" che imposti in un certo modo solo quando si è loggati. Dopodiché testi quel "qualcosa" per stabilire se si è loggati o meno. E in genere appunto è una variabile di sessione.

Poi come gestire il rimando al login, dipende molto da come è strutturato il sito. Mi spiego meglio: se si ha una unica pagina apposita per il login, allora è abbastanza logico reindirizzare a quella pagina se non si è loggati.
Se invece il modulo di login è incorporato in ogni pagina (ad esempio nell'header) come in certi siti di e-commerce, allora non devi fare alcun rimando ma semplicemente inviare la pagina in cui in quell'area ci sarà o il modulo di login o un qualcosa ad esempio del tipo "Benvenuto XYZ" con un pulsante di logout se si è loggati.

Insomma ... per fare la gestione di un login non c'è uno standard preciso, dipende da molti fattori: la struttura del sito, l'interazione tra le varie pagine, ecc...
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


iPhone 17 Pro: più di uno smartphone. È uno studio di produzione in formato tascabile iPhone 17 Pro: più di uno smartphone. &Eg...
Intel Panther Lake: i processori per i notebook del 2026 Intel Panther Lake: i processori per i notebook ...
Intel Xeon 6+: è tempo di Clearwater Forest Intel Xeon 6+: è tempo di Clearwater Fore...
4K a 160Hz o Full HD a 320Hz? Titan Army P2712V, a un prezzo molto basso 4K a 160Hz o Full HD a 320Hz? Titan Army P2712V,...
Recensione Google Pixel Watch 4: basta sollevarlo e si ha Gemini sempre al polso Recensione Google Pixel Watch 4: basta sollevarl...
Il nuovo Snapdragon 8 Elite Gen 5 'for G...
2 Smart TV 4K in super offerta su Amazon...
AMD e Intel celebrano un anno di collabo...
NVIDIA consegna il suo mini supercompute...
La concorrenza cinese si fa sentire: il ...
4 accessori auto da non perdere su Amazo...
Era finito, eccolo ancora: torna il supe...
Game Pass: tutte le novità di nov...
Xiaomi 15T e 15T Pro con fotocamere by L...
3 portatili un super sconto: 355€ con 16...
Il nuovo iPhone pieghevole costerà...
MediaTek Dimensity 9500 sfida lo Snapdra...
Nuovo storico lancio per il razzo spazia...
Elgato Embrace: una sedia ergonomica pro...
Brad Pitt torna in pista: F1 – Il Film a...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 09:10.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v