ein problem mit einer klasse

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

  • #16
    aktuellen code?

    Kommentar


    • #17
      irgendwie so (existiert bisher nur in meinem Kopf):
      PHP-Code:
      class result {
          var 
      $_value NULL;
          function 
      fetch_array() {
              return 
      mysql_fetch_array($this->_value);
          }

      logischerweise nur ein Auszug aus der Klasse

      OffTopic:
      irgendwie benutzen wir grade das Board wie einen Chat
      hopka.net!

      Kommentar


      • #18
        solang nur wir beide das sind.

        es ist so, wie ich das meinte.

        hab auch die results (es könnte ja auch mehrere sein, die gehandelt werden müssen) in dem objekt gespeichert und kann dann damit arbeiten.

        PHP-Code:
        while($DB->NextRow()) {
          
        print_r($DB->Get());

        Kommentar


        • #19
          du übergibst ja irgendwo ein MySQL-Result an deine Error-Funktion, die das mittels echo ausgibt, und echo funktioniert nicht bei MySQL-Results. Daher gibt er Resource id #4 aus.
          hopka.net!

          Kommentar


          • #20
            denke liegt an:
            PHP-Code:
            while($row $db->fetch_array($result)) 
            ist ja immer true

            Offe

            Kommentar


            • #21
              nee, dass kommt, wegen seiner seltsamen error_fkt.

              ich denke hier wäre es echt besser erstmal den normalen richtigen umgang mit Mysql zu üben, und danach ne klasse zu bauen.

              Kommentar


              • #22
                Original geschrieben von Offe1
                denke liegt an:
                PHP-Code:
                while($row $db->fetch_array($result)) 
                ist ja immer true

                Offe
                ne, das hat mit cartman's Script nix zu tun, dass war nur wie wir DB-Klassen allgemein aufbauen würden.

                EDIT:
                stimmt garnicht.
                hast Recht

                hopka.net!

                Kommentar


                • #23
                  ist ja immer true
                  aber

                  PHP-Code:
                  while($row mysql_fetch_array($result)) { 
                  geht ja auch. Und die "Klasse" bildet ja wie gesagt eigentlich nur aliase.

                  Allerdings könntest du recht haben, weil selbst beim OR kein FALSE kommt. Gut beobachtet.

                  Kommentar


                  • #24
                    OffTopic:
                    @hapka: Nene, offe ist hier der einzige, der noch beim Thema geblieben ist

                    Kommentar


                    • #25
                      achso wolltest ja denn aktuellen code

                      hier:
                      PHP-Code:
                      class db
                      {

                        var 
                      $_db_conn false;
                        var 
                      $_db_host 'localhost';
                        var 
                      $_db_user 'tobi1986m';
                        var 
                      $_db_pass 'yse-0663#';
                        var 
                      $_db_base 'portal';

                        function 
                      connect()
                        {
                          
                      $this->_db_conn mysql_connect($this->_db_host$this->_db_user$this->_db_pass) or die($this->get_mysql_error("Konnte keine verbindung herrstellen"));
                          
                      mysql_select_db($this->_db_base$this->_db_conn) or $this->get_mysql_error("konnte datenbank nicht finden");
                        }

                        function 
                      query($result)
                        {
                        
                      $this->connect();
                           
                      $zurueck = @mysql_query($result$this->_db_conn) or $this->get_mysql_error($result); //hier ist zeile 20
                           
                      return $zurueck;
                        }

                        function 
                      fetch_array($result)
                        {
                          
                      $this->connect();
                          
                      $zurueck = @mysql_fetch_array($result) or $this->get_mysql_error($result); // hier ist zeile 25
                          
                      return $zurueck;
                        }

                        function 
                      get_mysql_error($msg)
                        {
                          echo 
                      "MSG:";
                          echo 
                      $msg;
                          echo 
                      "<br>";
                          echo 
                      "Error:";
                          echo 
                      mysql_error();
                          echo 
                      "<br>";
                          echo 
                      "Error Nummer:";
                          echo 
                      mysql_errno();
                        }

                      Kommentar


                      • #26
                        *lol*

                        warum hast du denn jetzt die @s da rein gemacht? Meinst du dann wären die Fehler weg? du bist noch beim entwickeln. das dauert noch gaaaanz lange, bis du die da rein machen darfst!

                        wieso nennst du den parameter von query, $result und nicht $sql oder string oder sowas?

                        außerdem hatte offe eben mal was gesagt, was ich für nicht so abwegig halte.

                        Kommentar


                        • #27
                          so in etwa ist es ein bisschen fehlerfreier
                          PHP-Code:
                            function query($query)
                            {
                              
                          // ma die Variablen umbenannt, überflüssiges connect gelöscht
                              // und die Rückgabe aufgeräumt
                               
                          if ($zurueck = @mysql_query($query$this->_db_conn)) {
                                   return 
                          $zurueck;
                               } else {
                                  
                          $this->get_mysql_error($query);
                                  return 
                          false;
                               }
                            }

                            function 
                          fetch_array(&$result)
                            {
                              
                          // connect raus und rückgabe aufgeräumt
                              
                          if ($zurueck = @mysql_fetch_array($result)) {
                                  return 
                          $zurueck;
                              } else {
                                  
                          // String an Fehler-Funktion übergeben, kein SQL-Result !!!
                                  
                          $this->get_mysql_error("konnte Array nicht zurückgeben");
                                  return 
                          false;
                              }
                            } 
                          hopka.net!

                          Kommentar


                          • #28
                            da hängt immernoch ein fehler am ende dran
                            MSG:konnte Array nicht zurückgeben
                            Error:
                            Error Nummer:0

                            ich raff das net der macht doch die ausgabe wieso gibs dann einen fehler?

                            Kommentar


                            • #29
                              wenn du jetzt mal die @ davor wegmachst.

                              Kommentar


                              • #30
                                ich glaube immer noch das die while-schleife daran Schuld ist. Sie ruft solange auf solange Antworten kommen. Das heißt wenn es kein return mehr geben würde kommt es zum Fehler.

                                Das mit der Fehlerbehandlung führt nur zu einem anderen Fehler.

                                Offe

                                Kommentar

                                Lädt...
                                X