Ressourcen-Kennung einer MySQL-Verbindung

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

  • Ressourcen-Kennung einer MySQL-Verbindung

    Hallo!
    Ich habe eine Klasse geschrieben, die mir den Zugriff auf eine MySQL-Datenbank regelt.
    Wenn ich im selben Skript zwei unterschiedliche Objekte instanziiere, also z.B.
    PHP-Code:
    $my01 = new MySQLGateway();
    $my02 = new MySQLGateway(); 
    wieso bekommen beide dieselbe Ressourcenkennung? Wenn ich dann, brav halt, die eine Verbindung schließe, ist die andere gleichzeitig auch weg. Ist das 'normal'?

    Danke, Stefan
    Man strahlt hier nicht in Wien - denn bald strahlt es aus Temmelin :-|

  • #2
    ja, das ist normal

    benutze für die zweite Verbindung einen anderen User,
    dann bekommst du auch eine zweite echte Verbindung
    TBT

    Die zwei wichtigsten Regeln für eine berufliche Karriere:
    1. Verrate niemals alles was du weißt!


    PHP 2 AllPatrizier II Browsergame

    Kommentar


    • #3
      Okay, nachdem ich keine Berechtigung für CREATE USER habe, verzichte ich wohl oder übel auf das Schließen.

      Danke für die Info!
      Steff
      Man strahlt hier nicht in Wien - denn bald strahlt es aus Temmelin :-|

      Kommentar


      • #4
        Vielleicht machst du eine klasse nur pro mysql_query(), wie ich es in einem Tutorial gesehen habe http://tut.php-q.net/mysql-class.html

        Kommentar


        • #5
          Du kannst doch auch innerhalb der Klassen beim Aufruf von mysql_connect einen Parameter übergeben, der dafür sorgt, dass eine neue Verbindung aufgebaut wird. Du musst dann halt nur aufpassen, dass du bei mysql_query und ähnlichen Funktionen immer die Verbindung mit übergibst.

          Näheres dazu steht im Handbuch.
          hopka.net!

          Kommentar


          • #6
            Danke für diese beiden Tipps!

            Ich hab das Tutorial nicht gekannt, aber nach jetzigem Durchlesen muss ich feststellen, dass ich meine Klasse genau so programmiert habe.

            Ich hab in der Klasse eine Methode, die prüft, ob die Verbindung zur Datenbank bereits besteht. Wenn nein, öffnet sie die Verbindung.

            Die Idee war diese, dass ich dieselbe Instanz dieser Klasse immer wieder verwende, damit ich mich pro Seitenaufruf nur einmal mit der Datenbank verbinden muss und die Verbindung nicht ständig auf- und wieder abbauen muss (auch wenn sie gepoolt wird...).
            (Ein Seitenaufruf besteht aus variabel viel includes).

            Aber irgendwie scheint das nicht ganz zu funktionieren...
            Auch wenn ich viele verschiedene Instanzen der Klasse ableite, verwenden diese immer dieselbe Ressourcen-Kennung (was nach dem Beitrag von TBT logisch ist). Aber damit bringt's nix, mehrere Instanzen zu bilden.

            LGs Steff
            Man strahlt hier nicht in Wien - denn bald strahlt es aus Temmelin :-|

            Kommentar


            • #7
              Original geschrieben von Hopka
              Du kannst doch auch innerhalb der Klassen beim Aufruf von mysql_connect einen Parameter übergeben, der dafür sorgt, dass eine neue Verbindung aufgebaut wird. Du musst dann halt nur aufpassen, dass du bei mysql_query und ähnlichen Funktionen immer die Verbindung mit übergibst.

              Näheres dazu steht im Handbuch.

              Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

              bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
              Wie man Fragen richtig stellt

              Kommentar

              Lädt...
              X