php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2009

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 12.06.2009, 12:41  
Erfahrener Benutzer
 
Registriert seit: 06.01.2009
Beiträge: 144
likemike90 befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Login - werde ständig ausgeloggt

Hallo

Habe wieder ein gröberes Problem Hatte ein ähnliches bzw. fast identes Problem schon mal gepostet dort kam es allerdings zu keiner Lösung ich probiers nochmal um eventuelle mit neuen Fakten auf die Lösung zu kommen

Das Problem :
Auf meiner Homepage gibt es ein Login Feld ( MYSQL ) das klappt auch wunderbar ich kann mich einloggen und der $_SESSION[user] wird auch ausgegeben, wenn ich jetzt allerdings auf eine Seite klicke z.B. Impressum bin ich sofort wieder ausgeloggt. D.H. Sobald ich die Seite wechsle werde ich ausgeloggt.

Die Homepage:
Die Homepage besteht aus mehreren Teilen d.h. es gibt eine INDEX Datei in der es auch eine Art Tabelle gibt die alle möglichen Templates und php Dateien includet

index.php
PHP-Code:
<?php
session_start
();
?>
<head>
<title>blabla.com</title>
</head>

<?php
$section 
= array();
$section['home'] = 'templates/index_content.html';
$section['cl'] = 'templates/index_changelog.html';
$section['kat'] = 'kategorie.php';
$section['art'] = 'artikel.php';
$section['finder'] = 'finder.php';
$section['merkz'] = 'merkzettel.php';
$section['register'] = 'register.php';
$section['registered'] = 'register.php';
?>

<body>
<div id="top" class="container">
<?php include ("index_status.php"); ?>
<div class="log"><?php include ("index_login.php"); ?></div>

<div class="content">
<?php include ("templates/index_logo.html"); ?>

<?php
// CONTENT INCLUDE
if (isset($_GET['section'], $section[$_GET['section']])) {
    include 
$section[$_GET['section']];
} else {
    include 
$section['home'];
}
?>

<p class="bottom"><?php include ("templates/index_foot.html"); ?></p>
</div> <!-- content -->
<div class="bottomline"></div>
</div> <!-- container -->
</body>
</html>
Die Login Datei :

Dabei müsste er ja beim neu Laden der index Datei schon bei Zeile 13 der index_login.php feststellen das eine Session existiert und das er jetzt die logged ausgeben muss

index_login.php
PHP-Code:
<?php
session_start
();

//Includes
include ("_mysql.php");



//Formular Werte
  
$user $_POST["user"];
  
$pass $_POST["pass"];

if(!isset(
$_SESSION["user"])) {



IF (
$user == "" OR $pass == "" )
{
    IF (
$_POST["versuch"] == "ja" )
        {
            
$error "Benutzername oder Passwort nicht ausgefüllt";
         }

include (
"templates/index_login.html");
echo 
$user;
$session_params session_get_cookie_params();
echo 
"Dauer der Session: ".$session_params['lifetime']." Sekunden";
}


else
    {


$abfrage "SELECT id, user, passwort, level FROM user WHERE user LIKE '$user' LIMIT 1";
$ergebnis mysql_query($abfrage);
$row mysql_fetch_object($ergebnis);
if(
$row->passwort == $pass)
    {
    
$_SESSION["user"] = $row->user;
    
$_SESSION["user_id"] = $row->id;
    
$_SESSION["level"] = $row->level;
    include (
"templates/index_logged.html");
echo 
$_SESSION['user'];
$session_params session_get_cookie_params();
echo 
"Dauer der Session: ".$session_params['lifetime']." Sekunden";



    }
else
    {
    echo 
"Benutzername und/oder Passwort waren falsch. <a href=\"login.php\">Login</a>";
    }

}

}
else {
        include (
"templates/index_logged.html");
}



?>
Zusatz
Auffällig ist allerdings das die Seite so komplett mit XAMPP funktioniert und als ich sie auf den Space lud, trat dieser Fehler auf

Die Lösung
Hehe Ich hoffe jemand erkennt hier ein Fehler oder sonstiges ... hab auch ein paar Fragen

1) Muss ich bei jeder Seite session start schreiben oder nur bei der Login Seite und bei sonst allen die Session Variablen auslesen ?
2) Kann ich hier irgendetwas noch austesten
3) Kann das am Webspace liegen ?


LG
Mike

Geändert von likemike90 (12.06.2009 um 16:12 Uhr).
likemike90 ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 12.06.2009, 13:26  
Benutzer
 
Registriert seit: 10.06.2009
Beiträge: 44
PHP-Kenntnisse:
Anfänger
deedee befindet sich auf einem aufstrebenden Ast
Standard

Wie schauen denn die session-Einträge in der phpinfo(); aus?
Da gibt es unterschiede zwischen deinen beiden Systemen, oder?
deedee ist offline  
Alt 12.06.2009, 13:37  
Neuer Benutzer
 
Registriert seit: 10.06.2009
Beiträge: 13
PHP-Kenntnisse:
Anfänger
ruth befindet sich auf einem aufstrebenden Ast
Standard

Vllt einfach mal die Cookies für den Webspace im Browser erlauben ?
ruth ist offline  
Alt 12.06.2009, 13:46  
Erfahrener Benutzer
 
Registriert seit: 06.01.2009
Beiträge: 144
likemike90 befindet sich auf einem aufstrebenden Ast
Standard

cookie sind natürlich erlaubt im Firefox als auch im IE

die php Info sieht wie folgt aus
PHP-Code:
Session Support     enabled
Registered save handlers     files user
Registered serializer handlers     php php_binary

Directive    Local Value    Master Value
session
.auto_start    Off    Off
session
.bug_compat_42    On    On
session
.bug_compat_warn    On    On
session
.cache_expire    180    180
session
.cache_limiter    nocache    nocache
session
.cookie_domain    no value    no value
session
.cookie_httponly    Off    Off
session
.cookie_lifetime    3600    3600
session
.cookie_path    /    /
session.cookie_secure    Off    Off
session
.entropy_file    no value    no value
session
.entropy_length    0    0
session
.gc_divisor    100    100
session
.gc_maxlifetime    1200    1200
session
.gc_probability    0    0
session
.hash_bits_per_character    4    4
session
.hash_function    0    0
session
.name    PHPSESSID    PHPSESSID
session
.referer_check    no value    no value
session
.save_handler    files    files
session
.save_path    /usr/export/tmp    /usr/export/tmp
session
.serialize_handler    php    php
session
.use_cookies    On    On
session
.use_only_cookies    Off    Off
session
.use_trans_sid    0    0 

sieht für mich ok aus

einziger unterschied xamp lauft mit
5.2.8 und webspace mit 5.2.9
likemike90 ist offline  
Alt 12.06.2009, 14:17  
Benutzer
 
Registriert seit: 10.06.2009
Beiträge: 44
PHP-Kenntnisse:
Anfänger
deedee befindet sich auf einem aufstrebenden Ast
Standard

Also ich würde mal 2 ganz simple Testscripts machen:

a.php:
session_start();
$_SESSION['a']='A';
echo '<a href="b.php">b</a>';

b.php:
session_start();
var_dump($_SESSION['a']);

zuerst a.php aufrufen, dann link folgen und Ergebnis anschauen.
deedee ist offline  
Alt 12.06.2009, 14:37  
Erfahrener Benutzer
 
Registriert seit: 06.01.2009
Beiträge: 144
likemike90 befindet sich auf einem aufstrebenden Ast
Standard

Ergebnis ist
Code:
string(1) "A"
d.h für mich er muss wenn er eine seite aufruft und somit die index.php ladet irgendein codesegment aufrufen das die session löscht oder verändert ?
likemike90 ist offline  
Alt 12.06.2009, 14:41  
Benutzer
 
Registriert seit: 10.06.2009
Beiträge: 44
PHP-Kenntnisse:
Anfänger
deedee befindet sich auf einem aufstrebenden Ast
Standard

Schaut so aus, nicht wahr?
Bau mal basierend auf diesen beiden kleinen Testscript Schritt für Schritt (immer nur ein paar Programmzeilen) deine gewünschten Dateien auf. Irgendwann wird er das A dann nicht mehr ausgeben. Dann weißt du schon, wo der Fehler ist.
deedee ist offline  
Alt 12.06.2009, 14:47  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

ein var_dump ($_SESSION) in der index_login würde es vermutlich auch schon bringen.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline  
Alt 12.06.2009, 14:56  
Erfahrener Benutzer
 
Registriert seit: 06.01.2009
Beiträge: 144
likemike90 befindet sich auf einem aufstrebenden Ast
Standard

in der index hab ichs schon

da gibt er es auch aus, bis zum wechseln der seite

kanns daran liegen das ich irgendwo ein session start zu wenig hab oder zuviel hab ?
likemike90 ist offline  
Alt 12.06.2009, 15:05  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Schön. Davon habe ich aber nicht gesprochen.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline  
 


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
SESSION Problem markbraue PHP-Fortgeschrittene 1 01.01.2009 14:49
[Erledigt] Login Problem kueppi PHP Tipps 2008 5 21.08.2008 22:09
[Erledigt] Login Problem kueppi PHP Tipps 2008 12 21.08.2008 22:03
[Erledigt] Problem mit MySQLi Login + Session Raito PHP Tipps 2008 7 29.07.2008 22:49
[Erledigt] Session Problem karina_02 PHP Tipps 2008 6 18.05.2008 22:37
Problem bei session Lifetime Cyberbob_at_tot PHP Tipps 2007 5 05.06.2007 17:47
Problem mit Session Charly Shop Sui PHP Tipps 2006 13 25.08.2006 17:08
Session Logout Login Navigation TailerD PHP Tipps 2006 10 24.06.2006 17:12
Und noch ein Session Problem... Weyoun PHP Tipps 2006 9 27.02.2006 22:17
[Erledigt] php session problem :( PHP Tipps 2005-2 5 21.10.2005 16:37
Session wieder aufnehmen; Problem mit GET Jacks Rache PHP-Fortgeschrittene 9 12.08.2005 14:32
Session Problem PHP-Fortgeschrittene 3 18.02.2005 14:37
session start nur bei jedem 2. login PHP Tipps 2004-2 9 16.12.2004 13:39
[Erledigt] Hilfe...PhpBB Session Problem!! PHP Tipps 2004-2 2 15.12.2004 18:28
Session Problem beim Login PHP Tipps 2004-2 6 15.12.2004 09:37

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
werde ständig ausgeloggt, phpbb3 ständig ausgeloggt, ständig ausgeloggt, phpbb3 ausgeloggt, phpbb ständig ausgeloggt, phpbb3 werde immer ausgeloggt, ständiges ausloggen, save.tv ausgeloggt, xampp session problem user wird ausgeloggt, php session ausgeloggt, session ständiges ausloggen php, phpbb3 immer ausgeloggt, http://www.php.de/php-einsteiger/55992-erledigt-login-werde-staendig-ausgeloggt.html, phpbb forum ständiges neu einloggen, werde ständig ausgeloogt, phpbb3 werde ausgeloggt, phpbb ausgeloggt, phpbb sofort ausgeloggt, probleme beim loging ständig wieder ausgelogt, werde ausgeloggt

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:13 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