Cannot instantiate non-existent class???????

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

  • Cannot instantiate non-existent class???????

    Ich habe ein Problem was ich irgendiwe nich ganz so verstehe.

    Ich habe eine Classe geschrieben. Diese dient zum Darstellen einer Baumstruktur.
    Die Baumstruktur funktioniert auch.

    Habe das ganze Script dann auf einen anderen Server umgezogen. Die Scripts sind die selben. Habe es ja von einem Webserver auf den anderen Webserver kopiert.

    Ich bekomme jedoch folgende Fehlermeldung:

    Parse error: parse error in /www-root/equitania.com/treeview/php3/inc/tree.class.php3 on line 10


    Fatal error: Cannot instantiate non-existent class: eu_tree in /www-root/equitania.com/treeview/php3/maincategory.php3 on line 53


    Liegt das dem Server? Hoffe mir kann jemand helfen. Bin am verzweifeln
    Wo ist das Problem, das es auf dem einem Webserver läuft, auf dem anderen aber nicht?

    Jeder Vorschlag oder jede Vermutung kann mir weiterhelfen. Danke.
    Ans Ziel kommt nur der, der auch eins hat. www.e-cross.info

  • #2
    versuchs mal mit der Endung *.php
    *nursoeineidee*

    gruss
    berni

    php-Entwicklung | ebiz-consult.de
    PHP-Webhosting für PHP Entwickler | ebiz-webhosting.de
    die PHP Marktplatz-Software | ebiz-trader.de

    Kommentar


    • #3
      Ne das war es leider nicht.
      Weitere Ideen?
      Ans Ziel kommt nur der, der auch eins hat. www.e-cross.info

      Kommentar


      • #4
        Hier ust mal eni Codeschnipsel. DIe Zeilennummer habe ich teilweise markiert:

        1 :<?
        2 :/*



        6: Class Tree
        */

        9 :class EU_tree {
        10 :var $script = $SCRIPT_NAME;
        //var $cfgPicDir = '../images';
        var $Img_Expand = $cfgPicDir."/tree_expand32.gif";
        var $Img_Collapse = $cfgPicDir."/tree_collapse32.gif";
        var $Img_Line = $cfgPicDir."/tree_vertline.gif";
        var $Img_Split = $cfgPicDir."/tree_split.gif";
        var $Img_End = $cfgPicDir."/tree_end.gif";
        var $Img_Leaf = $cfgPicDir."/tree_leaf32.gif";
        var $Img_Leaf2 = $cfgPicDir."/tree_link.gif";
        var $Img_Spc = $cfgPicDir."/tree_space.gif";

        So und hier ist nach Angaben des Parsers in Zeile 10 ein Parsefehler, nur ich kann Ihn nicht finden.

        Was zum kukuk ist das Problem?
        Ans Ziel kommt nur der, der auch eins hat. www.e-cross.info

        Kommentar


        • #5
          Hat sich durch Wechsel des Webserver PHP-Interpreter/Compiler/Modul geändert?!
          Yuppi, endlich Elite ...

          Kommentar


          • #6
            "Hat sich durch Wechsel des Webserver PHP-Interpreter/Compiler/Modul geändert?!"

            Nein es hat sich garnichts geändert. Ich habe 2 Webserver. Auf dem einen habe ich das ganze entwickelt. Nachdem alles funktionierte, habe ich die Files auf den anderen, auf den später auch die Seite läuft, geschoben.
            Es hat sich weder was am Skript noch am WebServer etwas geändert.

            Ist es jedoch möglich das eine Einstellung am Webserver für das Problem verantwortlich ist.
            Ans Ziel kommt nur der, der auch eins hat. www.e-cross.info

            Kommentar


            • #7
              Darauf zielte die Frage ab. Du mußt doch PHP auf zweiten Webserver installiert haben oder installieren lassen.- Andere PHP-Version, anderer Web-Servertyp oder andere Konfigurationseinstellung?!

              Ist die Verzeichnisstruktur konform?!

              Sollte da nicht besser stehen:
              class EU_Tree extends Tree{
              ... ?!?

              [Editiert von Blaster am 04-12-2001 um 15:45]
              Yuppi, endlich Elite ...

              Kommentar


              • #8
                "Darauf zielte die Frage ab. Du mußt doch PHP auf zweiten Webserver installiert haben oder installieren lassen.- Andere PHP-Version, anderer Web-Servertyp oder andere Konfigurationseinstellung?!"

                Also zu den Einstellungen kann ich nur folgenden sagen. Es läuft auf beiden Servern Apache, PHP 4.0.6.
                Ein Unterschiet ist, das PHP auf dem Server, auf dem es funktioniert als CGI läuft und auf dem Server, auf dem es nicht funktioniert ist PHP ein Modul von Apache.

                Könnte ja sein, dass das das Problem ist? Aber wenn, wüsste ich nicht wo ich da hingreifen sollte.

                "Ist die Verzeichnisstruktur konform?!"

                Die Verzeichnisstruktur ist identisch. Auf beiden Server.
                Wenn das der Fall wäre, müsste doch auch eine andere Fehlermeldung kommen oder?

                "Sollte da nicht besser stehen:
                class EU_Tree extends Tree{
                ... ?!?"

                Ja hatte ich auch schon in betracht gezogen. Das ist es aber leider auch nicht.

                Das ist die Zeile 53 aus der maincategory.php3 "$mytree = new EU_tree;"

                Wie du siehst habe ich Groß- Kleinschreibung schon beachtet. Das kann es also auch nicht sein. Wäre das der Fehler, müsste es doch auf dem anderen Webserver auch nicht funktionieren oder?
                Wie kommst du auf "class EU_Tree extends Tree{"?

                Gruß

                Ans Ziel kommt nur der, der auch eins hat. www.e-cross.info

                Kommentar


                • #9
                  Hmmm Probier mal $mytree = new EU_Tree();

                  Kommentar


                  • #10
                    Habe selbst Apache/CGI-PHP auf Entwicklungsmaschine und Kunden die Provider Apache/Modul-PHP hatten, müßte in der Tat schon Modifikationen vornehmen. Könnte auch an unterschiedlichen Betriebssystemen liegen win<->unix, kenne deine Scripte nicht.

                    Ich habe das Code-Fragment so verstanden, dass class tree Basis-Klasse ist und EU_Tree Unterklasse, deshalb Formulierung:
                    class EU_Tree extends Tree, damit übergibst du Gültigkeitsbereich von Tree auf EU_tree.

                    Mißverständnis?!
                    Yuppi, endlich Elite ...

                    Kommentar


                    • #11
                      @pekka

                      Ne das war auch nichts das Problem, habs gerade ausproboert gehabt.

                      @Blaster

                      Zu den Betriebssystemen kann ich sagen, das das Betriebssystem, auf dem mein Script funktioniert Solaris ist. Das Betriebssystem des anderen Servers ist Linux 7.2.

                      Eine Unterklasse gibt es nicht. Es gibt nur eine Basisklasse und das ist EU_tree.
                      Ans Ziel kommt nur der, der auch eins hat. www.e-cross.info

                      Kommentar


                      • #12
                        Wie und wo ist $SCRIPT_NAME bei dir deklariert/definiert?
                        Yuppi, endlich Elite ...

                        Kommentar


                        • #13
                          "var script = $SCRIPT_NAME;"

                          $SCRIPT_NAME ist eine Servervariable.
                          Frage hat sich damit beantwortet oder?
                          Ans Ziel kommt nur der, der auch eins hat. www.e-cross.info

                          Kommentar


                          • #14
                            Oh, peinlich! Sollte mir noch einmal die Umgebungsvariabeln anschauen. Aber, das brachte mich auf eine andere Idee - in der Apache gibt es Konfig-Einstellungen, die Umgebungsvariabeln unterdücken. Die Umgebungsvariabel ist abrufbar?!
                            Yuppi, endlich Elite ...

                            Kommentar


                            • #15
                              versuch´s mal mit __FILE__ oder $HTTP_SERVER_VARS[SCRIPT_NAME] statt $SCRIPT_NAME
                              Könnte sein, dass es bei __FILE__ Probleme mit den Verzeichnissen gibt, müsstest du halt noch anpassen.
                              mein Sport: mein Frühstück: meine Arbeit:

                              Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

                              Kommentar

                              Lädt...
                              X