passwortabfrage

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

  • passwortabfrage

    moin,

    habe ein problem mit einer einen login, und zwar frage ich in einen formular die domain ab und sein passwort und übergebe dies an ein weiteres script. das funzt alles prima.
    nun wollte ich, wenn jemand sein passwort vergessen hat mir einen zugang mit einen masterpasswort schaffen und da kommt mein problem.

    dies ist mein if-satz:

    PHP-Code:
    if ($domain == $erg["domain"] && ($pw == $erg["pw"] ||  $pw == "$masterpasswort"))
    {
    anweisungen

    ich komme mit richtiger domain + pw rein, und nicht rein wenn eines nicht stimmt. aber ich komme nicht mit richtiger domain und masterpw rein.
    woran liegt es?

    besten dank

  • #2
    Re: passwortabfrage

    if ($domain == $erg["domain"] && ($pw == $erg["pw"] || $pw == "$masterpasswort"))

    warum setzt du "$masterpasswort" in anführungsstriche...?

    $pw == $masterpasswort
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      schuldige,

      im script ist es ohne "", geht aber trotzdem nicht!!

      Kommentar


      • #4
        Re: passwortabfrage

        was ist denn $erg[] für ein array? woher wird das mit daten befüllt?
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          $erg[""] wird aus einer db gefüllt,
          die müssen passen, den die if-abfrage funzt ja ohne den masterpasswort.
          das masterpasswort habe ich mit
          PHP-Code:
          require ("inc/var.php3"); 
          reingeholt! es funzt aber auch nicht wenn ich es so schreibe:

          PHP-Code:
          if ($domain == $erg["domain"] && ($pw == $erg["pw"] ||  $pw == "masterpasswort")) 

          Kommentar


          • #6
            Vielleicht liegts an Deinem Select statement wenn das kein ergebnis liefert ist Dein array $erg auch leer.
            Dann müsstest Du machen:
            PHP-Code:
            if( ($domain == $erg["domain"] && ($pw == $erg["pw"] ) ||  $pw == $masterpasswort ){

            Beantworte nie Threads mit mehr als 15 followups...
            Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

            Kommentar


            • #7
              oder das mit dem require vonm Masterpasswort funzt irgendwie nicht, denn die boolschen Ausdrücke sind ok, einzige Möglichkeit, da überhaupt in FALSE zu bekommen, ist, wenn

              ($pw == $erg["pw"] ) = FALSE
              $pw == $masterpasswort) = FALSE

              wenn nur eines von beiden korrekt ist, kommt immer TRUE raus. Vielleiicht liegts am Masterpw...

              Kommentar


              • #8
                zu MelloPie:

                es kann doch nicht leer sein, denn wenn ich richtige domain und richtes passwort eintrage komme ich ja weiter, da funzt der vergleich ja noch.

                und zu P2oldi:
                nach eingabe der daten ins formular lasse ich auf der neuen seite alle meine angaben zur kontrolle nochmals ausgeben, u.a. auch die requirete variable $masterpasswort und diese wird mir auch angezeigt.

                Kommentar


                • #9
                  Tipp mal
                  PHP-Code:
                   print $masterpasswort
                  ein und schreib mal was es ausgibt.
                  [ EDIT ]
                  Sorry,hab gerade gesehen das du das ja schoneinmal kontrollieren lässt.
                  [ /EDIT ]

                  Kommentar


                  • #10
                    @whoda wenn Du ein select machst wie zB
                    select irgendwas from tbl where passwort='$pw' and domain ='$domain',
                    dann ist das ergebnis leer, wenn Du das Masterpasswort eingibst und $pw == $masterpassword ist ...

                    Verstehse???
                    Beantworte nie Threads mit mehr als 15 followups...
                    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                    Kommentar


                    • #11
                      erst hab ich gedacht "jo", jetzt sag ich doch lieber "nöö", verstehe nichts!
                      hier nochmals das ganz, wo ist was leer?
                      PHP-Code:
                          $action $HTTP_POST_VARS['action'];
                          
                      $domain $HTTP_POST_VARS['domain'];    
                          
                      $pw $HTTP_POST_VARS['passwort'];

                          require (
                      "inc/var.php3");
                          
                          echo 
                      $domain."<br>";
                          echo 
                      $pw."<br>";
                          echo 
                      $masterpasswort."<br>";
                          
                          
                      mysql_connect($host$user$pwd) or die("Keine SQL-SERVER-Verbindung möglich!");
                          
                      mysql_select_db("datenbank") or die("Keine Verbindung zur Datenbank möglich!");    
                          
                      $erg mysql_query("SELECT * FROM kunde AS A, pakete AS B where A.paket=B.id and A.domain='$domain' && A.pw='$pw'");
                          
                          if (
                      $action == "login")
                          {
                              while(
                      $erg_zeile mysql_fetch_array($ergMYSQL_ASSOC))
                              if (
                      $domain == $erg["domain"] && ($pw == $erg["pw"] ||  $pw == $masterpasswort))
                              {
                      anweisungen

                      Kommentar


                      • #12
                        Ja teste mal das ausgeben von $erg['domain'] wenn Du das masterpasswort eingibst... da wird nichts drinstehen...
                        Beantworte nie Threads mit mehr als 15 followups...
                        Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                        Kommentar


                        • #13
                          PHP-Code:
                          $erg mysql_query("SELECT * FROM kunde AS A, pakete AS B where A.paket=B.id and A.domain='$domain' && A.pw='$pw'"); 
                          dieser select liefert dir nichts zurück, wenn du keine gültige kombination aus domain und passwort eingibst.
                          und ich nehme mal an, die kombination domain und masterpasswort kommt in deiner db nicht vor... deshalb ist wenn du das masterpasswort eingibst, $erg["domain"] leer, und damit der ausdruck
                          PHP-Code:
                          if ($domain == $erg["domain"] && ($pw == $erg["pw"] ||  $pw == $masterpasswort)) 
                          immer falsch.

                          jetzt kapiert?
                          I don't believe in rebirth. Actually, I never did in my whole lives.

                          Kommentar


                          • #14
                            ja, du hast vollkommen rechts, nichts, gaaaar nichts steht drin.

                            jetzt ist mir dies zwar klar, aber wie ist die lösung zu diesen problem.
                            ich seh den wald wohl vor lauter bäumen nicht mehr.

                            Kommentar


                            • #15
                              jetzt ist mir dies zwar klar, aber wie ist die lösung zu diesen problem.
                              frag doch das masterpasswort unabhängig von der domain ab:
                              PHP-Code:
                              if ( ($domain == $erg["domain"] && $pw == $erg["pw"]) ||  $pw == $masterpasswort
                              I don't believe in rebirth. Actually, I never did in my whole lives.

                              Kommentar

                              Lädt...
                              X