php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 25.01.2012, 19:18  
Benutzer
 
Registriert seit: 29.11.2011
Beiträge: 49
PHP-Kenntnisse:
Anfänger
slipknoter6 kann nur auf Besserung hoffen
Standard [Erledigt] Login mit session geht nicht

Hallo
Ich habe ein Problem. Ich sitze grade an mein Login System für das User Control Panel für meine Website. Das Problem/Der Fehler kommt wenn man sich ein Logt und auf die Geheime Seite geht. Ich erkläre es mal:

1. www.MEINEHP.de/login.php ich log mich dort mit meine Account Daten ein
2. Es steht Login Erfolgreich. Hier klicken um zu geheimen Seite zu kommen(Ist Test weise)
3. Ich klicke drauf er leite mich weiter...
4. Geheime Seite sagt: Bitte Einloggen <---Problem

So also ich weis nicht ob die session jetzt gestartet/gesetzt wird bzw. die überhaupt richtig benutzt wurde. Ich kann euch ja mal die Login Funktion geben und die geheime Seite.

Geheime Seite:
PHP-Code:
<?php
session_start
();
?> 
//Im Body
  </div>
        <div id="content">
            <div class="Stil2" id="page">
            <?php
                
if(!isset($_SESSION["login"]))
                {
                   echo 
"Bitte erst <a href=\"ucp.php\">einloggen</a>";
                }
                elseif(isset(
$_SESSION["login"]))
                {
                   echo 
"<h2>LinkUs</h2>
                            <img border='0' src='images/pic1.gif' width='88' height='31' />  
                        <br />"
;
                }
                
?>     
        </div>
    </div>    
    <div id="sidebar">    
        <div id="specialsheader">
        News
So habe ich das bei der geheimen seite gemacht.

So und jetzt noch das Login

PHP-Code:
<?php

include("config.php");

error_reporting(E_ALL E_NOTICE);


$msg = Array();
$error = Array();
function 
Login(){
    
$username $_POST["login"];
    
$passwort1 $_POST['password'][0];
    
$passwort md5($passwort1);
    if (empty(
$_POST)) return false;
    global 
$config$msg$error;
    if (empty(
$_POST['login'])) $error[] = 'Bitte Accountname eingeben!';
    if (empty(
$_POST['password'][0])) $error[] = 'Bitte Passwort eingeben!';
    if (!empty(
$error)) return false;
    
$db = @mysql_connect($config['mysql_host'], $config['mysql_user'], $config['mysql_pass']);
    if (!
$db) return $error[] = 'Database: '.mysql_error();
    if (!@
mysql_select_db($config['mysql_dbname'], $db)) return $error[] = 'Database: '.mysql_error();
    
$query "SELECT password FROM accounts WHERE login = '".mysql_real_escape_string($_POST['login'])."'";
    
$res mysql_query($query$db);
    if (!
$res) return $error[] = 'Database: '.mysql_error();
    if (
mysql_num_rows($res) != 1) return $error[] = 'Benutzername und/oder Passwort ist falsch!';
    
$ergebnis mysql_query($query);
    
$row mysql_fetch_object($ergebnis);
    
//if($row->password == $passwort)
    
if (($row->password != $passwort)) $error[] = 'Benutzername und/oder Passwort ist falsch!';
    if ((
$row->password == $passwort)){$_SESSION["username"] = $usernamesession_start();} $msg[] = 'Login erfolgreich.<a href="test.php"> Geheim</a>';
}
{
Login();
}

?>

//und im body der teil

<h2>Login</h2>
            <p>Du bist noch nicht eingelogt? Dann schnell!!</p>
                <div style="margin-left:25px;">        
        <p>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">

        <label for="username"></label> 
        <p>Benutzername:  <input class="button" type="text" name="login" size="10" maxlength="16" style="margin-top:auto;height:17px; width:95px;background-color:#999999;border: 2px #000000 solid;border-color:#000000;font-family:Verdana, Arial, Helvetica, sans-serif;font-size:10px;"/></p>
        <label for="password"></label> 
        <p>Passwort:  <input class="button" name="password[]" type="password" size="10" style="margin-top:auto;height:17px; width:95px;background-color:#999999;border: 2px #000000 solid;border-color:#000000;font-family:Verdana, Arial, Helvetica, sans-serif;font-size:10px;" /></p><br>
        <input type="submit" name="anmelden" value="Anmelden" style="margin-top:auto;background-color:#666666;border-bottom-color:#000000;border-color:#000000;border: 3px #000000 groove;font-family:Verdana, Arial, Helvetica, sans-serif;font-size:10px;color:#FFFFFF;" /> 
<input type="button" name="register" value="Registrieren" style="margin-top:auto;background-color:#666666;border-bottom-color:#000000;border-color:#000000;border: 3px #000000 groove;font-family:Verdana, Arial, Helvetica, sans-serif;font-size:10px;color:#FFFFFF;" onClick="location.href='register.php'" />
</form>
            </p>
                  </div>
                <p><?php
        
if (!empty($error)){
            echo 
'<table style="color:#ffffff" border="1px" bordercolor="#999999" bgcolor="#333333" width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td class="error" align="center">';
            foreach(
$error as $text)
                echo 
$text.'</br>';
            echo 
'</td></tr></table>';
        };
        if (!empty(
$msg)){
            echo 
'<table style="color:#ffffff" border="1px" bordercolor="#999999" bgcolor="#333333" width="100%" border="0" cellspacing="1" cellpadding="3"><tr><td align="center">';
            foreach(
$msg as $text)
                echo 
$text.'</br>';
            echo 
'</td></tr></table>';
        };
        
?></p>
                  <p>Du hast noch kein Account? Dann Registriere dich <a href="register.php">hier.</a></p>
Kann mir wer da helfen? Ich versuche das schon seit Wochen das hinzukriegen
slipknoter6 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 25.01.2012, 19:23  
Erfahrener Benutzer
 
Registriert seit: 28.05.2008
Beiträge: 2.094
PHP-Kenntnisse:
Fortgeschritten
rudygotya ist einfach richtig nettrudygotya ist einfach richtig nettrudygotya ist einfach richtig nettrudygotya ist einfach richtig nettrudygotya ist einfach richtig nett
Standard

Ohne Fehlermeldungen ist das Rätselraten

Bau die @ vor den Befehlen weg, schau dir ein Tutorial an, wie man richtig debuggt. Insbesondere im Grundlagen-Fred findest du jede Menge nützliche Links - auch welche, die Logins etc behandeln.
__________________
++++ Wieder einer ins Netz gegangen: Phishers Fritz zufrieden ++++
Blog
rudygotya ist offline   Mit Zitat antworten
Alt 25.01.2012, 19:57  
Benutzer
 
Registriert seit: 29.11.2011
Beiträge: 49
PHP-Kenntnisse:
Anfänger
slipknoter6 kann nur auf Besserung hoffen
Standard

tja da sist ja das gute es gibt keine fehlermeldung sonst hatte ich das ja auch gelöst
slipknoter6 ist offline   Mit Zitat antworten
Alt 25.01.2012, 20:19  
Erfahrener Benutzer
 
Benutzerbild von Dark Guardian
 
Registriert seit: 10.10.2009
Beiträge: 2.631
PHP-Kenntnisse:
Fortgeschritten
Dark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekannt
Standard

PHP-Code:
$_SESSION["username"] = $usernamesession_start(); 
Du startest die Session erst nachdem du sie benutzt? Sehr "kreativ"...
__________________
"Alles im Universum funktioniert, wenn du nur weißt wie du es anwenden musst".
Dark Guardian ist offline   Mit Zitat antworten
Alt 25.01.2012, 20:54  
Benutzer
 
Registriert seit: 29.11.2011
Beiträge: 49
PHP-Kenntnisse:
Anfänger
slipknoter6 kann nur auf Besserung hoffen
Standard

Ah ja hast recht muss ja anders rum werd emal testen ob es dann geht
slipknoter6 ist offline   Mit Zitat antworten
Alt 25.01.2012, 21:02  
Benutzer
 
Registriert seit: 29.11.2011
Beiträge: 49
PHP-Kenntnisse:
Anfänger
slipknoter6 kann nur auf Besserung hoffen
Standard

Geht aber irgednwie trozdem nicht
slipknoter6 ist offline   Mit Zitat antworten
Alt 25.01.2012, 21:22  
Erfahrener Benutzer
 
Benutzerbild von Dark Guardian
 
Registriert seit: 10.10.2009
Beiträge: 2.631
PHP-Kenntnisse:
Fortgeschritten
Dark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekannt
Standard

Dann lerne Debuggen.

Wo wird $_SESSION["login"] gesetzt?
__________________
"Alles im Universum funktioniert, wenn du nur weißt wie du es anwenden musst".
Dark Guardian ist offline   Mit Zitat antworten
Alt 25.01.2012, 21:40  
Benutzer
 
Registriert seit: 29.11.2011
Beiträge: 49
PHP-Kenntnisse:
Anfänger
slipknoter6 kann nur auf Besserung hoffen
Standard

so weit der Text Login erfolgreich kommt wird es gesetzt normaler weise

PHP-Code:
    if (($row->password == $passwort)){session_start(); $_SESSION["username"] = $username;} $msg[] = 'Login erfolgreich.<a href="test.php"> Geheim</a>'
da habe das aber jetzt mal username geändert so wie in der anderen datei
slipknoter6 ist offline   Mit Zitat antworten
Alt 25.01.2012, 22:03  
Erfahrener Benutzer
 
Registriert seit: 10.11.2011
Beiträge: 268
PHP-Kenntnisse:
Fortgeschritten
Solu ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
so weit der Text Login erfolgreich kommt wird es gesetzt normaler weise
Vor session_start() darf _keine_ Ausgabe kommen! Selbst ein Leerzeichen ist fatal.

Ansonsten kann ich dir auch nur empfehlen, dass du dich dringendst mit dem Debugging beschäftigen solltest. Ist wie gesagt nur Rätselraten und uns (zumindest geht es mir so) macht es keinen spaß ins blaue zu raten.
Solu ist offline   Mit Zitat antworten
Alt 25.01.2012, 22:06  
Benutzer
 
Registriert seit: 29.11.2011
Beiträge: 49
PHP-Kenntnisse:
Anfänger
slipknoter6 kann nur auf Besserung hoffen
Standard

Okaay dann werde ich das mal morgen machen. Gute nacht und habt noch spass hier
slipknoter6 ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Fragen zu Login und Session (geschützter Bereich) ts.ts PHP Einsteiger 12 14.10.2011 17:36
[Erledigt] Login Session / Upload *.php schuetzen Pose PHP Tipps 2010 2 19.08.2010 17:59
[Erledigt] Login - werde ständig ausgeloggt likemike90 PHP Tipps 2009 19 12.06.2009 17:14
SessionHandler - Sessions in einer Datenbank #Avedo Software-Design 11 04.05.2009 15:44
Login mit Session und Cookies? Sicherste Möglichkeit? DarkSky25 PHP-Fortgeschrittene 20 04.04.2009 12:19
Login per Session oder htaccess? FI-DD PHP Tipps 2008 9 31.01.2008 21:19
Login, Session und der ganze Rest nikosch PHP Tipps 2007 10 25.03.2007 05:48
Session Logout Login Navigation TailerD PHP Tipps 2006 10 24.06.2006 17:12
login + session PHP Tipps 2005-2 23 30.08.2005 21:29
Session Login LA-Finest PHP Tipps 2005-2 4 05.07.2005 10:46
login mit session id PHP Tipps 2005 10 26.01.2005 12:32
session start nur bei jedem 2. login PHP Tipps 2004-2 9 16.12.2004 13:39
Session Problem beim Login PHP Tipps 2004-2 6 15.12.2004 09:37
Login / Session / Benutzerdaten SvenLittkowski PHP Tipps 2004 4 06.09.2004 17:08
Session Login funkt nicht, wenn Cookies immer aus sind schifti PHP-Fortgeschrittene 18 06.09.2004 07:48


Alle Zeitangaben in WEZ +2. Es ist jetzt 21:38 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum