Visualizzazione dei risultati da 1 a 6 su 6

Discussione: problema su un include

  1. #1

    problema su un include

    allora veniamo a noi

    ho un problema con un include

    il codice postato sotto funziona perfettamente, solo se l'include nn sta dentro la funzione (che è commentata)

    appena levo i commenti mi da questo errore

    Fatal error: Call to a member function on a non-object in c:\programmi\easyphp1-8\www\occ_lepihost\stogame\autoreg.php on line 27

    facendo varie prove ho notato ke l'incude nn gradisce stare dentro la funzione...

    come faccio a risolvere ??? avete suggerimenti ?

    p.s.

    il file session.php contiene una classe

    Codice PHP:
    <?
    /**
     * autoreg.php (stogame project)
     *
     * Ogame Commercial Center (OCC)
     * Written by: Crazy Scientist
     *
     */
        
    //registrazione
    //function autoreg()
    //{     
        
    if(isset($_POST['user']) && isset($_POST['ogame_id']) && isset($_POST['universo']) && isset($_POST['coor']) && isset($_POST['email']))
        {        
            
    //generazione password
            
    $pass generateRandStr(8);
                        
            
    //recupero paese ed universo
            
    $pieces explode("."$_POST['universo']); //separazione stringa
            
    $universo $pieces[0]; //universo
            
    $paese $pieces[1]; // paese
                        
            
    include($paese."/session.php"); //include session.php del paese selezionato
                        
            
    global $session;        
                        
            
    $retval $session->registerStogamePj($_POST['user'], $_POST['ogame_id'], $pass$universo$_POST['coor'], $_POST['email']);
                        
            if(
    $retval == 0) return $pass;
                else return 
    0;
             
        }
        else return 
    0;        
    //}

    /**
    * generateRandStr - Generates a string made up of randomized
    * letters (lower and upper case) and digits, the length
    * is a specified parameter.
    */
    function generateRandStr($length){
      
    $randstr "";
      for(
    $i=0$i<$length$i++){
         
    $randnum mt_rand(0,61);
         if(
    $randnum 10){
            
    $randstr .= chr($randnum+48);
         }else if(
    $randnum 36){
            
    $randstr .= chr($randnum+55);
         }else{
            
    $randstr .= chr($randnum+61);
         }
      }
      return 
    $randstr;
    }

    //chiamata x prova
    //$val = autoreg();
    //echo $val;

    ?>

  2. #2
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    cosa fa il codice incluso ?
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  3. #3
    Originariamente inviato da badaze
    cosa fa il codice incluso ?
    come ho detto è una classe

    si occupa della gestione della sezione, dei login/logout, registrazione e altre cose

    so ke funziona xkè se l'include lo metto fuori dalla funzione funziona tutto

  4. #4
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Originariamente inviato da cicciobello87
    come ho detto è una classe

    si occupa della gestione della sezione, dei login/logout, registrazione e altre cose

    so ke funziona xkè se l'include lo metto fuori dalla funzione funziona tutto
    Allora è normale. Non puoi mettere una class in una funzione. Quindi non è un problema di include ma del contenuto dell'include.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  5. #5
    Originariamente inviato da cicciobello87
    come ho detto è una classe

    si occupa della gestione della sezione, dei login/logout, registrazione e altre cose

    so ke funziona xkè se l'include lo metto fuori dalla funzione funziona tutto
    e come posso fare ????

    grazie

  6. #6
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Devi semplicemente mettere l'include fuori dalla funzione. In questo caso l'include deve contenere soltanto la dichiarazione della class. Mentre nella funzione crei l'istanza dell'oggetto.

    Esempio :
    codice:
    // contiene lo script della class oggetto
    include("mio_file.php");
    
    function pluto() {
     $pippo = new oggetto();
    }
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

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 © 2025 vBulletin Solutions, Inc. All rights reserved.