Vorrei mettere la pagina di login direttamente quando si carica l'index del sito; qualcuno sa come posso fare?
Grazie e buon natale a tutti!
login diretto
Moderatore: mod Generali
penso si risolvere mettendo le segg. righe all'inizio dell'index.php:
// if the customer is not logged on, redirect them to the login page
if (!tep_session_is_registered('customer_id')) {
$navigation->set_snapshot();
tep_redirect(tep_href_link(FILENAME_LOGIN, '', 'SSL'));
}
esattamente dopo il primo require.
comunque sia: volendomi loggare (da localhost) e mettendo:
---------------------------------------------------------------
email: root@localhost
password: d95e8fa7f20a009372eb3477473fcd34:1c
----------------------------------------------------------------
che è l'unico cliente (customers) inserito mi viene detto che i dati non solo corretti... per favore qualcuno sa dirmi dove sbaglio???
Buon natale a tutti!!
// if the customer is not logged on, redirect them to the login page
if (!tep_session_is_registered('customer_id')) {
$navigation->set_snapshot();
tep_redirect(tep_href_link(FILENAME_LOGIN, '', 'SSL'));
}
esattamente dopo il primo require.
comunque sia: volendomi loggare (da localhost) e mettendo:
---------------------------------------------------------------
email: root@localhost
password: d95e8fa7f20a009372eb3477473fcd34:1c
----------------------------------------------------------------
che è l'unico cliente (customers) inserito mi viene detto che i dati non solo corretti... per favore qualcuno sa dirmi dove sbaglio???
Buon natale a tutti!!
Cosmopsis, la tua soluzione è corretta e più raffinata della soluzione che ti avevo proposto.
Il problema che riscontri nel login è dato dal fatto che la pass che inserisci è crittografata.....non è la pass reale....(infatti l'hai presa dal db mi immagino...)
Ora sono fuori...ma domani in caso ti spiego meglio....
Cmq...buon Natale a tutti!
Il problema che riscontri nel login è dato dal fatto che la pass che inserisci è crittografata.....non è la pass reale....(infatti l'hai presa dal db mi immagino...)
Ora sono fuori...ma domani in caso ti spiego meglio....
Cmq...buon Natale a tutti!
Grazie per l'interessamento. A presto!Puzzola ha scritto:Cosmopsis, la tua soluzione è corretta e più raffinata della soluzione che ti avevo proposto.
Il problema che riscontri nel login è dato dal fatto che la pass che inserisci è crittografata.....non è la pass reale....(infatti l'hai presa dal db mi immagino...)
Ora sono fuori...ma domani in caso ti spiego meglio....
Cmq...buon Natale a tutti!
Ecco come os controlla la pass
Ecco come viene controllata la pass...
Questa funzione, contenuta nel file password_funcs.php, confronta la password inserita con quella del database.
function tep_validate_password($plain, $encrypted) {
if (tep_not_null($plain) && tep_not_null($encrypted)) {
// split apart the hash / salt
$stack = explode(':', $encrypted);
if (sizeof($stack) != 2) return false;
if (md5($stack[1] . $plain) == $stack[0]) {
return true;
}
}
return false;
}
Ecco cosa fa explode:
Questa funzione, contenuta nel file password_funcs.php, confronta la password inserita con quella del database.
function tep_validate_password($plain, $encrypted) {
if (tep_not_null($plain) && tep_not_null($encrypted)) {
// split apart the hash / salt
$stack = explode(':', $encrypted);
if (sizeof($stack) != 2) return false;
if (md5($stack[1] . $plain) == $stack[0]) {
return true;
}
}
return false;
}
Ecco cosa fa explode:
Spero di esserti stato d'aiuto...manuale PHP rulez ha scritto: Explode
(PHP 3, PHP 4 , PHP 5)
explode -- Suddivide una stringa
Descrizione
array explode ( string separator, string string [, int limit])
Questa funzione restituisce una matrice di stringhe, ciascuna delle quali è una parte di string ottenuta dividendo la stringa originale utilizzando separator come separatore di stringa. Se si imposta limit la matrice restituita conterrà al massimo limit elementi di cui l'ultimo conterrà la parte restante di string.
Se il parametro separator è impostato ad una stringa vuota (""), la funzione explode() restituirà FALSE. Se separator contiene caratteri non presenti in string, allora explode() restituirà una matrice contenente string.
Sebbene implode() può, per ragioni storiche, accettare i parametri in entrambi gli ordini, explode() non può. Occorre accertarsi che il parametro separator sia antecedente al parametro string.
Nota: Il parametro limit è stato aggiunto dalla versione 4.0.1