Ankündigung

Einklappen
Keine Ankündigung bisher.

Passwortabfrage vor Dateiöffnung

Einklappen

Neue Werbung 2019

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

  • Passwortabfrage vor Dateiöffnung

    Hi,

    ich habe mir ein Newssystem eingerichtet zudem es auch eine "Admin" Datei gibt, die es ermöglicht ohne mich in phpmyadmin einzuloggen News hinzufügt.

    Jetzt habe ich nur folgendes Problem:

    In der Admindatei stehen auch MySQL username und pw usw damit die Datei zugriff bekommt, was ja auch ok ist.
    Aber jeder der weiß, das die Datei da ist, kann ja jetzt auf meine News zugreifen, sie verändern oder löschen.

    Hier meine Frage:

    Kann ich den quellcode so verändern (oder gibt es eine andere Möglichkeit) das ich zwar die Datei aufrufen kann, aber erst mit ihr Arbeiten kann, wenn ich ein Passwort und/oder Benutzernamen eingegeben habe?

    Ich habe schon nach diversen Dingen bei google gesucht, aber nichts gefunden, was danach aussieht was ich "brauche"

    Ich hoffe da gibt es was. Vielen Dank!

  • #2
    eine kurze frage: sollte dein Passwort nicht in einer Config Datei stehen ...

    zu deiner Frage, suchst du vielleicht sowas wie Passwortschutz per .htaccess

    wobei ich sagen muss, dass ich deine Frage nicht ganz verstehe ... ich würd des ganze über ein PHP login machen und dann über diesen gesicherten Bereich diese Datei laden und per .htaccess das verzeichnis schützen, wo die Datei liegt ...
    PHP-Code:
    if ( $humans >= ) {
       
    war ();

    Kommentar


    • #3
      hmm...evtl habe ich mich undeutlich ausgedrückt.

      Aber du hast mir trotzdem das richtige Stichwort gegeben. Habe jetzt eine .htaccess und eine .htpasswd angelegt und in das verzeichnis reingeladen.
      Funktioniert sogar Nur sehe ich jetzt den Ordner nicht mehr...

      Kann man die access Datei auch so einstellen, das ich den Ordner noch sehe, aber dann eben den Benutzernamen/Passwort eingeben muss, wenn ich die Datei öffnen will?

      Kommentar


      • #4
        ich würde ein LogIN Script schreiben, dass dann mit reinem PHP ist, wenn das auch ok wäre

        Kurz ein kleines Teil des Scriptes:
        PHP-Code:
        session_start(); //IN DER SESSINOVARBABLE ADMIN STEHT, OB MAN EINGELOGGT IST
        if($_GET['page'] == 'login")
        //Hier steht das LoginFormular, dass auf ?page=control weiterleitet
        else if($GET['
        page'] == 'control'){
        if($_POST['
        password'] == 'AffeBananePHP1234')
             $_SESSION['
        admin'] == 1;
        else
             echo "Passwort falsch!";
        }
        else{
        if(!$_SESSION['
        admin'])
           echo "<a href=\"?page=login\">LogIn</a>";
        //Datensätze abfragen:
        $sql = $this->sql->query("SELECT * FROM `news`"); //EINFACH SQL ABFRAGE
        while($row = $sql->fetch_object()){
        echo $row->title;
        if($_SESSION['
        admin'])
            echo " - <a href=\"del.php?id=$row->id\">Löschen</a>";
        }

        Ich hoffe, du verstehst es und meine Kommentare sind verständlich genug
        Privatsphäre war gestern, denn:
        Bundestrojaner 2.0: Die neue Version ist da.

        Kommentar


        • #5
          Hi,
          PHP-Code:
          if($_GET['page'] == 'login") 
          Debugging:Leitfaden - PHP.de Wiki
          Außerdem würde ich eher mit [MAN]exit()[/MAN] bei falschen pw arbeiten

          Kommentar


          • #6
            Wieso mit exit? Dann kannst du weder Footer ausgeben noch sonstige PHP Skripte ausführen.

            Kommentar


            • #7
              Na klar wieso ned?

              PHP-Code:
              if($passwort == false) {
                
              page_header();
                echo 
              "pw falsch...";
                
              Page_footer();
                
              //oder einfach Header("location....
                
              exit();
              }

              //Was geheimes :) 

              Kommentar


              • #8
                Nicht jede Seite ist so aufgebaut dass du irgendwo ne Funktion footer aufrufen kannst und damit hat sich alles. Sogar in den meisten Frameworks wird nach dem normalen Code noch weiterer Code ausgeführt der recht wichtig ist. Daher ist meiner Meinung nach exit eigentlich kein Mittel um bei normalen Fehlermeldungen das komplette Skript abzubrechen.

                Kommentar


                • #9
                  Zitat von Flor1an Beitrag anzeigen
                  Nicht jede Seite ist so aufgebaut dass du irgendwo ne Funktion footer aufrufen kannst und damit hat sich alles. Sogar in den meisten Frameworks wird nach dem normalen Code noch weiterer Code ausgeführt der recht wichtig ist. Daher ist meiner Meinung nach exit eigentlich kein Mittel um bei normalen Fehlermeldungen das komplette Skript abzubrechen.
                  Ich verwende sowas immer, wenn Seiten aufgerufen werden, wo man normal einen Login braucht, dann leite ich auf die Login-Seite um.
                  Oder bei Seiten wo der "normale" Besucher eigentlich nix zu suchen hat, wie zb adminCP ect.

                  Kommentar


                  • #10
                    Ja nur weil du das so machst heißt es noch lange nicht das man es immer so machen muss, dass es andere Leute so machen oder dass es überhaupt eine gute Idee ist es so zu machen.

                    Kommentar


                    • #11
                      o_O was habe ich denn da für eine Diskussion entfacht Finds übrigens super, das hier so viele schnelle Antworten kommen.

                      Danke dafür! Werd mal sehen was ich davon umsetzen kann!

                      Kommentar


                      • #12
                        PHP-Code:
                        if($passwort == false) {
                          
                        page_header();
                          echo 
                        "pw falsch...";
                          
                        Page_footer();
                          
                        //oder einfach Header("location....
                          
                        exit();

                        Das Ende für jeden Versuch, eine Seite modular aufbauen zu wollen. Header und Footer gehören zum Kontext der Seite, nicht zu dem des Auth-Moduls.
                        [COLOR="#F5F5FF"]--[/COLOR]
                        [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
                        „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                        [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
                        [COLOR="#F5F5FF"]
                        --[/COLOR]

                        Kommentar


                        • #13
                          Zitat von Flor1an Beitrag anzeigen
                          Ja nur weil du das so machst heißt es noch lange nicht das man es immer so machen muss, dass es andere Leute so machen oder dass es überhaupt eine gute Idee ist es so zu machen.
                          Habe weder gesagt, dass ich das immer so mache, noch das irgendjemand das so machen muss.

                          PHP-Code:
                          Das Ende für jeden Versucheine Seite modular aufbauen zu wollenHeader und Footer gehören zum Kontext der Seitenicht zu dem des Auth-Moduls
                          Ich finde es einfacher, diese kleine Abfrage zu machen:
                          PHP-Code:
                          if(!LOGIN) {
                              
                          go_back("login");

                          als:
                          PHP-Code:
                          if(LOGIN) {
                            
                          //Das gesamte Script....
                          } else {
                            echo 
                          'Was auch immer';

                          zu machen, weils aufs gleiche kommt.

                          Kommentar


                          • #14
                            Zitat von BlackSpirit Beitrag anzeigen
                            Ich verwende sowas immer, ...
                            Zitat von BlackSpirit
                            Habe weder gesagt, dass ich das immer so mache ...


                            Es gibt noch ein paar andere Konzepte wie man Webseiten strukturieren kann. Mit deiner Methode ist das schon möglich, aber du wirst sehen wenn du dir etwas komplexere Strukturen anschaust wird sowas nicht mehr möglich sein. Da hast du dann ganz andere Möglichkeiten.

                            Kommentar


                            • #15
                              Zitat von Flor1an Beitrag anzeigen


                              Es gibt noch ein paar andere Konzepte wie man Webseiten strukturieren kann. Mit deiner Methode ist das schon möglich, aber du wirst sehen wenn du dir etwas komplexere Strukturen anschaust wird sowas nicht mehr möglich sein. Da hast du dann ganz andere Möglichkeiten.
                              Jetzt hast mich aber gedisst xD.

                              Für meine Zwecke reicht mir das aber vollkommen.

                              Kommentar

                              Lädt...
                              X