Hilfe für admin login

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

  • #16
    Habe es jetzt mal in zeile 6 der login.php eingefügt.
    Wenn ich mich jetzt einloggen will kommt folgende Meldung:

    SELECT * FROM users WHERE user_name = 'test' AND user_password = PASSWORD('test')
    Warning: Cannot modify header information - headers already sent by (output started at /home/htdocs/web54/html/admin/login.php:6) in /home/htdocs/web54/html/admin/login.php on line 18

    Kommentar


    • #17
      dann kann nur noch Fehler bei dem DB-Verbindungsaufbau sein, da ich die Klasse nicht kenne, kann ich schlecht was dazu sagen, oder Frage an die Experten hier:

      kann man mysql_error() auch ausserhalb der Klasse ansprechen, nachdem eine DB-Operation stattgefunden hat? IMHO ja, aber ich lasse mich gern des besseren belehren

      Also ergänze wie folgt:
      PHP-Code:
      $db = new database($_CONF['host'],$_CONF['user'],
      $_CONF['pass'],$_CONF['dbname']) or die(mysql_error()); 
      $db->query("SELECT * FROM users WHERE user_name = '".
      $_POST['username']."' AND user_password = PASSWORD('".$_POST['pass']."')")
      or die(
      mysql_error()); 
      und nimmt die echo-Zeile wieder raus, damit der Fehler von header nicht mehr auftaucht.

      Kommentar


      • #18
        Habe die Zeilen um "or die(mysql_error());" ergänzt, jedoch lande ich immer wieder auf der index.html

        Kommentar


        • #19
          ach, mein Fehler, denn vielleicht liefert die Objektmethode keine Rückgabe, dass die() einspringt. Also alles in ursprünglichen Zustand und unter jede db->.. Zeile machst du: echo mysql_error().'<br />'; rein, mal schauen, ob es was zu sehen gibst, sonst muss du die Datei "database.class.php" in .txt umbenennen und als Anhang mitgeben.

          Achtung: der header-Fehler kommt wieder und es wird auch nicht weitergeleitet, aber das ist i.M. nicht schlimm

          Kommentar


          • #20
            Jetzt kommt folgendes:

            Warning: Cannot modify header information - headers already sent by (output started at /home/htdocs/web54/html/admin/login.php:6) in /home/htdocs/web54/html/admin/login.php on line 18

            Wie soll ich jetzt mit der "database.class.php" verfahren?

            Kommentar


            • #21
              und sonst nichts? dann her mit der Datei.

              Kommentar


              • #22
                Ok,
                kommt.
                Angehängte Dateien

                Kommentar


                • #23
                  hier die Änderungen:
                  PHP-Code:
                    function database($dbhost,$dbuser,$dbpass,$dbname){
                      
                  $this->dbhost=$dbhost;
                      
                  $this->dbuser=$dbuser;
                      
                  $this->dbpass=$dbpass;
                      
                  $this->dbname=$dbname;
                      
                  $this->con=@mysql_connect($this->dbhost,$this->dbuser,$this->dbpass);
                      if(!
                  $this->con){
                        
                  $this->con false;
                        
                  // edit July 06, 2004
                        
                  $this->error=mysql_error();
                        
                  $this->throwError();
                        
                  // end of edit
                        
                  return false;
                      }
                      
                  $db=@mysql_select_db($this->dbname);
                      if(!
                  $db){
                        
                  // edit July 06, 2004
                        //$this->error="Tried to select non-existing Database.<br>\n";
                        
                  $this->error=mysql_error();
                        
                  // end of edit
                        
                  $this->throwError();
                        return 
                  false;
                      }
                      return 
                  true;
                    }


                    function 
                  query($query$result_id 0){
                      
                  $this->result=@mysql_query($query,$this->con);
                      if(!
                  $this->result){
                        
                  $this->err true;
                        
                  // edit July 06, 2004
                        //$this->error="Query failed.<br>\n";
                        
                  $this->error=mysql_error();
                        
                  // end of edit
                        
                  $this->throwError();
                        return 
                  false;
                      }
                      if(
                  substr($query06) == "SELECT") {
                        if(
                  $this->numRows($result_id) == 0) {
                          
                  $this->err true;
                        }
                      }
                      return 
                  true;
                    }


                    function 
                  throwError(){
                      
                  // edit July 06, 2004
                      
                  die($this->error);
                      
                  // end of edit
                      
                  $this->error="";
                      return 
                  true;
                    } 
                  nimmt vorher die echo-Zeilen wieder raus.

                  Kommentar


                  • #24
                    Jetzt kommt:

                    Query failed.

                    Kommentar


                    • #25
                      bitte die Zeile auch auskommentieren (s. meine gepostete Änderung(en)), damit eine ausführliche Fehlermeldung kommt.

                      Kommentar


                      • #26
                        Habe deine Änderungen mit Kommentaren übernommen.
                        Angehängte Dateien

                        Kommentar


                        • #27
                          Original geschrieben von taaucher
                          Habe deine Änderungen mit Kommentaren übernommen.
                          vonwegen

                          PHP-Code:
                            function query($query$result_id 0){
                              
                          $this->result=@mysql_query($query,$this->con);
                              if(!
                          $this->result){
                                
                          $this->err true;
                                
                          // edit July 06, 2004
                                //$this->error="Query failed.<br>\n";
                                
                          $this->error=mysql_error();
                                
                          // end of edit
                          -->    $this->error="Query failed.<br>\n"; <--
                                
                          $this->throwError();
                                return 
                          false;
                              }
                              if(
                          substr($query06) == "SELECT") {
                                if(
                          $this->numRows($result_id) == 0) {
                                  
                          $this->err true;
                                }
                              }
                              return 
                          true;
                            } 

                          Kommentar


                          • #28
                            Oha,
                            hast Recht, bitte nicht schlagen und schon mal Danke für deien Geduld.
                            Nachdem ich die Zeile rausgenommen habe kommt das hier:

                            Can't open file: 'user_online.MYI'. (errno: 144)

                            Und mit diesem Eintrag stimmt auch in der Datenbank etwas nicht.
                            Sobal ich in phpmyadmin auf diesen Eintrag klicke kommt diese Meldung:

                            PHP-Code:
                            Can't open file: 'user_online.MYI'. (errno: 144) 

                            Fehler

                            SQL-Befehl :  

                            SHOW KEYS FROM `user_online` 

                            MySQL meldet: 


                            #1016 - Can'
                            t open file'user_online.MYI'. (errno144

                            Kommentar


                            • #29
                              überprüfe ob die Datei existiert! Sie soll unter .../mysql/data/databasename/ liegen
                              wenn ja dann überprüfe Zugriffsrechte

                              Kommentar


                              • #30
                                Auf dem ftp ist nirgends ein Ordner namens mysql!
                                Kann es sein das da der Hoster Zugriff drauf hat?

                                Kommentar

                                Lädt...
                                X