Tasteless_Candy
Hallo zusammen
Zur Zeit habe ich folgenden Code in der internen Seite:
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
|
<?php
$name = $_POST["username"];
if($name="username")
{
echo "Herzlich Willkommen, <b>$name</b>";
}
else
{
echo "Das Feld User wurde nicht ausgefüllt";
}
?> |
|
Nun wird ja folgendes ausgegeben:
Herzlich Willkommen,
username
Was muss ich verändern, dass anstatt
username der Name des eingeloggten Mitglied übernommen wird?
Vielen Dank für eure Hilfe.
Nanni
Zeile 4 muss heißen: if($name=="username")
Mit einem = setzt du eine Varibale, mit zwei == vergleichst du ;D
edit: Ne, das ist auch schwachsinn... was willst du in der if-Abfrage eig. abfragen? So heißt es ja, wenn in der Variable $name "username" gespeichert ist, gib aus... aber deine Mitglieder heißen ja nicht "username".
Tasteless_Candy
Hmm jetzt kommt:
Das Feld User wurde nicht ausgefüllt. !?
Liegt es an den bezeichnungen im Formular, dass ich da was verwechselt habe?
Edit:
Ich will, dass wenn ich mich als Tasteless_Candy anmelde steht:
Hallo Tasteless_Candy oder Willkommen Tasteless_Candy
Nanni
Was willst du mit der Abfrage bewirken? Wie sieht sie jetzt aus?
Was gibst du im Feld ein?
Tasteless_Candy
Also, das wäre der Code für`s Formular.
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:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
|
<?php // Vor diesen beiden Zeilen darf nichts stehen!
session_start(); // Vor diesen beiden Zeilen darf nichts stehen!
include("datenbank.php"); // Bindet die Datenbank ein
//////////////////////
//Hier müssen die Links zu deinen Seiten eingetragen werden!
//////////////////////
$loginseite = "http://voeny.vo.funpic.de/login.php"; //URL zu deiner Loginseite
$internseite = "http://voeny.vo.funpic.de/OhneName2.php"; //URL zu deiner internen Seite
//////////////////////
?>
<!-- Hier nichts verändern! -->
<?php
if ($_POST["sent"]) //Überprüfe, ob Formular abgeschickt wurde
{
if(!empty($_POST["username"]) && !empty($_POST["passwort"])) //Alle Felder ausgefüllt?
{
//Verarbeite Formular
$passwort= md5($_POST["passwort"]);
$username = addslashes(htmlspecialchars($_POST["username"]));
$query = mysql_query("SELECT * FROM mitglieder WHERE name = '".$username."' AND passwort = '".$passwort."' LIMIT 1");
$login = mysql_fetch_array($query); //Für WBBLite
if(@mysql_num_rows($query) != 0)
{
$_SESSION["name"] = $username; //Session speichern
$_SESSION["funktion"] = $login["funktion"];
echo "Login war erfolgreich <br><meta http-equiv='refresh' content='5; URL=http://voeny.vo.funpic.de/OhneName2.php'>";
}
else
{
echo "Benutzername und/oder Passwort waren falsch. <br><a href="".$loginseite."">Login</a>";
}
}
else
{
echo "Bitte fülle alle Felder aus! <br><a href="".$loginseite."">Zurück</a>";
}
} else { //Zeige Formular an
?>
<!-- Der HTML-Teil kann angepasst werden. Die Namen der Formularfelder müssen aber gleich bleiben! -->
<div align="right">
<table id="Login">
<form action="" method="post">
<td>
<p align="right"><font face="Tahoma"><span style="font-size:10pt;">Username:</span></font><font face="Garamond Premr Pro Smbd"><br>
</font><b></b></p>
<td>
<p align="right"><font face="Tahoma"><b><input type="text" size="20" maxlength="50" name="username">
</b></font><b></b></p>
<tr>
<td>
<p align="right"><font face="Tahoma"><span style="font-size:10pt;">Passwort</span></font><font face="Garamond Premr Pro Smbd">:<br>
</font><b></b></p>
<td>
<p align="right"><font face="Tahoma"><input type="password" size="20" maxlength="50" name="passwort">
</font><b></b></p>
<tr>
<td>
<p align="right"><font face="Tahoma"><input type="hidden" name="sent" value="sent">
</font><b></b></p>
<td>
<p align="right"><b><b><font face="Tahoma" color="#CED590"><input type="submit" value="Login" name="Login" style="font-family:Tahoma; background-color:rgb(206,213,144); border-color:rgb(206,213,144);">
</b><b></form>
</font></b></p>
</b> </table>
</div>
<p align="right"><b><b><font face="Garamond Premr Pro Smbd" color="#CED590"><!-- Die Klammer unbedingt stehen lassen! -->
<?php
}
?>
<!-- Ab hier kann wieder angepasst werden -->
</b><b></body>
</html></font></b></p>
</b>
<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
</html> |
|
Anschliessend werde ich automatisch auf die interne Seite weitergeleitet ( was muss ich übrigens eingeben, dass sich die weiterleitung in einer neuen Seite öffnet und nicht im bestehenden kleinen fenster im Design? )
und dann sollte auf der Internen seite folgender text erscheinen:
Hallo, !?!? ( wer auch immer sich angemeldet hat)
gestern hatte ich es mal geschafft und hab dann aus versehen irgend etwas gemacht ( keine ahnung was) und jetzt funktioniert es nicht mehr :-(
Nanni
wo sich die Seite öffnet, definierst du mit target:
<a href=.... target=_top>Im selben Fenster</A>
<A href=.... target=_blank>In neuem Fenster</A>
Du setzt doch eine Session, nimm doch den Namen aus der Session ;D
Die Variablen stimmt schon, aber deine Abfrage im Startpost macht einfach keinen Sinn. Wie gesagt, du fragst, ob $name "username" ist... sofern also jemand etwas anderes wie username ins Feld eingibt, wird der if-Teil nicht erfüllt. Du meinst wahrscheinlich sowas:
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
|
<?php
session_start();
if(isset($username))
{
echo "Herzlich Willkommen, <b>$username</b>";
}
else
{
echo "Das Feld User wurde nicht ausgefüllt";
}
?> |
|
Tasteless_Candy
php: |
1:
|
echo "Login war erfolgreich <br><meta http-equiv='refresh' target=_parent content='5; URL=http://voeny.vo.funpic.de/OhneName2.php'>"; |
|
Stimmt das so?
Das andere funktioniert immer noch nicht :-(
Nanni
achso.. stimmt, du musst den $username noch definieren. Schreib mal vor die if-Abfrage noch:
$username = $_SESSION["name"];
Dann sollte es eig. klappen, wenn nicht, schreib bitte was nicht geht ;D
Tasteless_Candy
Zitat: |
Original von Nanni
achso.. stimmt, du musst den $username noch definieren. Schreib mal vor die if-Abfrage noch:
$username = $_SESSION["name"];
Dann sollte es eig. klappen, wenn nicht, schreib bitte was nicht geht ;D |
Wuah, supiiiiiiiiiii. funktioniert. Du hast mich gerettet :-)
Vielen vielen Dank