Globale Variablen

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

  • Globale Variablen

    Hi !

    Folgendes Problem habe ich (eigentlich dürfte es keins sein).

    Ich habe 2 Dateien admin.php und funktionen.inc und in der admin.php include ich die funktionen.inc.

    Nun habe ich in der funktionen.inc ca. 10-15 Funktionen drin, die immer wieder die gleichen Variablen benötigen (nämlich die zum Verbinden mit der Datenbank). Ich möchte die Variablen nun aber nicht als Parameter den Funktionen mitgeben, sondern am liebsten 1x definieren, so dass sie IM GESAMTEN Skript Gültigkeit haben.
    Habe die Variablen zuerst in der ersten Funktion in der .inc-Datei als GLOBAL definiert (z.B. GLOBAL $server; $server='localhost', aber leider funktionierten sie bei den anderen Funktionen nicht mehr.
    Dann dachte ich mir, dass ich extra eine Funktion mache, die einfach die Variablen als GLOBAL setzt und diese direkt am Anfang der Datei admin.php aufrufe, aber auch NIX. Gleich die nächste Funktion, die ich in der admin.php aufgerufen habe (die Funktion ansich befindet sich in der funktionen.inc Datei), hatte nur noch leere Variablen als ich versucht habe, den Inhalt der Variablen mit echo auszugeben.
    Wie mache ich das nun richtig ?

    MfG und schonmal Danke

    Le_Cheffe

  • #2
    wenn du das ganze sql-zeug

    mysql_connect()
    select_dB()

    am anfang der funktionen.inc.php machst, dann solltest du damit wunderbar arbeiten können. Du brauchst dafür keine extra Funktion oder so machen. Einfach als aller erstes reinschreiben und frertig.

    Kommentar


    • #3
      du kannst variablen nicht als global definieren.

      wenn du innerhalb einer funktion mit
      global $bla;

      arbeitest, bezieht sich das nur auf diese eine funktion - in anderen funktionen besitzt das keine gültigkeit.

      alternativ könntest du mit konstanten arbeiten, die sind dann wirklich *superglobal*.
      noch sinnvoller wärs aber, wenn du dich mit objektorientierter programmierung beschäftigen und das ganze geschickt mit einigen klassen ineinander verstricken würdest.
      martin

      Kommentar


      • #4
        @TobiaZ
        Würde dies sich auch über Konstanten lösen lassen?
        http://www.php.net/manual/de/language.constants.php
        mfg
        Günni


        Praxis: Jeder kann´s, aber keiner weiß wie´s geht...
        Theorie: Jeder weiß wie´s geht, aber keiner kann´s ...
        Microsoft vereint Praxis und Theorie: Nix geht und keiner weiß warum
        City-Tiger - Online durch die Straßen tigern...

        Kommentar


        • #5
          Hi !

          Danke für die Tipps. Werde es mal mit Konstanten ausprobieren und hoffen, dass es funktioniert.

          @TobiaZ: Habe ich deinen Vorschlag richtig verstanden ? Ich schreibe am Anfang der Datei funktionen.inc.php sowas wie

          PHP-Code:

          //Varibalen hier vereinbaren

          $verbindung mysql_connect $server,$benutzer,$passwort);
          mysql_select_db($dbname$verbindung); 
          und dann kann ich mit den ganzen anderen Funktionen in der funktionen.inc.php darauf zurückgreifen ?

          @martin_de : Danke für den Hinweis auf OOP, aber mit OOP stehe ich auf Kriegsfuß. Vielleicht habe ich noch nicht die richtigen Tutorials gehabt, aber das Zeug mit Klassen, Methoden und dem ganzen geht mir irgendwie ab.

          MfG

          Le_Cheffe

          Kommentar


          • #6
            Ja, so sollte es gehen.

            Je nach Größe des Scripts sind Klassen aber auch zu empfehlen...

            Kommentar

            Lädt...
            X