Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    1,773

    area privata con sessioni che da errori notice

    salve ragazzi sto lavorando ad un lavoro , dove devo inserire il pannello amministratori , adesso il login l ho deciso di fare con le sessioni, pero mi da due errori notice perche grazie posto lo script
    Codice PHP:
    session_start();
    if((isset(
    $_SESSION['area_administrator'])==$login)and(isset($_SESSION['area_administrator'])==$password)){

    ob_start();
    echo 
    "LOGGIATO CORRETTAMENTE";
    $pagcontenuto['admin_content'] = ob_get_contents();
    ob_end_clean();

    }else{
    ob_start();
    unset(
    $_SESSION['login']);
    unset(
    $_SESSION['password']);
    if(!isset(
    $_POST['action'])){$action ="";}else{$action =trim(addslashes($_POST['action']));}
    if(!isset(
    $_POST['login'])){$login ="";}else{$login =trim(addslashes($_POST['login']));}
    if(!isset(
    $_POST['password'])){$password ="";}else{$password =trim(addslashes($_POST['password']));}
    $CONFIG['check_table'] = array("action"=>"check_global","login"=>"check_global","password"=>"check_global");
    function 
    areaAdmin($action,$login,$password){
    global 
    $CONFIG ;
    $action =trim(addslashes($action));
    $login =trim(addslashes($login));
    $password =trim(addslashes($password));
    if(!isset(
    $login)or $login ==""){
    echo
    "<div class='errorlogin'>Il campo login e obbligatorio</div>";
       echo
    "<script type=\"text/javascript\">";
       echo
    "setTimeout(\"location.href='".$_SERVER['PHP_SELF']."'\",3000)";
       echo
    "</script>";
        return;
    }if(!isset(
    $password)or $password ==""){
    echo
    "<div class='errorlogin'>Il campo password e obbligatorio</div>";
       echo
    "<script type=\"text/javascript\">";
       echo
    "setTimeout(\"location.href='".$_SERVER['PHP_SELF']."'\",3000)";
       echo
    "</script>";
        return;
        }else{return 
    "TRUE" ;}
    }
    if(
    $action == "controladmin")
    {
    $controlloAmministrator areaAdmin($action,$login,$password);
    if(
    $controlloAmministrator !="TRUE")
    {
    echo 
    $controlloAmministrator;
    }
    else
    {

    if(!
    file_exists("../include/funzion.php")){
    echo
    "Il files funzioni.php non e presente";
    }else{
    include
    "../include/funzion.php";
    }
    $password criptpass($password);
    $control_administrator mysql_query("SELECT * FROM amministratori WHERE login='$login' AND password ='$password' AND enable =1 LIMIT 0,1");
    if(
    mysql_num_rows($control_administrator)==1){
    $_SESSION['area_administrator']= $login;
    $_SESSION['area_administrator']=$password;
     echo 
    "<meta http-equiv=\"Refresh\" content=\"3; URL=index.php\">Login effettuato correttamente ";
    }else{
    echo 
    "utente non presente";

    Non è tanto importante saper fare,quanto ad avere voglia d imparare .

  2. #2

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    1,773
    grazie filippo ho risolto mi dava errori di notice, comunque conoscete qualche classe per salvare la sessione nel database?
    Non è tanto importante saper fare,quanto ad avere voglia d imparare .

  4. #4

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    1,773
    ho guardato ieri sera ma non c e niente d interessante ,
    Non è tanto importante saper fare,quanto ad avere voglia d imparare .

  6. #6

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    1,773
    grazie filippo la guardo e ti faccio sapere grazie ancora
    Non è tanto importante saper fare,quanto ad avere voglia d imparare .

  8. #8
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    1,773
    ho scaricato la classe e mi sembra valida , ma come devo fare per la connessione ?
    Codice PHP:
    session_set_save_handler (array(&$session'open'), 
                              array(&
    $session'close'), 
                              array(&
    $session'read'), 
                              array(&
    $session'write'), 
                              array(&
    $session'destroy'), 
                              array(&
    $session'gc')); 
    class 
    session
        var 
    $session_limit 300//life of sessions in seconds
        
        
    function session(&$db){
        
    //set db handler
        
    $this->db $db;
        }
        
    /* Open session, if you have your own db connection 
           code, put it in here! */ 
        
    function open($path$name) { 
            if (isset(
    $this->db)) return TRUE
            else return 
    FALSE;
        } 
        
    /* Close session */ 
        
    function close() { 
            
    /* This is used for a manual call of the 
               session gc function */ 
            
    $this->gc(0); 
            return 
    TRUE
        } 
        
    /* Read session data from database */ 
        
    function read($ses_id) {
            
    $session_sql "SELECT * FROM sessions WHERE ses_id = '$ses_id'"
            
    $session_res $this->db->getRow($session_sql); 
            if (!
    $session_res) { 
                return 
    ''
            } 
           if (
    $session_res) { 
                
    $ses_data $session_res["ses_value"];
            return 
    $ses_data
            } else { 
                return 
    ''
            } 
        } 
        
    /* Write new data to database */ 
        
    function write($ses_id$data) { 
            
    $session_sql "UPDATE sessions SET ses_time='" time() 
                         . 
    "', ses_value='$data' WHERE ses_id='$ses_id'"
            
    $session_res $this->db->query($session_sql); 
            if (!
    $session_res) { 
                return 
    FALSE
            } 
            if (
    $this->db->affectedRows() > 0) { 
                return 
    TRUE
            } 
            
    $session_sql "INSERT INTO sessions (ses_id, ses_time, ses_start, ses_value)" 
                         
    " VALUES ('$ses_id', '" time() 
                         . 
    "', '" time() . "', '$data')"
            
    $session_res $this->db->query($session_sql); 
            if (!
    $session_res) {     
                return 
    FALSE
            }         else { 
                return 
    TRUE
            } 
        } 
        
    /* Destroy session record in database */ 
        
    function destroy($ses_id) { 
            
    $session_sql "DELETE FROM sessions WHERE ses_id = '$ses_id'"
            
    $session_res $this->db->query($session_sql); 
            if (!
    $session_res) { 
                return 
    FALSE
            }         else { 
                return 
    TRUE
            } 
        } 

        
    // Garbage collection removes old sessions 
        
    function gc($life) { 
            
    $ses_life time() - $this->session_limit
            
    $session_sql "DELETE FROM sessions WHERE ses_time < $ses_life"
            
    $session_res $this->db->query($session_sql); 
            if (!
    $session_res) { 
                return 
    FALSE
            }         else { 
                return 
    TRUE
            } 
        } 
            
    // Users online 
        
    function users() { 
            
    $users_sql "SELECT COUNT(ses_id) FROM sessions"
            
    $users_res $this->db->getOne($users_sql); 
            if (!
    $users_res) { 
                return 
    NULL
            }         else { 
                return 
    $users_res
            } 
        } 

    io uso la connessione cosi:
    Codice PHP:

    class DB{
    var 
    $db_host ='localhost';
    var 
    $db_user ='root';
    var 
    $db_pass ='maurizio';
    var 
    $db_name ='diva';


    var 
    $SMARTY_LIBRARY ='';



        
    //PHP5 Constructor
        
    function __construct() {
            global 
    $db_host,$db_user,$db_pass,$db_name;
                
            
    $this->host $db_host;
            
    $this->user $db_user;
            
    $this->pass $db_pass;
            
    $this->name $db_name;
        }
        
    //PHP4 Constructor
        
    function database() {
            global 
    $db_host,$db_user,$db_pass,$db_name;
            
            
    $this->host $db_host;
            
    $this->user $db_user;
            
    $this->pass $db_pass;
            
    $this->name $db_name;
        }

     function 
    connect()
     {
       @
    mysql_connect($this->db_host,$this->db_user,$this->db_pass)or die("non riesco a connettermi".mysql_error());
      @
    mysql_select_db($this->db_name)or die("non riesco selezionare il database");
     }

     function 
    disconnect()
     {
      if( !
    mysql_close()){
      die(
    "Could not close DB");
      }
     }

    Non è tanto importante saper fare,quanto ad avere voglia d imparare .

  9. #9
    La classe indicata utilizza Pear_DB per l'accesso ai dati. Puoi modificare il codice per utilizzare la tua classe (è piuttosto facile da fare).

  10. #10
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    1,773
    ciao filippo mi faresti un esempio per cortesia non la conosco questa lasse pear
    Non è tanto importante saper fare,quanto ad avere voglia d imparare .

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.