Ankündigung

Einklappen
Keine Ankündigung bisher.

Login geht nicht im iframe

Einklappen

Neue Werbung 2019

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

  • Login geht nicht im iframe

    hey,
    hab nen Login der über Session an der URL geht. Das Login-Formular ist im iframe. Beim Klick auf Login blickt es nur kurz (Läd also etwas). Öffne ich nun nur das Login-Fomular außerhalb des iframes, melde mich an und wieder ab funktioniert es. Außerdem kann ich mich dann auch im iframe einloggen. An was kann das liegen?
    danke
    schlurpsel

  • #2
    Willkommen hier im Forum!

    Benutz statt nem Iframe einen Div, das macht in so gut wie jedem Fall mehr sinn.

    Ansonsten können wir dir ohne Code hier nicht viel weiterhelfen

    Kommentar


    • #3
      hier die login.php
      PHP-Code:
      <?php 

      include '../inc/functions.inc.php'
      $datafile '../inc/pn_userdata.php'
      if (!
      file_exists($datafile)) fclose(fopen($datafile,"w+")); 
      $zeile file($datafile); 
      $zeilen sizeof($zeile); 

      if(!
      $_GET['go']) 

          echo 

          <html><head> <link type="text/css" rel="stylesheet" href="style/site.css" />

          <title></title> 
       
          </head> 
          <body> 
          <div> 
       
              <form method="POST" action="'
      .$_SERVER['PHP_SELF'].'?go=login"> 
                      <table  cellpadding="0" cellspacing="1" border="0" class="rahmen"> 
                    
                
                    <div >Um diesen Bereich zu betreten, musst Du Dich einloggen!</div> 

                  
                <tr class="tr1">  
                 <td width="100">Loginname</td> 
                  <td width="300"><input type="text" name="Name" size="30" maxlength="150"></td>
                </tr> 
                <tr class="tr1">  
                  <td width="110">Passwort</td> 
                  <td width="300">  
                    <input type="password" name="pw" size="30" maxlength="150"> 
                  </td> 
                </tr> 
                <tr class="tr1">  
                  <td width="100"></td> 
                  <td width="300">   
                    <input type="submit" value="Einloggen" name="submit"> 
                  </td> 
                </tr> 
              </table> 
          </form> 
          </html>'



      if(
      $_GET['go'] == 'login'

          @
      session_start(); 
           
          if (empty(
      $_POST['Name']) OR empty($_POST['pw'])) { 
              exit(
      '<link type="text/css" rel="stylesheet" href="style/site.css" /><a>Komm schon, Name und Passwort - so schwer ist das nicht!? ...versuchs einfach nochmal =)</a> <meta http-equiv="refresh" content="4; URL=pn_login.php">'); 
          } 
           
          
      $_POST['pw'] = crypt($_POST['pw'], 'lala'); 

          for (
      $i=2$i<$zeilen-2$i++) {   
              
      $eintrag explode('§'$zeile[$i]);  

              if (
      $eintrag[0] == $_POST['Name']) { 
                  
      $_SESSION['loginuser']     = $eintrag[0]; 
                  
      $_SESSION['loginlevel'] = $eintrag[1];       
                  
      $_SESSION['loginpwd']     = $eintrag[2]; 
                  
      $_SESSION['loginid']     = $eintrag[3]; 
              } 
               
          } 
           
          if(
      $_SESSION['loginpwd'] != $_POST['pw']) { 
              echo 
      '<link type="text/css" rel="stylesheet" href="style/site.css" /><a>Falsches Passwort!</a>'.$goback
              
      session_destroy(); 
              exit; 
          } 
         
          
      header("Location: test.php?$session");        

      ?>
      und diese Seite ist im iframe drin.
      Hoffe das hilft.

      Wie kann ich das mit nem div-Tag machen, wie kann ich da ne Seite als Hintergrund oder sowas angeben, und wie kann ich das machen, dass diese Seite dann nur durch nen Klick geöffnet wird?

      danke
      schlurpsel

      Kommentar


      • #4
        nimm @ vor dem session_start weg und verschiebe die session_start nach oben.
        schreibe ganz oben error_reporting(E_ALL) um eigene fehler besser kontrolleiren zu können.
        in deiner hauptanwendung muss du auch session starten und session_name().'='.session_id() an src von dem frame hängen.

        Kommentar


        • #5
          versteh leider nicht genau was du meinst, kannst du mir das bitte genauer beschreiben. Oder noch besser gleich eintragen? Wäre echt super nett.
          Danke
          schlurpsel

          Kommentar


          • #6
            <iframe src="bla.php?<? echo session_name().'='.session_id() ?>">
            das meint er mit seinem letzten satz, der rest ist doch wohl verständlich

            Kommentar

            Lädt...
            X