Vraagje met betrekking tot loginsysteem..

Gestart doorKjeld2 reacties22 weergaven

3 berichten · pagina 1 van 1

Kjeld

Lid · Topicstarter

Berichten
6.201
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Ik heb weer een vraagje..

Op the Interwebz heb ik een klein, simpel login-systeem gevonden wat precies doet wat ik wil! (als het werkt emo)..

Voor mijn carnavalsvereniging heb ik enkel en alleen het login-gedeelte nodig, zonder registratie, en dat heb ik nu.

Zodra ik ingelogd ben, krijg ik ook een record in de database met logins.

Hier wordt gecontroleerd of ik ben ingelogd:

function logininfo($getinfo=false) {
    if(isset($_COOKIE[sid]) && !empty($_COOKIE[sid])) {
        // Er is een niet-lege cookie
        $sid = mysql_real_escape_string($_COOKIE[sid]);
 
        // Controleren of de tijdelijke sleutel aanwezig is in de database, en overeen komt met het ip
        $q2 = mysql_query("SELECT * FROM logins WHERE sid = ". $sid ." AND ip = ". $sys[ipad] ."") or die("Er is een fout opgetreden.");
 
        // Controleren op resultaat
        if(!mysql_num_rows($q2)) {
            // Niet ingelogd
            return false;
        } else {
            $info = mysql_fetch_array($q2);
            if($getinfo  && isset($info[$getinfo])) {
                return $info[$getinfo];
            } elseif($getinfo===True) {
                return $info;
            } else {
                return true;
            }
        }
    }
}


En dit op de site, om beveiligde delen weer te geven:

[COLOR= #0000BB]<?php[/COLOR]
      [URL="http://www.php.net/if"]if[/URL][COLOR= #007700](![/COLOR]logininfo[COLOR= #007700]()) {[/COLOR]
      [COLOR= #FF8000]// Niet ingelogd, login deel weergeven[/COLOR]
      [URL="http://www.php.net/include"]include[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]includes/php/login.php[/COLOR][COLOR= #007700]);
      }[/COLOR] [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
                 ?>
          Welkom <b>[COLOR= #0000BB]<?php[/COLOR] [URL="http://www.php.net/echo"]echo[/URL] logininfo[COLOR= #007700]([/COLOR][COLOR= #DD0000]gebruikersnaam[/COLOR][COLOR= #007700]);[/COLOR]?>!</b><br />
          <a href="index.php?actie=uitloggen">Uitloggen</a>
      [COLOR= #0000BB]<?[/COLOR]
      [COLOR= #007700]}[/COLOR]
      ?>


Ik blijf echter het login-formulier zien (die include), in plaats van mijn gebruikersnaam en de uitlog-knop..

Weet iemand waar de fout zit?
0
Berichten
93.699
Reputatie
0
Punten
1,27
Lid sinds
Laatst gezien
Probeer eens

if(mysql_num_rows($q2) == 0) {
            // Niet ingelogd
            return false;
        } else {


Als er geen resultaten zijn, geeft hij 0 weer i.p.v. niks geloof ik.
0
Kjeld

Lid · Topicstarter

Berichten
6.201
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Hmm.. Helaas..

Ik heb sterk het idee dat het aan die functie ligt:

[COLOR= #0000BB]<?[/COLOR] [COLOR= #007700]function[/COLOR] logininfo[COLOR= #007700]([/COLOR][COLOR= #0000BB]$getinfo[/COLOR][COLOR= #007700]=[/COLOR]false[COLOR= #007700]) {[/COLOR]
    [URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][URL="http://www.php.net/isset"]isset[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_COOKIE[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]sid[/COLOR][COLOR= #007700]]) && ![/COLOR][URL="http://www.php.net/empty"]empty[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_COOKIE[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]sid[/COLOR][COLOR= #007700]])) {[/COLOR]
        [COLOR= #FF8000]// Er is een niet-lege cookie[/COLOR]
        [COLOR= #0000BB]$sid[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mysql_real_escape_string"]mysql_real_escape_string[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$_COOKIE[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]sid[/COLOR][COLOR= #007700]]);[/COLOR]
 
        [COLOR= #FF8000]// Controleren of de tijdelijke sleutel aanwezig is in de database, en overeen komt met het ip[/COLOR]
        [COLOR= #0000BB]$q2[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mysql_query"]mysql_query[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]"SELECT * FROM logins WHERE sid = "[/COLOR][COLOR= #007700].[/COLOR] [COLOR= #0000BB]$sid[/COLOR] [COLOR= #007700].[/COLOR][COLOR= #DD0000]" AND ip = "[/COLOR][COLOR= #007700].[/COLOR] [COLOR= #0000BB]$sys[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]ipad[/COLOR][COLOR= #007700]] .[/COLOR][COLOR= #DD0000]""[/COLOR][COLOR= #007700])[/COLOR] or [URL="http://www.php.net/die"]die[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]"Er is een fout opgetreden."[/COLOR][COLOR= #007700]);[/COLOR]
 
        [COLOR= #FF8000]// Controleren op resultaat[/COLOR]
        [URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][URL="http://www.php.net/mysql_num_rows"]mysql_num_rows[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$q2[/COLOR][COLOR= #007700]) ==[/COLOR] [COLOR= #DD0000]0[/COLOR][COLOR= #007700]) {[/COLOR]
            [COLOR= #FF8000]// Niet ingelogd[/COLOR]
            [URL="http://www.php.net/return"]return[/URL] false[COLOR= #007700];
        }[/COLOR] [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
            [COLOR= #0000BB]$info[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mysql_fetch_array"]mysql_fetch_array[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$q2[/COLOR][COLOR= #007700]);[/COLOR]
            [URL="http://www.php.net/if"]if[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$getinfo[/COLOR]  [COLOR= #007700]&&[/COLOR] [URL="http://www.php.net/isset"]isset[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$info[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]$getinfo[/COLOR][COLOR= #007700]])) {[/COLOR]
                [URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$info[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]$getinfo[/COLOR][COLOR= #007700]];
            }[/COLOR] [URL="http://www.php.net/elseif"]elseif[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$getinfo[/COLOR][COLOR= #007700]===[/COLOR]True[COLOR= #007700]) {[/COLOR]
                [URL="http://www.php.net/return"]return[/URL] [COLOR= #0000BB]$info[/COLOR][COLOR= #007700];
            }[/COLOR] [URL="http://www.php.net/else"]else[/URL] [COLOR= #007700]{[/COLOR]
                [URL="http://www.php.net/return"]return[/URL] true[COLOR= #007700];
            }
        }
    }
}[/COLOR]?>
0

Jouw reactie

Deel je idee, stel een vraag of help een ander verder.

Editor laden…

Praat mee met de One2xs-community.

Inloggen om te reageren