fritz schneider: mit require und include mySQL-Daten einbinden - geht nicht

Hallo zusammen,

ich habe eine größerer Datenbank, mit funktionen wie ändern, löschen neu anlegen etc. Da ich nicht für jede Seite die Zugangsdaten zur mySQL-DB eingeben möchte, habe ich eine Datei erstellt mit config.inc und dort die mysql-zugangsdaten eingegeben und mit require in der jeweiligen php-datei eingebunden. Aber irgendwie funktioniert es nicht, auch mit include gibt es probleme. wenn ich die seite dann aufrufe, gibt er die daten dann aus als ob es text wäre also so:

$dbname = "localhost"; $dbuser = "XXX"; $dbpasswd = "rXXX"; $database = "XXX"; $dbtable = "XXX";
Warning: Access denied for user: 'wwwrun@localhost' (Using password: NO) in /pfad/uebersicht.php on line 17

Warning: MySQL Connection Failed: Access denied for user: 'wwwrun@localhost' (Using password: NO) in /pfad/uebersicht.php on line 17
Could not connect

wisst ihr vielleicht weshalb das nicht funkioniert?

Danke im Voraus.

Gruß Fritz

  1. Hallo Fritz,

    also ich würde meine Bibliotheken nicht .inc nennen sondern .php weil ansonsten der Quellcode von außerhalb ausgelesen werden könnte.

    Versuch es mal mit .php und denk an die Form der Datei:

    <?PHP

    function ..... (....) {}

    .
    .
    .
    .

    ?>

    Grüße, Matthias

    1. hallo Matthias,

      wie meinst du das mit den function? ich habe es bisher so gemacht, dass ich eine php datei für ändern habe, eine php datei für löschen und eine php für neu anlegen habe. geht das mit function auch einfacher?

      ciao fritz

      1. Hallo,

        ich meine das so, dass Du quasi eine Bibliothek anlegst, in der häufig wiederkehrende Aufgaben in Funktionen gespeichert werden.

        Zum Beispiel hast Du eine Funktion, die sich mit Deiner DB verbindet

        function db_connect () {

        .....
        .....
        .....

        return $link; }

        dann eine Funktion die was ändert

        function aendere ( $wasanderes ) {

        $link = db_connect();
        .
        .
        .

        }

        Und diese Funktionen kannst Du aus Deiner Heimatdatei aufrufen.

        <html>
        <head>
        <?PHP include("funktionen.php");  ?>
        </head>
        <body>
        <?

        $neuerwert = "kifjf";
        aendere ( $neuerwert );

        ?>
        </body>
        </html>

        1. hi mathias,

          danke dir für die super erklärung - jetzt habe ich es endlich verstanden!!!

          Danke

          ciao fritz

      2. Hallo,

        wie meinst du das mit den function? ich habe es bisher so gemacht, dass ich eine php datei für ändern habe, eine php datei für löschen und eine php für neu anlegen habe. geht das mit function auch einfacher?

        Das geht mit Funktionen um _einiges_ einfacher...
        http://www.php.net/manual/de/functions.php

        Du kennst ja sicher das PHP Manual?
        http://www.php.net/manual/de/

        mfg,
          Philip

        --
        :::::::: http://www.metrox.de ::::::::
    2. Hallo mathias,

      habe die datei in .php umbenannt - es funktioniert aber leider immer noch nicht - woran liegt das?

      ciao fritz

      1. hi,

        habe die datei in .php umbenannt - es funktioniert aber leider immer noch nicht - woran liegt das?

        du hast uns immer noch nicht gezeigt, wie du das einbinden machst - was erwartest du jetzt von uns, kaffeesatz lesen?

        gruss,
        wahsaga

        1. hi wahsaga

          so schauts bei mir aus:

          <?php

          require "dbconfig.php";
          $orderby = $_GET[orderby];
          $sort = $_GET[sort];

          $link = mysql_connect($DB_Server, $DB_User, $DB_Pass)
                  or die ("Could not connect");
                    mysql_select_db ($DB_name)
                  or die ("Could not select database");

          $query="SELECT * FROM $dbtable ORDER BY $orderby $sort";
                   $result = mysql_query ($query)
                       or die ("Query failed");

          while($line = mysql_fetch_array($result))
          {

          print " INHALT ";

          }

          mysql_close($link);
          ?>

          und die datei wird nicht richtig eingeladen als variablen sondern als text.

          und ich hätte gerne dass ich die variablen verwenden kann um mit diesen die db anzusprechen.

          hoffe jetzt ist es verständlicher

          ciao fritz

          1. hi,

            so schauts bei mir aus:

            <?php

            require "dbconfig.php";

            und was steht in _der_ datei drin ...?

            gruss,
            wahsaga

            1. hi,

              dort steht lediglich folgendes drin:

              $dbname = "localhost";
              $dbuser = "XXX";
              $dbpasswd = "XXX";
              $database = "XXX";
              $dbtable = "projets";

              sonst nichts. hab mir mal andere php-scripts angesehn die includen auch eine config.inc mit den mysql-login daten und bei denen funzt es.

              gruß fritz

              1. hi,

                dort steht lediglich folgendes drin:

                $dbname = "localhost";
                ...
                sonst nichts.

                dann möchtest du da sicher mal
                <?php
                davor und
                ?>
                dahinter schreiben, damit dein PHP-parser auch weiss, dass das PHP-code sein soll.

                gruss,
                wahsaga

                1. hi,

                  dann möchtest du da sicher mal
                  <?php
                  davor und
                  ?>
                  dahinter schreiben, damit dein PHP-parser auch weiss, dass das PHP-code sein soll.

                  ja genau das möchte ich !!!

                  danke dir ;-)

                  jetzt funktioniert es ;-)

                  ciao fritz