Helpmij.nl
Helpmij.nl
Helpmij.nl
Steun Helpmij.nl! Klik hier     Computerprobleem? Klik hier!

Quote

Weergeven resultaten 1 tot 3 van 3

Onderwerp: [php] Settings behouden bij uitvoeren ander script

  1. #1
    Junior Member DeRijckeBjorn's avatar
    Geregistreerd
    20 januari 2012
    Locatie
    België
    Vraag is opgelost

    [php] Settings behouden bij uitvoeren ander script

    Hallo !

    Ik heb een probleempje:
    in deze code worden een aantal variabelen gedefinieerd
    en krijgen ze een waarde:
    PHP Code:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    
    <?php
    define ("nl", "\r\n");
    define ("CIversion", "0.1"); //don't change
        
    // required files
     
        require_once("inc/GbxRemote.inc.php");
        require_once("inc/xmlparser.inc.php");
     
    //*****
    // CI
    //*****
        
    class Cicon {
        
        
        
        function startup () {
        
            // variables
            
            global $setting;
            global $xml_parser;
            global $dbsetting;
            global $serversetting;
            global $server;
        
            //$this->xml_parser = new Examsly();
            //$this->client = new IXR_Client_Gbx;
     
        } //function startup
     
     
        function loadsetting () {
        
            
            echo "Loading settings...";
                
            $setting = array();
            
            if(file_exists('config1.xml')) {
            
                $xml = @simplexml_load_file('config1.xml');
     
                //Settings to load from config1.xml
                $setting['serverip'] = $xml->server_settings->serverip;
                $setting['serverport'] = $xml->server_settings->serverport;
                $setting['serverlogin'] = $xml->server_settings->serverlogin;
                $setting['serverpassword'] = $xml->server_settings->serverpassword;
                $setting['nation'] = $xml->server_settings->nation;
                $setting['location'] = $xml->server_settings->location;
                $setting['passdisplay'] = $xml->other->displayserverpass;
                $setting['superpass'] = $xml->server_settings->Superadminpass;
                echo nl, "done!", nl, nl;
                
                echo "Connecting to server:", nl, "ServerIP: ", $setting['serverip'], nl;
                echo "Serverport: ", $setting['serverport'], nl, nl;
                
                
                //*******************
                // Connect to server
                //*******************
                
                
                $Ip=$setting['serverip'];
                $Port=5008; 
                $Login='SuperAdmin'; 
                $Password='Superpass';
     
                    $connect = new IXR_Client_Gbx();
     
                    $connect->InitWithIp($Ip,$Port);
                    //Does the connection work?
                    if (!$connect->InitWithIp($Host, $Port)) {
                        echo "Connection failed! Check IP & Port.", nl;
                        exit;
                    }
                    $connect->query("Authenticate", $Login, $Password);
                    if (!$connect->query("Authenticate", $Login, $Password)) {
                        echo "Login failed! Check login settings.", nl;
                        exit;
                    }
                
                $connect->query('SendHideManialinkPage'); //Close all leftover manialinks
            
                $connect->query('SendDisplayManialinkPage', '<?xml version="1.0" encoding="UTF-8" ?> 
                <manialink id="1">
                    <quad posn="0 43 0" sizen="30 3" style="Bgs1" halign="center" substyle="NavButton" action="0"/>
                    <label text="$fff**Has succesfuly connected to the server! Loading plugins..." halign="center" posn="0 42.7 1" sizen="30 3" />
                </manialink>', 0, False); // Send startup message
                
                
                echo "Connected to server!", nl;
                echo "Loading plugins.", nl;
                $plg=0;
                
                //*****************
                // Loading Plugins
                //*****************
            
                Echo nl, "List of plugins:", nl;
                
                    if ($handle = opendir('inc\plugins')) {         
                        while (false !== ($entry = readdir($handle))) {
                            if ($entry != "." && $entry != ".." && $entry != "localrecords") {
                                $plg++;
                                $pluginname = $entry;
                                if (file_exists('inc/plugins/'.$pluginname)) {
                                    require('inc/plugins/'.$pluginname);
                                }
                                else echo"plugin failed to load, or no plugins!";
                            }
                        }
                        
                        closedir($handle);
                    }
                echo nl,"Plugins loaded! Amount: ",$plg,nl;
                    
            } // if
                
            else {
                
                echo 'ERROR: Can\'t read the Config file! Check location/name';
                exit;
                    
            } // else
            
     
            
            
        } // function loadsetting
        
        
        function connect () {
        
     
        echo nl, "END", nl;
        
        } // function connect
        
    } //class Cicon
     
    $testcicon = new Cicon();
    $testcicon->startup();
    $testcicon->loadsetting();
    $testcicon->connect();
    ?>
    Connect is bevoorbeeld : new IXR client (zie lijn 70)
    en ook een aantal settings (lijn 46 - 53)

    Het probleem is dat in mijn plugin file deze dingen niet meer gedefinieerd zijn
    (de plugins worden op lijn 103 - 109 geladen).
    hier is een voorbeeld van een plugin:
    PHP Code:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    
    <?php
    if(!defined('nl')) {
        define('nl', "\r\n");
        goto start;
        }
     
    else {
        goto start;
        }
     
     
     
    // Here the plugin starts
     
    start:
     
    class readrec {
     
        var $rec;
        var $ctrackid;  //current track id
     
    function reeadrec() {
        
        $ctrackid =1;
        $rec = array();
            
            if(file_exists('inc\plugins\localrecords\1.xml')) {
            
                $xml = @simplexml_load_file('inc\plugins\localrecords\1.xml');
                
                $rec['trackname'] = $xml->trackname;
                $rec['author'] = $xml->author;
                $rec['trackid'] = $xml->trackid;
                
                if($xml->recs->r1) {
                
                    $rec['rec1']['time'] = $xml->recs->r1->timee;
                    $rec['rec1']['date'] = $xml->recs->r1->datee;
                    $rec['rec1']['login'] = $xml->recs->r1->driver->login;
                    $rec['rec1']['nickname'] = $xml->recs->r1->driver->nickname;
                    
                    if($xml->recs->r2) {
                
                        $rec['rec2']['time'] = $xml->recs->r2->timee;
                        $rec['rec2']['date'] = $xml->recs->r2->datee;
                        $rec['rec2']['login'] = $xml->recs->r2->driver->login;
                        $rec['rec2']['nickname'] = $xml->recs->r2->driver->nickname;
                        
                        if($xml->recs->r3) {
                
                            $rec['rec3']['time'] = $xml->recs->r3->timee;
                            $rec['rec3']['date'] = $xml->recs->r3->datee;
                            $rec['rec3']['login'] = $xml->recs->r3->driver->login;
                            $rec['rec3']['nickname'] = $xml->recs->r3->driver->nickname;
                            
                        } //r3
                        
                        else $connect->query('ChatSendServerMessage', '$z$fff2 records on this track!');
                    
                    } //r2
                    
                    else $connect->query('ChatSendServerMessage', '$z$fffOnly 1 record on this track!');
                    
                } //r1
                
                else $connect->query('ChatSendServerMessage', '$z$fffNo records on this track!');
                            
            } //if records file exists
            
            else echo "No file found";
            
            
        } //function reeadrec
        
    } //class readrec
     
    $test = new readrec();  
    $test->reeadrec();
    ?>
    Op lijn 58 geeft php nu een error dat $connect nog niet bestaat:
    Code:
    fatal error: Call to a member function query() on a non-object in Y:\... on line ...
    Hoe kan ik er nu voor zorgen dat in al mijn plugins de vooraf gedefinieerde variabelen beschikbaar zijn ?
    (ik zou ook variabelen in de plugins willen definieren die dan in een andere plugin gebruikt kunnen worden)

    Alvast bedankt!
    Groetjes, Bjorn
    Laatst aangepast door DeRijckeBjorn : 5 mei 2012 om 19:34

  2. #2
    Op de manier hoe je script nu is opgebouwd kan dit niet :-) je werkt zover ik zie in 2 objecten... dus stel je hebt een fiets en een auto dan heeft de auto toch ook geen trappers? ditzelfde gebeurt nu ook met je database connectie je wilt in de readrec class een variable zoeken uit de Cicon class

  3. #3
    Junior Member DeRijckeBjorn's avatar
    Geregistreerd
    20 januari 2012
    Locatie
    België
    Dus als ik de variabele voor de class cicon definieer gaat het wel ?

    PHP Code:
    1
    2
    3
    4
    5
    6
    7
    
    //bijvoorbeeld:
     
    $test = 1
     
    class class {
           require(afile.file) // is in deze file dan $test = 1?
    }

    EDIT: heb het probleem op een andere manier verholpen
    Laatst aangepast door DeRijckeBjorn : 12 mei 2012 om 10:54 Reden: Vraag Opgelost

  4. Dit topic is automatisch gesloten omdat er sinds vier maanden niet meer op gereageerd is.

    Indien gewenst kan de topicstarter een verzoek tot heropening indienen.

Berichtenregels

  • U mag geen nieuwe vragen starten.
  • U mag niet reageren op berichten.
  • U mag geen bijlagen versturen.
  • U mag uw berichten niet bewerken.
  •  
Helpmij.nl
Helpmij.nl

Helpmij.nl en business

Partners
Sponsoren
Linkpartners
Aanbiedingen