|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
|
PHP username e password
devo implementare la funzionalità di autenticazione ad un server ed in base a questa, mostrare o meno alcune caratteristiche delle pagine.
Ho usato l'array $_SESSION che da quanto ho capito è settabile a piacere però, se non ricorro all'uso dei coockies, al caricamento di una nuova pagina ogni volta perdo i dati inseriti da un utente. Sinceramente dopo aver visto qualche esempio in giro non è che ci abbia capito molto; se vate qualche dritta. non ho messo insieme molto Codice:
<form action="permessi.php" method="post"> username: <input type="text" name="username"> password: <input type="text" name="password"> <input type="submit" value="Invia dati"> </form> Codice:
<? // permessi.php $_SESSION['usern'] = $_POST["username"]; $_SESSION['paswd'] = $_POST["password"]; ?> |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jan 2006
Città: Pisa
Messaggi: 2503
|
Qui manca tutto!!!
Ogni pagina deve iniziare con la funzione session_start() (senza argomenti), altrimenti i dati non passano, e poi scusa, permessi.php non dovrebbe controllare un file o un database per vedere se l'utente è registrato?? Per qualsiasi chiarimento resto a disp, anche su msn. Ciao, Alex P.S.: se usi php 4 session_start() deve essere la prima cosa che c'è nella pagina, se invece usi il 5 puoi anche metterla un po' dopo, ma ovviamente prima di utilizzare il superglobale $_SESSION. Ri-Ciao
__________________
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
|
beh, immagino che manchi un bel pò di codice.
Ho trovato in rete alcuni esempi ma ho notato che sono costituiti da parecchie linee di codice ed ho pensato: "strano che per autenticarsi serve tutta qualla roba lì" Io pensavo che "creando" quell'array, divenisse poi il contenuto "globale" per tutta una sessione di una stessa connessione (c'era un qualcosa che parlava di persistent ma non ricordo se era a questo proposito Uso permessi.php per memorizzare 'username' e 'password' una sola volta e poi a mano a mano che mi serbe nelle varie pagine, li richiamo. Forse è il principio di funzionamento che ho in testa che è sbagliato e che mi frega. Mi viene il dubbio che ad ogni cambio pagina cada la connessione. |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jan 2006
Città: Pisa
Messaggi: 2503
|
Allora... Facciamo il punto.
In tutte le pagine all'inizio devi mettere session_start(); Permessi.php va bene come funzionamento, ma devi fare in modo di autenticare l'utente solo se il suo username e la sua password sono uguali a quelle salvate in precedenza, in un db o in un file. Se metti session_start() la "connessione" tra pagine non "cade" (anche se in realtà le pagine non sono connesse), ma prendilo così per buono. Ciao, Alex
__________________
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
|
ho trovato un articoletto che sembra molto chiaro:
http://www.phpnews.it/content/view/74/80/1/2/ ma se almeno funzionasse Warning: open(/tmp\sess_e5e3484b77d1990ff44cf917a6fcf08f, O_RDWR) failed: No such file or directory (2) in c:\programmi\apache group\apache\test\permessi.php on line 3 Warning: open(/tmp\sess_e5e3484b77d1990ff44cf917a6fcf08f, O_RDWR) failed: No such file or directory (2) in Unknown on line 0 Warning: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/tmp) in Unknown on line 0 |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
|
niente, era un problema di percorso nel file php.ini
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
|
Alex ho risolto, spartano ma funziona
grazie 1000 |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
|
ho una tabella dove un campo è impostato con PRIMARY KEY e ciò mi evita duplicati quindi, l'univocità dei dati però:
quando memorizzo i dati nella tabella, uso un codice del genere: $ri = mysql_db_query( $dbname, $query, $conn ); e studio il valore di ritorno della variabile $ri ma ha il seguente problema; sia che il database esista o la chiave sia duplicata, non ho modo di diversificare i due tipi di errori in quanto, in entrambi i caso ho di ritorno un NULL. Come si fa a diversificare i due casi ? Non dovrebbe esistere un numero di errore differente ? grazie |
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
|
trovato!
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 04:22.



















