Stanload: Cannot redeclare class

Hallöchen,

da habe ich heute morgen nicht schlecht geschaut, als ich eine Seite bei mir aufrufen wollte, die schon seit Monaten so funktioniert und mir auf einmal einen solchen Fehler entgegen wirft:

Fatal error: Cannot redeclare class class_mysql
 in /home/www/n4b255/html/neu/inc/mysql.inc.php on line 3

In der mysql.inc.php schaut es so aus:
 <?php
 class class_mysql
 {
  var $host = "...";
  ...
 }
 ?>

Und aufgerufen wird wie folgt:
 <?php
 include("../inc/head.inc.php");
 include("../inc/mysql.inc.php");
 ...
 ?>

Also, wie gesagt, es funtionierte bis dato immer und ich habe in den Dateien auch nichts geändert.

Woran könnte es denn liegen?

Bis denn

Stanload

  1. Hi,

    Und aufgerufen wird wie folgt:
    <?php
    include("../inc/head.inc.php");
    include("../inc/mysql.inc.php");
    ...
    ?>

    wird mysql.inc.php noch an anderer Stelle inkludiert? Z.B. in head.inc.php?

    cu,
    Andreas

    --
    MudGuard? Siehe http://www.Mud-Guard.de/
    Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
    1. Hallöchen,

      wird mysql.inc.php noch an anderer Stelle inkludiert? Z.B. in head.inc.php?

      In der head.inc.php sind weitere Includes, und in einem davon wird diese dann auch schon einmal aufgerufen.

      Heisst das eventuell, dass ich in der anderen Datei die mysql.inc.php nicht mehr aufrufen muss?

      Bis denn

      Stanload

      1. Hi,

        wird mysql.inc.php noch an anderer Stelle inkludiert? Z.B. in head.inc.php?
        In der head.inc.php sind weitere Includes, und in einem davon wird diese dann auch schon einmal aufgerufen.
        Heisst das eventuell, dass ich in der anderen Datei die mysql.inc.php nicht mehr aufrufen muss?

        ICH würde anders vorgehen:

        es wird jeweils dort inkludiert, wo es benötigt wird.
        Aber nicht mit include, sondern mit include_once.

        cu,
        Andreas

        --
        MudGuard? Siehe http://www.Mud-Guard.de/
        Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
        1. Hallöchen,

          ICH würde anders vorgehen:

          es wird jeweils dort inkludiert, wo es benötigt wird.
          Aber nicht mit include, sondern mit include_once.

          Ursprünglich hatte ich in jeder Datei ein include("head.inc.php"); und include("foot.inc.php");. Diese beiden Dateien sind ausschließlich zum Seitenaufbau (inkl. Navigation) da. Der restliche Inhalt wird dazwischen gefüllt.

          Das würde heissen, dass ich alle Include-Anweisungen ändern müsste? Oder nur explizit die, in denen ich irgendwelche zusätzlichen Funktion (Connect zu mySQL, usw.) veranstalte?

          Bis denn

          Stanload

          1. Hi,

            Das würde heissen, dass ich alle Include-Anweisungen ändern müsste? Oder nur explizit die, in denen ich irgendwelche zusätzlichen Funktion (Connect zu mySQL, usw.) veranstalte?

            Die includes, die nur Funktionen/Klassen zur Verfügung stellen: include_once().

            Die includes, die tatsächlich was ausgeben: normaler include - bei denen darf es ja vorkommen, daß sie mehrfach verwendet werden.

            cu,
            Andreas

            --
            MudGuard? Siehe http://www.Mud-Guard.de/
            Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.