View Full Version : 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
<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>
<?
// permessi.php
$_SESSION['usern'] = $_POST["username"];
$_SESSION['paswd'] = $_POST["password"];
?>
Xalexalex
13-03-2006, 13:50
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
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 :D pardon! )
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.
Xalexalex
13-03-2006, 14:21
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
ho trovato un articoletto che sembra molto chiaro:
http://www.phpnews.it/content/view/74/80/1/2/
ma se almeno funzionasse :muro:
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
niente, era un problema di percorso nel file php.ini :)
Alex ho risolto, spartano ma funziona
grazie 1000 :)
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
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.