SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Handbuch der Java-Programmierung

Handbuch der Java-Programmierung zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 20.01.2005, 10:47:22
roemario roemario ist offline
Anfänger
 
Registriert seit: Jan 2005
Beiträge: 1
Problem mit Session

Hallo Zusammen,

ich habe ein "Browserabhängiges" Problem mit meinem Login-Script. Folgendes mir unerklärliches passiert:

- ich logge mich im Internet mit Firefox ein - Resultat: login geht, Session bleibt erhalten, kann alles machen

- ich logge mich im Internet mit dem IE 6 ein - Resultat: login geht, Session bleibt nicht erhalten, sobald ich eine weiterführende Seite öffnen will, werde ich ausgeloggt

- ich logge mich lokal auf meinem Rechner mit dem IE 6 ein - Resultat: login geht, Session bleibt erhalten, kann alles machen

????

ich bin den Code jetzt schon einige male durchgegangen und finde einfach keinen Fehler und keine Erklärung dafür, zumal es schon funktiniert hat...

deshalb Poste ich hier mal meinen Code:


-----------login.php-------------

PHP-Code:
<?php
error_reporting
(E_ALL);
session_start();
require(
"../connect/connect.inc.php");
?>
<!DOCTYPE HTML PUBLIC "-//W3D//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>LogIn zum Verwaltungsbereich</title>
<link href="../style/style.css" rel="stylesheet" type="text/css">

</head>
<body class=sites>
<?php if(!isset($_POST['submit'])) { ?>
<form action="<?php $PHP_SELF ?>" method="post">
    <table width="400" bgcolor="#000000" border="0" cellpadding="5" cellspacing="1" align="center" class=sites>
        <tr>
            <td bgcolor="#e7e7e7" align="center" colspan="2">
                <b>Bitte erst anmelden</b>
            </td>
        </tr>
        <tr>
            <td width="170" bgcolor="#e7e7e7">Benutzername</td>
            <td width="230" bgcolor="#ffffff"><input type="text" name="username" size="20" class="input"></td>
        </tr>
        <tr>
            <td width="170" bgcolor="#e7e7e7">Passwort</td>
            <td width="230" bgcolor="#ffffff"><input type="password" name="password" size="20" class="input"></td>
        </tr>
        <tr>
            <td bgcolor="#e7e7e7" align="center" colspan="2">
                <input type="submit" name="submit" value="Anmelden" class="button">
            </td>
        </tr>
    </table>
</form>
<?php
}elseif(!$_POST['username'] || $_POST['username'] == ""){
echo 
'<p align="center">Einen Benutzername brauchen wir schon ;-)<br><br><a href="login.php">Zurück</a></p>';
}elseif(!
$_POST['password'] || $_POST['password'] == ""){
echo 
'<form action="login.php" method="post">';
echo 
'<p align="center"> Ein Passwort brauchen wir schon ;-) <br><br>';
echo 
'<input type="hidden" name="username" value="'.$_POST['username'].'">';
echo 
'<input type="submit" name="zurueck" value="Zurück">';
echo 
'</p>';
echo 
'</form>';
}else{
$password=md5($password);
$query=@mysql_query("SELECT user, pass FROM admin_mitglieder WHERE user='".$_POST['username']."'"
or die(
'Select ist fehlgeschlagen!');
$result=@mysql_fetch_array($query
or die (
'<p align="center">Sorry, aber dieser Benutzername existiert nicht!<br><a href="login.php">Zurück</a></p>');
if(
$password != $result['pass']){
echo 
'<form action="login.php" mehtod="post">';
echo 
'<p align="center">Sorry, aber dieses Passwort ist falsch!<br><br>';
echo 
'<input type="hidden" name="username" value="'.$_POST['username'].'">';
echo 
'<input type="submit" name="zurueck" value="Zurück"></p>';
echo 
'</form>';
die;
}else{
$user=$result['user'];

$_SESSION['user']=$user;

mysql_query("UPDATE admin_mitglieder SET lastlogin=NOW() where user='$user'");
if(
$user=="test")
{
    echo 
"<a href=test.php>test</a>";
}elseif(
$user=="schaperm")
{
    require(
"menu.php");
}


}
}
?>
</body>
</html>
-----------test.php-------------

PHP-Code:
<?php
error_reporting
(E_ALL);
if(
$_SESSION['user'] == "") {
    
header("location:http://www.roemario.de/dev/new_fcw/logout.php");
    die;
}
echo 
'<pre>' print_r($_SESSIONtrue) . '</pre>';


echo 
"<html>";
echo 
"<title>Test</title>";
echo 
"<link rel='stylesheet' type='text/css' href='../style/style.css'>";

echo 
"<body>";
require(
"../connect/connect.inc.php");
    
$time getdate();
          
$user=$_SESSION['user'];
    echo 
$user;



echo 
"</body>";
echo 
"</html>";
?>

Ihr könnt euch das ganze Natürlich auch anschauen unter http://www.roemario.de/dev/new_fcw/admin/login.php
Benutzername: test
Passwort: test

Ich hoffe mir hat jemand eine Erklärung für dieses Phänomen und vielleicht auch eine Lösung.

Gruß Mario
Mit Zitat antworten
  #2  
Alt 22.01.2005, 20:45:01
Fabian85 Fabian85 ist offline
Anfänger
 
Registriert seit: Feb 2004
Beiträge: 130
Hi

Hi ich kann dir jetzt nicht sagen vielleicht baust du erstmal noch eine Session_destroy funktion ein. Vielleicht werden die daten bei dir nicht gelöscht oder so auf dem lokalen und daher kommst du da immer rein. Desweiteren würd ich noch die Cookieeinstellungen mal schecken! Hatte das auch mal gehabt das beim IE die Session nicht erhalten blieben bis ich mal gecheckt hatte das die Cookies deaktiviert waren.

Also ich glaube kaum das es sich da um ein Browserbug handelt!

Mir fälllt übrigens auf das du in der test.php oben kein Session_start() hast!

Ach so sag mal die variablen über $_POST abzufragen hat das irgendeinen vorteil als wenn man die einfach so abfragt? Weil ich das immer so mache. Also nicht wie du $_POST[username] sondern stattdessen einfach nur $username abfrage weil das klappt ja auch.
__________________
"Wer im Leben kein Ziel hat, verläuft sich."

www.bedtke.com - Zitate, Urlaubs- und Überstundenplaner, Webadressbuch und vieles mehr!

Geändert von Fabian85 (22.01.2005 um 20:49:18 Uhr)
Mit Zitat antworten
  #3  
Alt 22.01.2005, 22:09:59
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
Re: Hi

Zitat:
Original geschrieben von Fabian85
Ach so sag mal die variablen über $_POST abzufragen hat das irgendeinen vorteil als wenn man die einfach so abfragt? Weil ich das immer so mache. Also nicht wie du $_POST[username] sondern stattdessen einfach nur $username abfrage weil das klappt ja auch.
Das wird bei dir aber auch nur deswegen gehen, weil du in der php.ini die Einstellung register_globals aktiviert hast. Standardmäßig ist register_globals bei aktuellen PHP-Versionen deaktiviert.
Dazu gibt es auch ein entsprechendes Kapitel auf php.net: http://de.php.net/register_globals

Geändert von xabbuh (22.01.2005 um 22:16:25 Uhr)
Mit Zitat antworten
  #4  
Alt 23.01.2005, 02:08:23
Fabian85 Fabian85 ist offline
Anfänger
 
Registriert seit: Feb 2004
Beiträge: 130
jo danke

jo danke werde mir jetzt angewöhnen variablem von formularen über $_POST[...] abzufragen.

Gut zu wissen. Wie ist das denn bei get? gibts da dann das array $_GET[..] oder wie?
__________________
"Wer im Leben kein Ziel hat, verläuft sich."

www.bedtke.com - Zitate, Urlaubs- und Überstundenplaner, Webadressbuch und vieles mehr!
Mit Zitat antworten
  #5  
Alt 23.01.2005, 03:39:00
momo.metti momo.metti ist offline
Anfänger
 
Registriert seit: Apr 2004
Beiträge: 55
Ja genau $_GET['....']

mfg momo
Mit Zitat antworten
  #6  
Alt 23.01.2005, 15:27:52
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
Re: jo danke

Zitat:
Original geschrieben von Fabian85
jo danke werde mir jetzt angewöhnen variablem von formularen über $_POST[...] abzufragen.

Gut zu wissen. Wie ist das denn bei get? gibts da dann das array $_GET[..] oder wie?
s.a. http://de.php.net/manual/de/language...s.superglobals
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

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

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:01:56 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt