Fehler beim 1. Login, ab dann nie mehr...

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

  • Fehler beim 1. Login, ab dann nie mehr...

    Hi!
    Ich hab da ein komisches Problem, auf das mich andere Leute erst aufmerksam gemacht ham, weils nur auftritt, wenn sich jemand zum ersten Mal auf der Seite einloggt...

    und zwar kommt dieser Fehler hier:
    Code:
    Warning: main() [function.main <[url]http://www.php.net/function.main[/url]>]: Failed opening '' for inclusion (include_path='.:..') in /www/htdocs/v083598/newtest/index.php on line 139
    Ihr könnts mal selber ausprobieren:

    hier

    Login: Testuser
    Passwort: test


    An dieser Stelle wird er "produziert":
    PHP-Code:
    if (!isset($_GET['section'])) {
      include 
    $rights['Seite'];   // <---- da liegt er, der Fehler
      
    echo '<br><br><br><span class="Begruessung">Herzlich willkommen, '$name['Name'], '!</span>';
      echo 
    '<br>'$name['Text']; 


    und $rights['Seite']; kommt von hier:

    PHP-Code:
    if (isset($_POST['login'])) 

        
    $userid=check_user($_POST['username'], $_POST['userpass']); 
        if (
    $userid!=false) {
            
    login($userid); 
            
    $_SESSION['rights'] = user_rights($_POST['username']);
            
    $_SESSION['name'] = user_begruessen($_POST['username']);
            }
        else 
           
    $meldung='<p class="Meldung">Ihre Anmeldedaten waren nicht korrekt!</p>'


    Der Fehler tritt nur dann auf, wenn der Benutzer noch nie mit irgendwelchen Daten eingeloggt war...bei 2.-10000000000sten Mal kommt der Fehler nicht mehr...

    Wäre sehr dankbar, wenn einer Rat wüsste...

  • #2
    so wie es ausschaut glaube ich dass:


    PHP-Code:
    $rights['Seite']='';

    // desshalb kommt bei:

    include $rights['Seite'];

    // dieser Fehler... 

    desshalb musst du das array (richtig) füllen


    ich hoffe das war der richtige fehler, und dass ich dir helfen konnte
    "Die Menschheit muss lernen den Krieg zu besiegen, sonst besiegt der Krieg die Menschheit!"
    John F. Kennedy

    Kommentar


    • #3
      Ich denke, dass $rights['Seite'] einfach nicht gesetzt ist.

      Sobald sicher der User das erste mal einloggt, wird der Wert in die Session geschrieben, und solange die Session läuft kommt der Fehler nicht mehr, weil in der Session ein Wert drin steht.

      Also irgendwo prüfen, ob $rights['Seite'] einen Wert hat.
      hopka.net!

      Kommentar


      • #4
        Mmh, aber das müsste doch so passen:

        PHP-Code:
        $_SESSION['rights'] = user_rights($_POST['username']); 
        die Variable username kommt aus nem Formular...

        Weil halt der Fehler ach grad nur beim allerersten Mal kommt...
        Ab dann nie mehr...

        Oder kanns vielleicht sein, dass ich die Variable nicht mit $_SESSION registrieren darf? Aber wenn ich das nicht tue, dann krieg ich auf anderen Seiten Probleme...

        Kommentar


        • #5
          Interessant wäre auch noch, wie die Variable von $_SESSION['rights'] in $rights['Seite']; kommt. Vielleicht liegt da der Fehler.
          hopka.net!

          Kommentar


          • #6
            Aja in $_SESSION['rights'] wird die registriert und dann ruf ich die doch mit $rights wieder auf...mmh...
            um nochmal auf das mit der Session einzugehn:
            Also solange die Session läuft, kommt das Problem nie wieder, richtig?
            Aber ich kann mich mit verschiedenen Logins einloggen und da wird doch eine neue Session erstellt, oder?

            Ich versuch jetzt mal, zu checken, ob die Variable leer is...
            ...aber was mach ich, wenn sie leer is , des darf net sein...mmh Fehler in der Übergabe?
            Zuletzt geändert von DJauie; 30.05.2004, 15:28.

            Kommentar


            • #7
              Also die Variable ist komischerweise leer, aber ich hab das jetzt mal so gelöst:

              PHP-Code:
              if ($rights['Seite'] == '') {
                ?> 
                <META HTTP-EQUIV="Refresh" CONTENT="0; url=index.php"> 
                <? }
                else {
                include $rights['Seite'];
              Scheint zu gehn

              Danke für den Schubser auf den richtigen Weg

              Kommentar

              Lädt...
              X