Ciao a tutti!
Ho un problema (...e quando mai)
No, da, stavolta è tanto che non scrivo, stava andando tutti liscio fino a che....
Avete presente quando si iscrive un utente... vengono inviati i dati al database e si rimanda l'utente ad una pagina dove l'avvisa che la registrazione è andata a buon fine (o lo si avvisa che deve controllare la mail per attivare l'account)
Io ho:
Il file register.php dove punta il form di registrazione:
Codice PHP:
<?php
session_start();
include 'newuser.class.php';
$newuser = new NewUser();
$newuser->AddUser();
?>
Nella classe all'interno del file register.php (dopo aver effettuato l'inserimento in database) esegue questo:
Codice PHP:
$_SESSION['insertuserok'] = 1;
header("Location: ../?page=newuser");
La pagina newuser.php (richiamata con un controllo tramite GET) è fatta così:
Codice PHP:
<?php
$tempuk = $_SESSION['insertuserok'];
function PagRegUser(){
if($tempuk == 1)
{
include 'newuserok.php';
session_destroy();
}
else{
header("Location: ?page=newuser_ko");
session_destroy();
}
}
PagRegUser();
?>
(la sessione è aperta in alto alla pagina che contiente newuser.php)
A questo punto però, nonostante la registrazione vada a buon fine (altrimenti visti i controlli di validazione non si arriverebbe alla pagina newuser.php) mi porta sempre a newuser_ko!!
Mi servirebbe questo controllo per fare in modo che un utente non veda il messaggio "Ti sei registrato correttamente" semplicemente scrivendo l'url: sito.xx/register.php, ma in que caso lo si rimanda ad una pagina di errore o alla pagina di login.
E' come se non mi leggesse la variabile.... sapreste aiutarmi?
Grazie!