 |
| Hinweise |
Willkommen im TP-Hilfe-Forum!Dies ist ein Forum zu den Themen Photoshop, Dreamweaver, Flash, Selbständigkeit und mehr, in dem Du Hilfe, Anleitung oder eine Lösung zu Deinen Problemen erhältst. Aktuell bist Du in unseren Foren als Gast mit reinen Leserechten unterwegs. Wenn Du Dich registrierst, kannst Du eigene Themen verfassen, deine Frage stellen und privat mit anderen TPlern kommunizieren. Weitere Foren werden zugänglich, und Du wirst – falls gewünscht – per Mail über neue Beiträge informiert. Die Registrierung ist schnell und kostenlos. Sollten bei der Registrierung Fragen auftauchen, reicht ein Klick in unsere Hilfe - Häufig gestellte Fragen oder eine kurze Mitteilung an das Support-Team. Viel Spaß bei Traum-Projekt.com |
03.04.2006, 02:38
|
#16
|
|
TP-Specialist
Registriert seit: Nov 2004
Ort: Die Insel in Europa die aus Europa erst Europa macht _________________________ Nähe Lenzburg
|
Und was machst Du dort mit der sid?
Stell das doch mal ins Netz!
__________________
[321 Name="Joe"]
wie immer, lieber gleich mit notepad, dem Editor meines Vertrauens
[/321]
use my HTML-Tester
Motto'06: Mut zur deutschen Sprache!
|
|
|
03.04.2006, 10:57
|
#17
|
|
TP-Senior
Registriert seit: Oct 2005
|
hier ein beispiel für eine "individuelle" seite:
PHP-Code:
<?php
session_start();
if (isset($_POST["senden"]))
{
error_reporting(E_ALL);
$altespw = $_POST['altespw'];
$neuespw = $_POST['neuespw'];
$wdhneuespw = $_POST['wdhneuespw'];
$username = $_SESSION["username"];
if ($neuespw != "" AND strlen($neuespw) > 4)
{
include ('config.php');
$db_link = mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS);
mysql_select_db ("user");
$sql = "SELECT Username, Passwort FROM TabUser WHERE Username = '$username';";
$userquery = mysql_query($sql) OR die(mysql_error());
$row = mysql_fetch_assoc($userquery);
$passwort = $row['Passwort'];
if ($altespw == $passwort)
{
if ($neuespw == $wdhneuespw)
{
$update = "UPDATE TabUser SET Passwort = '$_POST[neuespw]' WHERE Username = '$username';";
$userquery = mysql_query($update) OR die(mysql_error());
echo "<p style=\"color: #267F30; font-weight: bold; font-size:8pt; font-family:arial, verdana, sans-serif;position:absolute; margin: 365px 0 0 340px;\">Dein Passwort wurde erfolgreich geändert!</p>";
}
else
{
echo "<p style=\"color: red; font-size:8pt; font-family:arial, verdana, sans-serif;position:absolute; margin: 265px 0 0 610px;\">Bitte überprüfe die Eingabe<br>deines neuen Passworts!</p>";
}
}
else
{
echo "<p style=\"color: red; font-size:8pt; font-family:arial, verdana, sans-serif;position:absolute; margin: 240px 0 0 610px;\">Bitte überprüfe die Eingabe<br>deines alten Passworts!</p>";
}
}
else
{
echo "<p style=\"color: red; font-size:8pt; font-family:arial, verdana, sans-serif;position:absolute; margin: 265px 0 0 610px;\">Bitte überprüfe die Eingabe<br>deines neuen Passworts!<br>Die Mindestlänge beträgt<br>5 Zeichen.</p>";
}
}
?>
<html>
<head>
<title>Hattipp</title>
<meta name="description" content="Hattipp">
<meta name="author" content="Tobias">
<meta name="keywords" content="Hattipp">
<link rel="stylesheet" type="text/css" href="site.css">
<link rel="stylesheet" type="text/css" href="links.css">
<link rel="stylesheet" type="text/css" href="text.css">
<!--[if IE]>
<link rel="stylesheet" type="text/css" href="siteie.css">
<link rel="stylesheet" type="text/css" href="linksie.css">
<link rel="stylesheet" type="text/css" href="textie.css">
<![endif]-->
</head>
<body>
<div id="site">
<div id="header">
<span class="headerlogo">Hattipp</span>
</div>
<div id="current">
Meine Daten
</div>
<div id="mainmenu">
<div id="headertext">Menü</div>
<div id="menulink">
<a href="meinhattipp.php">Mein Hattipp</a>
<div id="submenulink">
<a href="userdaten.php">Meine Daten</a>
<a href="userstatistiken.php">Statistiken</a>
</div>
<a href="wetten.php">Wetten</a><br>
<a href="ranking.php">Ranking</a><br>
<a href="hilfe.php">Hilfe</a><br>
<a href="http://www.hattrick.org" target="_blank" title="hattrick">Hattrick</a>
</div>
</div>
<div id="loginmenu">
<div id="headertext">Login</div>
<div id="loginform">
<span id="menulink"><a href="logout.php">Ausloggen</a></span>
</div>
</div>
<div id="main">
<h1>Meine Daten</h1>
<p>
Hier kannst du deine Daten ändern.
<form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post">
<table style="font-size:8pt;">
<tr>
<td>Altes Passwort</td>
<td><input type="password" length="5" name="altespw" value="<?php echo $altespw ?>"></td>
</tr>
<tr>
<td>Neues Passwort</td>
<td><input type="password" length="5" name="neuespw"></td>
</tr>
<tr>
<td>Wdh. neues Passwort</td>
<td><input type="password" length="5" name="wdhneuespw"></td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="Ändern" name="senden" class="button" id="senden"> <input type="reset" value="Löschen" class="button"></td>
</tr>
</table>
</form>
</p>
</div>
</div>
</body>
</html>
|
|
|
03.04.2006, 12:49
|
#18
|
|
TP-Specialist
Registriert seit: Nov 2004
Ort: Die Insel in Europa die aus Europa erst Europa macht _________________________ Nähe Lenzburg
|
Tach Tobias
ich nenne das die "Login-Seite", Individual-Seite wäre dann zB. die "hans-seite.php"
aber egal!
Hier mal ein Ausschnitt aus einem Login, das ich machte:
PHP-Code:
# Ausschnitt aus dem Login-Script (Bei mir: index.php)
# Die Prüfung des eingegebenen Passwortes
#
if ($row->password==$password) {
# Das Passwort ist gültig
inhalt($user);
}
else {
echo "falsches Passwort";
usw. bis es stimmt!
}
...
...
function inhalt($user)
{
session_start();
session_register("user");
#
#Bauen Sie hier Ihren Inhalt ein!
#
makePage(); // Hier werden <html> bis <body> erzeugt
#
?>
<h2 >Im Administrations-Bereich eingeloggt</h2><br/>
<a href="admindex.php"
titel=" Klicken um zum Admin-Menu zu gelangen "
>Bitte Admin-Menu aufrufen!</a>
</div></body></html>
Und hier die Individual-Seite des Users:
PHP-Code:
<?php
session_start();
if (!session_is_registered('user'))
{
die ('Sie müssen sich <a href="index.php" title="zum Einloggen hier klicken">einloggen</a>!');
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><title>
Hans - Administrations-Bereich - "Individual-Seite"
</title>
</head>
<body>
<h1>Hallo Hans</h>
<h2>Willkommen auf Deiner individuellen Seite</h2>
Anzeige indiv. Daten
Links zu andern Seiten von Hans:
<a href="andere-hans-seite.php">andere Hans-Seite</a>
</body>
</html>
Und hier eine "andere (indiv.) Seite des Users:
PHP-Code:
<?php
session_start();
if (!session_is_registered('user'))
{
die ('Sie müssen sich <a href="index.php" title="zum Einloggen hier klicken">einloggen</a>!');
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><title>
Hans - andere "Individual-Seite"
</title>
</head>
<body>
<h1>Hallo Hans</h>
<h2>Willkommen auf Deiner anderen Seite</h2>
Anzeige andere indiv. Daten</body>
</html>
Eine Session starte ich erst bei gültigem Passwort.
session_start();
session_is_register('user'))
In JEDER individuellen Seite prüfe ich die Session
session_start();
if (!session_is_registered('user')) {
Hoffe, Du kannst was anfangen damit.
__________________
[321 Name="Joe"]
wie immer, lieber gleich mit notepad, dem Editor meines Vertrauens
[/321]
use my HTML-Tester
Motto'06: Mut zur deutschen Sprache!
|
|
|
03.04.2006, 15:16
|
#19
|
|
TP-Senior
Registriert seit: Oct 2005
|
und was hat es mit session_is_registered('user') bzw. session_register("user")auf sich? ich versteh dieses user nicht ganz.
|
|
|
03.04.2006, 15:34
|
#20
|
|
TP-Senior
Registriert seit: Oct 2005
|
ne geht nich. die hans-seiten sehen oben jetzt so aus:
PHP-Code:
<?php
session_start();
if (session_is_registered('user'))
{
echo $_SESSION["username"];
}
else
{
echo "NEEEEIN";
}
?>
und die login-seite so:
PHP-Code:
<?php
session_start();
session_register("user");
error_reporting(E_ALL);
$username = $_POST['username'];
$passwort = $_POST['passwort'];
include ('config.php');
$db_link = mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS);
mysql_select_db ("user");
$sql = "SELECT Username, Passwort FROM TabUser WHERE Username = '$_POST[username]';";
$userquery = mysql_query($sql) OR die(mysql_error());
$row = mysql_fetch_assoc($userquery);
if ($row['Username'] == $username AND $row['Passwort'] == $passwort)
{
header("Location:angemeldet.php");
$_SESSION["username"] = $username;
}
else
{
header("Location:badlogin.html");
}
?>
aber wenn ich mich in zwei browsern mit demselben oder auch einem andren user anmelde und mich dann in einem fenster auslogge, wird die session des andren fensters (users) ebenfalls gekillt....???! scheisse man.
|
|
|
03.04.2006, 16:21
|
#21
|
|
TP-Specialist
Registriert seit: Nov 2004
Ort: Die Insel in Europa die aus Europa erst Europa macht _________________________ Nähe Lenzburg
|
Wahrscheinlich musst Du hier die Reihenfolge ändern.
PHP-Code:
header("Location:angemeldet.php");
$_SESSION["username"] = $username;
Wie Du siehst, habe ich es nicht mit header() gemacht, weiss nicht, ob das so geht.
user: bei Dir ist das username
__________________
[321 Name="Joe"]
wie immer, lieber gleich mit notepad, dem Editor meines Vertrauens
[/321]
use my HTML-Tester
Motto'06: Mut zur deutschen Sprache!
|
|
|
03.04.2006, 17:04
|
#22
|
|
TP-Senior
Registriert seit: Oct 2005
|
wäre zu schön gewesen, wenns an dem dreher gelegen hätte...obs am header liegt, kann/will ich nicht ausprobieren, da ich den header da unbedingt brauche! will nicht alles von einer index-seite ausgehend machen. u.a. weil ich auch nich weiss wie das gehen soll. wenns natürlich keinen andren weg gibt, werd ichs wohl so machen müssen. geht dann über includes oder?
hier der aktuelle kopf der hans-seite:
PHP-Code:
<?php
session_start();
if (session_is_registered('username'))
{
echo $_SESSION["username"];
}
else
{
echo "NEEEEIN";
}
?>
und hier die aktuelle login.php:
PHP-Code:
<?php
session_start();
session_register("username");
error_reporting(E_ALL);
$username = $_POST['username'];
$passwort = $_POST['passwort'];
include ('config.php');
$db_link = mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS);
mysql_select_db ("user");
$sql = "SELECT Username, Passwort, UserSession FROM TabUser WHERE Username = '$_POST[username]';";
$userquery = mysql_query($sql) OR die(mysql_error());
$row = mysql_fetch_assoc($userquery);
if ($row['Username'] == $username AND $row['Passwort'] == $passwort)
{
$_SESSION["username"] = $username;
header("Location:angemeldet.php");
}
else
{
header("Location:badlogin.html");
}
?>
und immer noch das alte problem...
|
|
|
03.04.2006, 18:17
|
#23
|
|
TP-Senior
Registriert seit: Oct 2005
|
problem "gelöst". oder besser: es bestand nie ein problem: ich habe immer ff gleichzeitig als browser benutzt. da jeder browser seine eigene session beibehält, solange man ihn nicht schliesst, entsteht mein problem. benutzt man ff und ie z.b. gleichzeitig hat man das problem nicht, da ie eine andre session hinterlegt als ff. das gilt logischerweise nur für die nutzung an EINEM rechner...
danke vielmals für die hilfe!
|
|
|
03.04.2006, 20:28
|
#24
|
|
TP-Specialist
Registriert seit: Nov 2004
Ort: Die Insel in Europa die aus Europa erst Europa macht _________________________ Nähe Lenzburg
|
Bevor das richtige Passwort festgestellt ist, nämlich gleich am Anfang,
find ich es nach wie vor schlecht, bereits diese 2 Funktionen auszuführen:
session_start();
session_register("username");
Ein kleiner Tipp noch:
Teste zuerst die Grundfunktion eines Scripts/Programmes, in diesem Fall zB.
1. Formularverarbeitung
2. DB-Zugriff und Passwort-Überprüfung
3. Session-Start und Session-Kontrolle
erst dann würde ich die Fenster aufreissen.
Browser dürften bei solchen Aufgaben WENIG Überraschungen bringen,
da ja 90% auf dem Server abläuft. Also können diese auch warten.
Edit: WENIG
__________________
[321 Name="Joe"]
wie immer, lieber gleich mit notepad, dem Editor meines Vertrauens
[/321]
use my HTML-Tester
Motto'06: Mut zur deutschen Sprache!
Geändert von 321 (03.04.2006 um 23:08 Uhr).
|
|
|
03.04.2006, 23:40
|
#25
|
|
TP-Senior
Registriert seit: Oct 2005
|
also
session_start();
session_register("username");
vor
$_SESSION["username"] = $username;
header("Location:angemeldet.php");
nach der korrekten pw-abfrage im bereich
if ($row['Username'] == $username AND $row['Passwort'] == $passwort)
{
einfügen?
stellt wohl kein problem dar.
danke für die tipps!
|
|
|
04.04.2006, 02:00
|
#26
|
|
TP-Specialist
Registriert seit: Nov 2004
Ort: Die Insel in Europa die aus Europa erst Europa macht _________________________ Nähe Lenzburg
|
Ich denke zB. so
PHP-Code:
session_start();
session_register("username");
header("Location:angemeldet.php");
__________________
[321 Name="Joe"]
wie immer, lieber gleich mit notepad, dem Editor meines Vertrauens
[/321]
use my HTML-Tester
Motto'06: Mut zur deutschen Sprache!
|
|
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
Thema durchsuchen |
|
|
|
| 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.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 00:04 Uhr.
| |