Allora la classe x è una classe x la gestione del database ma è lunga un tot.. se è necessario la posto dopo caso mai..
la classe che dà problemi è questa:
Codice PHP:
<?php
class login extends database {
var $user;
var $pass;
function login($user, $pass) {
$this->user = $user;
$this->pass = $pass;
if ($this->utente_valido() == TRUE) {
setcookie("autenticazione", $this->user . "|" . $this->pass, 0, "/");
$this->header_location("/action=log");
} else {
die ("Non va!!!");
}
}
function riquadro_da_visualizzare($param) {
if (isset($param)) {
$this->riquadro = $param;
} else {
$this->riquadro = 0;
}
}
function utente_valido() {
$result = FALSE;
$pr = "/(?i)^[a-f0-9]{32}$/";
if(preg_match($pr, $this->pass)) {
$query = "SELECT id_utente FROM utente WHERE nickname_utente = '$this->user' AND password_utente = '$this->pass'";
parent::set_query($query);
if (parent::get_num_rows()) {
$result = TRUE;
} else {
$this->header_location("/action=nolog/error=true");
}
}
return $result;
}
function header_location($location) {
header("Location: " . ROOT_PATH . $_SERVER['REQUEST_URI'] . $location);
}
}
?>
e l'errore dice questa riga:
function login($user, $pass) {
ti posto anche l'istanziazione della classe:
Codice PHP:
echo $_POST['nickname'];
echo $_POST['password'];
if (!empty($_POST['nickname']) && !empty($_POST['password'])) {
$login_utente = new login;
$login_utente->login($_POST['nickname'], $_POST['password']);
} else {
echo "No entry";
}
Gli echo iniziali son x vedere se passa qlcosa e funzionano.. poi l'if è tanto di prova..
Che dici??