Problem mit: Cannot use object of type X as array

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Problem mit: Cannot use object of type X as array

    hey leute...
    ich hab mich jetzt schon durch X seiten gewühlt, aber nix vernünftiges gefunden...

    also, anscheinend nimmt meine funktion nur objekte an und ich übergebe einen array, aber seit wann geht das nicht?

    bin jetzt von nem server mit php 4.X auf meinen vServer mit php 5.X umgezogen.

    früher hab ich das immer mit define('',''); gemacht...

    Fatal error: Cannot use object of type db_class as array in xxx on line 7
    $db = array('host' => 'xxx',
    'user' => 'xxx',
    'pass' => 'xxx',
    'name' => 'xxx');

    bzw.

    $db['host'] = "localhost";
    $db['user'] = "game_constantwar";
    $db['pass'] = "db_cw_xD2b4nGd";
    $db['name'] = "constantwar";
    die function:

    PHP-Code:
        function cw_connect($db)
        {

            
    $connect mysql_connect($db['host'],     <- line 7
                                     $db
    ['user'], 
                                     
    $db['pass']) 

                       OR die(
    mysql_error());

            
    $selectDB mysql_select_db($db['name'], 
                                         
    $connect

                        OR die(
    mysql_error());

            return 
    $selectDB;
        } 

  • #2
    kann nen mod bitte die daten vom zweiten array rauslöschen?

    Kommentar


    • #3
      du kannst es doch editieren!
      Für Rechtschreibfehler übernehme ich keine Haftung!

      Kommentar


      • #4
        Und auch so: Woher sollen wir wissen, wo localhost ist

        Zu dem Problem: Kann es evtl. sein, dass es da irgendwo zu einem Namenkonflikt gekommen ist?
        [FONT="Helvetica"]twitter.com/unset[/FONT]

        Shitstorm Podcast – Wöchentliches Auskotzen

        Kommentar


        • #5
          ne, ich kann die beiträge leider nicht editieren, da kommt immer ich hab keine befugnisse und will die beiträge von anderen usern editieren


          ne, alle namen sind die gleichen...

          Kommentar


          • #6
            Na, ich will mal nicht hoffen, dass alle Namen gleich sind

            Was ich meine: Kann es evtl. sein, dass du $db später irgendwo nochmal als Objekt definierst?
            [FONT="Helvetica"]twitter.com/unset[/FONT]

            Shitstorm Podcast – Wöchentliches Auskotzen

            Kommentar


            • #7
              muss man irgendetwas bestimmtes machen,
              wenn man einen array/variable mit in eine klasse geben will?
              *blubb*

              Kommentar


              • #8
                Ja, und zwar sie nicht direkt zu setzen.

                Aber hier gehts ja auch um eine Methode.
                [FONT="Helvetica"]twitter.com/unset[/FONT]

                Shitstorm Podcast – Wöchentliches Auskotzen

                Kommentar


                • #9
                  und wie macht man dieses "nicht direkt setzen"?

                  mfg
                  *blubb*

                  Kommentar


                  • #10
                    is ne funktion inna klasse, wie definiert man eig. methode? ^^
                    db_class heisst die klasse...

                    Kommentar


                    • #11
                      @deathcakeman:
                      mit:

                      __set()
                      __get()
                      __isset()
                      __unset()

                      @Sandmancw:
                      Könnte es sein, dass deine Initialisierung so ausschaut?

                      $db = new db_class($db)?

                      Nicht, dass ich jetzt ganz besonders viel Peil davon habe, aber so schauts für mich aus. Evtl. poste mal etwas mehr Code.
                      [FONT="Helvetica"]twitter.com/unset[/FONT]

                      Shitstorm Podcast – Wöchentliches Auskotzen

                      Kommentar


                      • #12
                        PHP-Code:
                        /** Verbindung starten **/
                            
                        require('.xx');
                            
                        $db = new db_class;
                            
                        $db->cw_connect($db); 
                        so schauts aus ^^,

                        Kommentar


                        • #13
                          Tja, damit ist $db kein Array mit deinen Zugangsdaten mehr, sondern ein Objekt der Klasse db_class.

                          Mehr Hinweise oder kommst du selbst drauf?
                          [FONT="Helvetica"]twitter.com/unset[/FONT]

                          Shitstorm Podcast – Wöchentliches Auskotzen

                          Kommentar


                          • #14
                            hab ich kurz vor deinem letzten beitrag gemerkt *auffnkopfhau*
                            aahh ^^

                            Kommentar


                            • #15
                              achja, thx ganz vergessen...

                              Kommentar

                              Lädt...
                              X