Access denied ! ....ich raff das net :(

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Access denied ! ....ich raff das net :(

    Hi,

    folgendes Problem :

    Ich hab in einer config.inc.php die zugangsdaten für MySQL gespeichert, was ja auch gängige praxis ist. Soweit so gut.
    Den ganzen Connect Kram hab ich als funktion in einer funktions.inc.php geschrieben.

    Auf meinem lokalen Server alles kein Problem, funzt einwandfrei, aber auf jedem meiner Webserver bekomm ich immer ein Access denied for User....bla..bla, obwohl die daten richtig geholt wurden...

    Hier mal die functions.inc.php

    PHP Code:
    <?

    $c_version = "1.0";

    $connect = mysql_connect( "$db_host", "$db_user", "$db_pass" );

    ################################################################################
    #################### Funktion Datenbank Verbindung #############################

    function conn_db(){
        global $DOCUMENT_ROOT;
        global $db_name;
        global $db_host;
        global $db_user;
        global $db_pass;
        global $connect;
        require ("$DOCUMENT_ROOT/configs/config.inc.php");
        if (! $connect)
        die( "Keine Verbindung zu MySQL");
        mysql_select_db( $db_name )
        or die ( "Keine Verbindung zur Datenbank $db_name" );
    }

    ################################################################################
    ...das funktioniert nicht ! Sobald ich mir die Logindaten aber nicht aus der config.inc.php hole, klappt es wunderbar...

    so gehts :

    PHP Code:
    <?

    $c_version = "1.0";

    $connect = mysql_connect( "meinsql", "username", "passwort" );

    ################################################################################
    #################### Funktion Datenbank Verbindung #############################

    function conn_db(){
        global $DOCUMENT_ROOT;
        global $connect;
        require ("$DOCUMENT_ROOT/configs/config.inc.php");
        if (! $connect)
        die( "Keine Verbindung zu MySQL");
        mysql_select_db( meine_datenbank )
        or die ( "Keine Verbindung zur Datenbank meine_datenbank" );
    }

    ################################################################################

    Wie kann das angehen ?? Auf meinem localhost geht dad ja auch


    Grüsse
    -=Es gibt Leute, die können Ihren Stammbaum bis zu denen zurückverfolgen, die noch darauf saßen=-

  • #2
    Check mal ob Deine config.inc.php mit <? beginnt.
    Check mal ob Deine config.inc.php tatsächlich required wird, weil nähmlich unter Umständen -> http://www.php-resource.de/forum/sho...&threadid=8858

    Comment


    • #3
      hmm...nee

      erstmal thx für deine antwort, aber...

      ... ne, das kann nicht das problem sein, da in der access denied meldung ja der richtige Username aus der config.inc.php steht.

      Warning: MySQL Connection Failed: Access denied for user: 'MeinUsername@localhost' (Using password: YES) in ...


      und den Usernamen kann er sich ja nur aus der config geholt haben....ne ne, der wurm is da irgenwo anders drin.... fragt sich nur wo ???
      -=Es gibt Leute, die können Ihren Stammbaum bis zu denen zurückverfolgen, die noch darauf saßen=-

      Comment


      • #4
        Kontrolliere bitte die Inhalte der Tabellen
        Code:
        +-----------------+
        | Tables_in_mysql |
        +-----------------+
        | columns_priv    |
        | db              |
        | func            |
        | host            |
        | tables_priv     |
        | user            |
        +-----------------+
        ob die korrekt und plausibel sind

        Comment


        • #5
          ähmm...

          ich hab da aber keinen zugriff drauf....über phpMyAdmin seh ich halt nur meine Datenbanken.... Weil das virtueller webpspace is...

          aber ob das das problem ist...andere user haben damit bei dem provider offensichtlich kein problem

          na ja..wenns gar net anders geht muss ich halt die daten mit in die funktion schreiben....shitkram
          -=Es gibt Leute, die können Ihren Stammbaum bis zu denen zurückverfolgen, die noch darauf saßen=-

          Comment


          • #6
            Ich kenn mich zwar nicht so aus, aber versuchs doch mal mit

            a) require_once ("$DOCUMENT_ROOT/configs/config.inc.php");
            b) include ("$DOCUMENT_ROOT/configs/config.inc.php");
            c) include_once ("$DOCUMENT_ROOT/configs/config.inc.php");

            Vielleicht klappt das ja.

            Eventuell koennte auch einer von den Mods mir mal erklaeren wo der unterschied zwischen require(), require_once(), include() und include_once() liegt (In SelfPHP raff ich den Unterschied irgendwie net).

            Comment


            • #7
              THX @ tortus@work,

              ..aber require_once soll nur verhindern, das eine datei 2x in das gleiche dokument eingebunden wird.... das gleiche mit include
              -=Es gibt Leute, die können Ihren Stammbaum bis zu denen zurückverfolgen, die noch darauf saßen=-

              Comment


              • #8
                Den richtigen Usernamen mit Leserechten hast Du auch genommen?! Und das Passwort dazu passt auch?! Meine Website liegt bei Kontent und da hat man nur eine DB in der man seine Tabellen erstellen kann - und als Username muss man den namen der DB nehmen... daher hab ich mir angewöhnt meine lokalen Datenbank genauso zu benennen - wenn das script dann online geht muss nur noch das "localhost" gegen "mysql1.kontent.de" ausgetauscht werden

                Comment


                • #9
                  jo...die zugangsdaten sind alle korrekt.... 100x geändert

                  ich bei bei artfiles und da ist es ungefähr genau so.... username gleich name der datenbank.... an falsche zugangsdaten hab ich als erstes gedacht

                  ich hab aber jetzt die daten einfach in die functions.inc mit rein geschrieben und die config gelöscht...nicht die schönste lösung, aber es funktioniert

                  Internette Grüsse
                  -=Es gibt Leute, die können Ihren Stammbaum bis zu denen zurückverfolgen, die noch darauf saßen=-

                  Comment


                  • #10
                    Hm. Ich versteh nicht ganz.. du rufst die Funktion conn_db() ja gar nicht auf.. Da die config.php ja IN DER FUNKTION eingebunden wird, steht sie vor dem Aufruf gar nicht zur verfügung. D.h. es geht nicht, díe Verbindung aufzubauen, bevor die Funktion nicht aufgerufen wurde; wurde aber noch keine Verbindung aufgebaut, bricht die Funktion ja ab.
                    [color="#334D7B"]"Los, lass uns loslegen! Hm ? Quatschen können wir hinterher immer noch!"[/color]
                    [color="#9C5245"]"Aber Bommel, wir können jetzt nicht bumsen. Wir müssen doch erst den Kindern - ... "[/color]
                    [color="#334D7B"]"Ja ja ja. Du willst immer nur das Eine. Buchstabenzeigen, Buchstabenzeigen - meine Gefühle sind dir wohl scheißegal."[/color]

                    © Harald Schmidt

                    Comment


                    • #11
                      hmm....doch, die function rufe ich auf....

                      also z.B. folgender ablauf :

                      code in der login.php

                      PHP Code:
                      require("$DOCUMENT_ROOT/inc/functions.inc.php");

                      conn_db();

                      bla...bla..bla bla 
                      die functions.inc
                      PHP Code:
                      $connect mysql_connect"$db_host""$db_user""$db_pass); //connect wird definiert

                      ################################################################################
                      #################### Funktion Datenbank Verbindung #############################

                      function conn_db(){
                          global 
                      $DOCUMENT_ROOT;
                          global 
                      $db_name;
                          global 
                      $db_host;
                          global 
                      $db_user;
                          global 
                      $db_pass;
                          global 
                      $connect;
                          require (
                      "$DOCUMENT_ROOT/configs/config.inc.php"); //hier werden die daten aus der config geholt
                          
                      if (! $connect)
                          die( 
                      "Keine Verbindung zu MySQL");
                          
                      mysql_select_db$db_name )
                          or die ( 
                      "Keine Verbindung zur Datenbank $db_name);

                      Das sollte doch funktionieren.... zumindest tut es das ja auf meinem localhost

                      Ich bin wahrscheinlich schon erblindet Villeicht könnte mir mal jemand einen besseren code posten... THX
                      -=Es gibt Leute, die können Ihren Stammbaum bis zu denen zurückverfolgen, die noch darauf saßen=-

                      Comment


                      • #12
                        Was passiert zwischen Variablenbelegung $connect dem Aufruf der Funktion conn_db() ?
                        Der Aufruf der Funktion erfolgt irgendwo außerhalb der "functions.inc" oder? Wo das ist sieht man nicht.
                        Irgendwo muß eine Zeile vorkommen
                        PHP Code:
                        conn_db(); 
                        Aber wo?

                        Werden vielleicht die Variablen $db_host, $db_user, $db_pass auch in der "config.inc.php" definiert?

                        Wenn ja : Kann es sein, daß zum Zeitpunkt des requires oder includes von "functions.inc" das File "config.inc.php" noch nicht required oder includet wurde?

                        Comment


                        • #13
                          Ha, das geht natürlich nicht.
                          Du musst schon die config.php einbinden, bevor du auf die Variablen in der config.php zugreifst
                          [color="#334D7B"]"Los, lass uns loslegen! Hm ? Quatschen können wir hinterher immer noch!"[/color]
                          [color="#9C5245"]"Aber Bommel, wir können jetzt nicht bumsen. Wir müssen doch erst den Kindern - ... "[/color]
                          [color="#334D7B"]"Ja ja ja. Du willst immer nur das Eine. Buchstabenzeigen, Buchstabenzeigen - meine Gefühle sind dir wohl scheißegal."[/color]

                          © Harald Schmidt

                          Comment


                          • #14
                            ähh....hehe...upps

                            alles klar.....funzt, logo *gg*

                            DANKE !
                            -=Es gibt Leute, die können Ihren Stammbaum bis zu denen zurückverfolgen, die noch darauf saßen=-

                            Comment


                            • #15
                              Re: hmm...nee

                              Original geschrieben von ZuLtAn
                              ... ne, das kann nicht das problem sein, da in der access denied meldung ja der richtige Username aus der config.inc.php steht.
                              ... no comment, hand

                              Comment

                              Working...
                              X