include geht nicht

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

  • include geht nicht

    hallo zusammen habe hier einen ganz komischen error

    ich habe eine function.php4 welche in die datei tabelle.php4 includet wird, wenn ich dies tue bekomme ich jedoch den fehler

    Cannot redeclare function connect()


    nehme ich das include raus dann sagt er mir das er die function connect nicht kennt. das verstehe ich nicht es kann ja nicht sein das ich sie 2 mal include wenn er sie nicht kennt wenn ich sie nicht include.

    kurz gesagt

    wen include dann: Cannot redeclare function connect()
    wenn nicht include: Unknown function connect()


    habe auch schon versucht die functionen von hand rein zu kopiren kommt aber das gleiche dabei raus. kann mir da jemand helfen?? hab mich schon dumm und dämlich gesucht.

    PS.: Es ist eine Frame seite links eine php und rechts eine!

    Danke schon mal
    Wusstet ihr schon?
    Wer später bremst ist länger schnell!

    Die wahrscheinlich beste Funktion in PHP ist mysql_error(), doch leider auch die unbekannteste!

  • #2
    hmm, post doch mal den code
    First: Things get worse under pressure.
    Second: If anything just cannot go wrong, it will anyway
    Third: A falling object will always land where it can do the most damage.

    Kommentar


    • #3
      Da connect() keine PHP-Funktion ist bietet sich der Rückschluß an, das connect() in der Datei "function.php4" definiert wird ... und diese mehrfach includet wird ...

      Ich persönlich hatte schon immer Schwierigkeiten mit der Unsitte include() bzw. require() zu verwenden ... in einem gut strukturierten Programm gibt es wenige Fälle in denen man diese Möglichkeiten nutzen sollte ... im allgemeinen ist die Verwendung von include_once() bzw. require_once() anzuraten ... wobei die require-Variante mir zudem noch weitaus sinnvoller erscheint. Der einzige Unterschied liegt im Programmablaufverhalten. include() gibt eine Warung aus wenn die Datei nicht gefunden wurden (und der Error-Level entsprechende eingestellt ist) ... require() bricht mit einem Fatal-Error ab, wodurch sich auf Live-Systemen oft die Fehler-Suchzeiten erheblich verkürzen.

      PS.: Dein Footer stammt aber auch von einem Pisa-Kind ... oder? Warum sollte Wissen keine Macht sein, wenn es gleichzeitig Macht ist zu wissen wo etwas steht ... irgendwie absurd oder??
      carpe noctem

      [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
      [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

      Kommentar


      • #4
        jo gut also der linke frame ruft diese datei auf

        PHP-Code:
         <?
        //****************************************************************//
        //** Script zum abfragen welchen Button ich gedrückt habe **//
        //****************************************************************//

        if ($spielplan != "")     //Wenn Button spielplan gedrückt rufe spielplan.php4 auf
         {
          include("spielplan.php4");
         }
        if ($btntab != "")    //Wenn Button Tabelle gedrückt rufe tabelle.php4 auf
         {
          require("tabelle.php4");  
         }
        if ($btnteams != "");    //Wenn Button Mannschaften gedrückt rufe teams.php4 auf
         {
          include("teams.php4");
         }
        ?>
        hier handelt es sich um die tabelle.php4

        Tabelle.php4:
        PHP-Code:

        <html>

        <head>
        </head>
        <body bgcolor="#CCCCFF">

        <?
        include ("function.php4");
        include ("data.php4");

        connect();



        $weri=send_sql("$db", "select name, bezeichnung from tabellen where id = $wer");

        $row=mysql_fetch_row ($weri);
        $name=$row[0];

        $tabelle=$name.'_tabelle';

        $sql=send_sql("$db", "select * from $tabelle order by punkte desc, div desc");

        echo "<p align='center'><b><font size='5'>Tabelle der $row[1] </font></b></p>";
        if (mysql_num_rows($sql) != 0)
        {
        ?>


        <div align="center">
          <center>
        <table>
        <tr><td width='20'><b>Pl.</b></td>
        <td width='190'><b>Mannschaft</b></td>
        <td width='40'><b>Sp.</b></td>
        <td width='40'><b>Gew.</b></td>
        <td width='40'><b>Un.</b></td>
        <td width='40'><b>Ver.</b></td>
        <td width='55'><b>Tore</b></td>
        <td width='40'><b>Diff.</b></td>
        <td width='40'><b>Pkte</b></td>
        </tr>
        <?
           $i=0;
           $j=0;                
           while ($row=mysql_fetch_row ($sql))
            {
                $mannschaft[$i]=$row[0];
                $spiele[$i]=$row[1];
                $win[$i]=$row[2];
                $unent[$i]=$row[3];
                $lose[$i]=$row[4];
                $tore[$i]=$row[5];
                $tore2[$i]=$row[6];
                        $div[$i]=$row[8];
                $punkte[$i]=$row[7];
                $platz=$j+1;
                
                echo "<tr>
                  
                          <td width='20'>$platz</td>
                  <td width='190'>$mannschaft[$j]</td>
                          <td width='40'>$spiele[$j]</td>
                          <td width='40'>$win[$i]</td>
                          <td width='40'>$unent[$i]</td>
                          <td width='40'>$lose[$i]</td>
                          <td width='55'>$tore[$j]:$tore2[$j]</td>
                    <td width='40'>$div[$j]</td>
                          <td width='40'>$punkte[$j]</td>
                     </tr>";
                 $i++;
                 $j++;
            }
         }
        else
        {
        echo "<br><p align='center'><font size='3'><b>Keine Tabelle vorhanden!</b></font></p>";
        }    
        ?>
          </center>
        </div>
        </table>
        </body>
        </html>
        und hier die function.php4

        function.php4:
        PHP-Code:
        <?

        function connect() 
         {
          global $host, $user, $password;
          if (! $linkid=mysql_connect("$host", "$user", "$password")) 
           { 
            echo "Die Verbindung zu ", $host, " konnte nicht hergestellt werden<br>";
            exit;
           }
          return $linkid; 
         } 



        //SQL Syntax

        function send_sql($db,$sql) 
         {
          if (! $res=mysql_db_query($db, $sql)) 
           {
            echo mysql_error();
            exit; 
           }
          return $res;
         } 


        ?>

        ich hoffe das langt

        danke schon mal
        Wusstet ihr schon?
        Wer später bremst ist länger schnell!

        Die wahrscheinlich beste Funktion in PHP ist mysql_error(), doch leider auch die unbekannteste!

        Kommentar


        • #5
          ist immer das gleiche egal ob

          require
          require_once
          include
          include_once

          ich verzweifle hier noch des is doch alles sch***e
          in jeder anderen datei funKtioniert es doch
          Wusstet ihr schon?
          Wer später bremst ist länger schnell!

          Die wahrscheinlich beste Funktion in PHP ist mysql_error(), doch leider auch die unbekannteste!

          Kommentar


          • #6
            Wenn du die Funktionen von Hand darein kopiert hast und er dir den selben fehler bringt, dann kann es ja nucht an dem Includen liegen.
            PHP-Code:
            function connect($host$user$password
             {
              if (! 
            $linkid=mysql_connect("$host""$user""$password")) 
               { 
                echo 
            "Die Verbindung zu "$host" konnte nicht hergestellt werden<br>";
                exit;
               }
              return 
            $linkid
             } 
            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


            • #7
              Also wenn Du alle includes durch require_once's ausgetauscht hast ... dann glaube ich Dir das nicht ...

              Anyway ... was passiert in: data.php4 ??
              carpe noctem

              [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
              [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

              Kommentar


              • #8
                bin mir sicher das ich alle ausgetauscht habe

                die data.php4 sieht so aus


                PHP-Code:
                <?
                $mysql_host = 'localhost';

                $mysql_user = '';

                $mysql_pw = ''; 

                $db='tabellen'; 

                ?>

                wenn ich das include in der tabelle.php4 raus nehme sagt er ja auch plötzlich das er die beiden funktionen nicht kennt

                das heist einmal includen will er net dann sagt er die funktion wäre doppelt und nicht includen geht auch net dann sagt er funktion nicht vorhanden

                EIN TEUFELSKREIS!!!
                Wusstet ihr schon?
                Wer später bremst ist länger schnell!

                Die wahrscheinlich beste Funktion in PHP ist mysql_error(), doch leider auch die unbekannteste!

                Kommentar


                • #9
                  Die Variablen stimmen nicht mit deinen Variablen in der Funktion connect überein...

                  $mysql_host -> $host
                  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


                  • #10
                    hab ich geändert

                    aber es geht ja sonst alles das kann es ja wohl net sein ich habe ja noch 10 andere scripte die genau die gleiche data und function php benutzen!

                    Habe die daten jetzt direkt in der funktion angegeben


                    *verzweifel*
                    Zuletzt geändert von shortie19; 28.02.2003, 14:31.
                    Wusstet ihr schon?
                    Wer später bremst ist länger schnell!

                    Die wahrscheinlich beste Funktion in PHP ist mysql_error(), doch leider auch die unbekannteste!

                    Kommentar


                    • #11
                      Zumal die auch weder and die Funktion übergeben ... noch via GLOBAL verfügbar gemacht werden ... diese dann auch recht sinnlos erscheinen ...

                      Auf jedem vernünftigen Testsystem würdest Du schon "Missing Argument" - Fehlermeldungen bekommen ...

                      Sowas ist auch Unsinn:
                      if (! $linkid=mysql_connect("$host", "$user", "$password"))

                      und kann durch das hier ersetzt werden:
                      if (! $linkid=mysql_connect($host, $user, $password))

                      Ich würde mal vorschlagen das Du am Anfang deines Hauptscriptes erstmal ein error_reporting(E_ALL); setzt ... das macht die Fehlersuche einfacher ... !

                      Ich denke mal das es dennoch Fakt ist das die functions.php4 mehrfach included wird ... sonst würde die Funktion nicht mehrfach definiert werden ...
                      carpe noctem

                      [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
                      [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

                      Kommentar


                      • #12
                        Include die 2 Dateien doch mal in/vor dem Frameset!?
                        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


                        • #13
                          leute ich habe den fehler gefunden!!

                          danke euch nochmal für die schnelle Hilfe


                          es lag an der manschaft.php4

                          PHP-Code:
                           <?
                          //****************************************************************//
                          //** Script zum abfragen welchen Button ich gedrückt habe **//
                          //****************************************************************//

                          if ($spielplan != "")     //Wenn Button spielplan gedrückt rufe spielplan.php4 auf
                           {
                            require_once("spielplan.php4");
                           }
                          if ($btntab != "")    //Wenn Button Tabelle gedrückt rufe tabelle.php4 auf
                           {
                            require_once("tabelle.php4");  
                           }
                          /*if ($btnteams != "");    //Wenn Button Mannschaften gedrückt rufe teams.php4 auf
                           {
                            require_once("teams.php4");
                           }*/
                          ?>
                          hier ist eine if anqeisung welche überprüft ob der button btnteams gedrückt wurde diesen butten habe ich aber noch nicht eingebaut somit hatt er diese bedingung immer als wahr interpretiert und die function in der teams.php4 nochmal includet.

                          nehme mal an das es so gelaufen ist zumindest wenn ich diese Anweisung ausremme dann functioniert es!


                          Vielen Dank noch mal an alle das mit dem error_reporting(E_ALL) muss ich mir merken ist echt praktisch!
                          Wusstet ihr schon?
                          Wer später bremst ist länger schnell!

                          Die wahrscheinlich beste Funktion in PHP ist mysql_error(), doch leider auch die unbekannteste!

                          Kommentar


                          • #14
                            LOL, kleine Ursache, große Wirkung
                            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


                            • #15
                              Original geschrieben von goth
                              PS.: Dein Footer stammt aber auch von einem Pisa-Kind ... oder? Warum sollte Wissen keine Macht sein, wenn es gleichzeitig Macht ist zu wissen wo etwas steht ... irgendwie absurd oder?? [/B]
                              irgendwie schon!
                              hrhr, und wenn du weisst, wo etwas steht, dann ist das auch wissen!

                              also: aussage überarbeiten shortie

                              Kommentar

                              Lädt...
                              X