BlackBoard (http://www.black-board.net/index.php)
- Design, Programmierung & Entwicklung (http://www.black-board.net/board.php?boardid=55)
-- Programmieren (http://www.black-board.net/board.php?boardid=4)
--- PHP Login-Script (http://www.black-board.net/thread.php?threadid=21613)


Geschrieben von Siles am 12.12.2005 um 10:47:

  Login-Script

hi leute,

ich hab auf ne webseite ein loginscript zu laufen!
das ich immer nur local getestet habe, beim upload und test bei webspace von 1und1 musste ich leider feststellen das es nicht funktioniert!

hier der code der loginprüfung

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
<html>
<?php
 $current_page "Login f&uuml;r Mitarbeiter";
 include('../menue.php');
 include("../head.inc"); ?>
<?php 
    session_start();
    include ("../mysqldb.php");
    
    $pw md5($pwa);
    
    if(isset($usr))
    {
        $db->query("select user, pass from login where user='$usr'");
        list($user,$pass) = $db->data();
        
        if($usr == $user && $pw == $pass)
        {
            $datum date("Y.m.d");
            $zeit date("h:i:s");
            $_SESSION["usr"] = $usr;
            $_SESSION["pw"] = $pw;
            
            $db->query("insert into logins (name,datum,zeit) values ('$usr','$datum','$zeit')");
        }
    }
     include "login.inc.php";
?>
<body>
<? include("../design.inc");?>

<div id="txt_fld_home">

<?php 

 echo "Einloggen war erfolgreich <br> <a href=index.php> >> Weiter zum Internen bereich <<</a><br><br>";
 echo "<a href=mitarbeiter.php>Logoff</a>";
?>

</div>
</body>
</html>


und der code fuer die session

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
<html>
<?php
 $current_page "";
 include('../menue.php');
 include("../head.inc"); ?>
<body>
<div id="txt_fld_home">
<?php 
    
    if (!isset($_SESSION["usr"]))
    {
        echo "Kein Zugang<p>";
        echo "<a href='mitarbeiter.php'> Zum Login</a>";
        echo "</body></html>";
        exit;
    }
?>
</div>
</body>
</html>


wenn ich mit online einloggen will kommt zuerst die meldung
"einloggen war erfolgreich, weiter zum internen bereich"

will ich dann weiter, kommt die meldung kein zugriff!!!

ich hoffe ihr koennt mir helfen!
denn ich weiß net mehr weiter, und ne lösung habe ich auch keine bei google gefunden!

mfg siles



Geschrieben von LX am 12.12.2005 um 11:00:

Achtung

Die Meldung, dass du erfolgreich eingeloggt bist, kommt immer, da dieser Teil außerhalb irgendwelcher Abfragen steht.

Ich würde aber mal checken, wie die register_globals Einstellung lokal und auf dem Webspace ist. Grundsätzlich solltest du so programmieren, als wäre register_globals auf off, denn dann funktioniert's überall. D.h., du greifst auf irgendwelche gesendeten Formulardaten nicht wie auf globale Variablen mit $usr und $pw zu, sondern über die superglobalen Arrays, in denen sie enthalten sind (in diesem Fall wahrscheinlich $_POST['usr'] und $_POST['pw']).



Geschrieben von Siles am 12.12.2005 um 12:01:

 

mit $_POST hatte ich es schon versucht, leider ohne erfolg!

also

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
if(isset($usr))
    {
        $db->query("select user, pass from login where user='$usr'");
        list($user,$pass) = $db->data();
        
        if($usr == $user && $pw == $pass)
        {
            $datum date("Y.m.d");
            $zeit date("h:i:s");
            $_SESSION["usr"] = $_POST['usr'];
            $_SESSION["pw"] = $_POST['pw'];
            $db->query("insert into logins (name,datum,zeit) values ('$usr','$datum','$zeit')");
        }



wie kann ich denn die register_globals einstellung aufm space, einzeigen lassen??

mfg siles



Geschrieben von LX am 12.12.2005 um 12:23:

Achtung

Zitat:
Original von Siles
mit $_POST hatte ich es schon versucht, leider ohne erfolg!
Wenn, dann solltest du das überall anpassen, also auch in den beiden IF-Abfragen und beim Eintragen in die Datenbank.

Zitat:
wie kann ich denn die register_globals einstellung aufm space, einzeigen lassen??
phpinfo() weiß alles...



Geschrieben von Siles am 12.12.2005 um 12:49:

 

oh man sry LX, ich bekommst net gebacken!!!

habe alle möglichen kombinationen versucht, teilweise bekomm ich net mal "login erfolgreich.." angezeigt!!!

mfg siles

EDIT

register_globals ist auf on (local und server)



Geschrieben von LX am 12.12.2005 um 13:30:

Achtung

Dann liegt der Fehler woanders. Bau dir ein paar Debug-Ausgaben in dein Script (die Variableninhalte einfach mal mit print_r() oder var_dump() ausgeben) und vor allem prüfe deine mySQL-Queries auf Gültigkeit, wie ich es hier auch schonmal erwähnt habe.



Geschrieben von ColdFire am 12.12.2005 um 15:01:

  session login

hi ! hab mir erst vor kurzem ein session login system gebastelt ...

hat bei mir auch local funktioniert und online nicht habe es soweit gerichtet würde dir den source gerne schenken!

info www.coldfire.at login -->

user = test
pwd= admin

hiermit hat du admin rechte bitte dich trozdem nichts zu machen beim test user sollte so gut wie möglich alles gesperrt sein großes Grinsen

lg CF



Geschrieben von Siles am 12.12.2005 um 15:24:

 

hab jetzt vieles hin und her versucht, sogar das der benutzer richtig ausgegeben wird obwohl kein zugang gewehrt wurde was ja eigentlich nicht sein darf!!!

wenn ich mich einlogge, dann schreibt er ja den namen das datum und die zeit in die datenbank das funktioniert ja auch!

ich habe irgendwie das gefuehl das der usr net uebergeben wird!!!

würdes dir denn evtl weiterhelfen wenn ich dir die phpinfos von 1und1 in einer txt file hier anhängen würde?

aber ersmal vielen dank fuer deine hilfe!!

mfg siles

EDIT

danke coldfire, wär echt fein wenn du mir den code mal zukommen lassen würdest!

mfg siles



Geschrieben von ColdFire am 12.12.2005 um 16:09:

 

hast du dir das beispiel angesehn !

ich lasse dir sobald ich meinen geburtstag ausreichend gefeiert habe ( heute abend) dir die index php zukomme)

werde sie noch ein bisschen dokumentieren !

lg CF



Geschrieben von Siles am 13.12.2005 um 09:00:

 

ja hab ich angesehen, und schaut gut aus!!


oh na das habe ich doch gestern garnet gesehen, dann nochmal alles gute nachträglich zum geburtstag! hoffe doch du hast es gut überstanden ? ^^
hatte 3 tage vor dir ^^

mfg siles



Geschrieben von ColdFire am 13.12.2005 um 18:51:

 

auch dir alles gute nachträglich ! zip file ist in meinem postausgang !

lg CF



Geschrieben von Siles am 13.12.2005 um 19:13:

 

danke ^^

hastes per mail oder als pm?

bei mir ist leider noch nix angekommen!!!

mfg siles



Geschrieben von ColdFire am 04.01.2006 um 23:13:

 

Weitere info per ICQ oder auf www.coldfire.at !

lg CF


Forensoftware: Burning Board 2.3.6, entwickelt von WoltLab GmbH