Gegen Bilderklau - Das Original (https://www.gegen-bilderklau.net/index.php)
- Design, Website, Copyright (https://www.gegen-bilderklau.net/board.php?boardid=80)
--- Homepagehilfe (https://www.gegen-bilderklau.net/board.php?boardid=27)
---- Homepagehilfe - Archiv (https://www.gegen-bilderklau.net/board.php?boardid=139)
----- [PHP & MySQL] Weiterleiten auf verschiedene Seiten (https://www.gegen-bilderklau.net/thread.php?threadid=174069)
Geschrieben von Jamaika am 01.08.2010 um 17:31:
Weiterleiten auf verschiedene Seiten
Hallöchen,
Ich würde gerne jeden Nutzer auf eine individuelle Seite weiterleiten, nachdem er sich eingeloggt hat.
Also Nutzer A wird auf die Seite A weitergeleitet.
Nutzer B auf Seite B, usw.
Ist das möglich?? Und wenn ja, wie??
Trotzdem sollen aber alle Nutzer (A, B, C,...) die Seiten X, Y, Z sehen dürfen.
Ich hab schon überall geschaut, aber noch nichts brauchbares gefunden.
Den Login habe ich nach diesem Tut erstellt (minimal verändert) und der funktioniert auch ganz prima.
Klick
Ich hoffe, mein Problem ist klar geworden und ihr könnt mir irgendwie helfen.
Geschrieben von callous. am 01.08.2010 um 18:10:
Das lässt sich genauso wie z. B. die Steckbriefe (Tut) lösen
Geschrieben von Jamaika am 01.08.2010 um 20:08:
@ Black Tear
Hab mir das jetzt so gedacht, dass man sich einloggt und dann da nicht nur steht "Hallo Du" sondern auch ein Link, wo jeder dann sein individuelles Profil hat. (später vllt. auch noch seine Pferde sieht & direkt pflegen kann)
@ fabbily
Hab damit jetzt schonmal etwas rumprobiert.. Aber irgendwie klappt es noch nicht so ganz...
Hier mal der Code von der Seite auf die man weitergeleitet wird wenn man sich erfolgreich eingeloggt hat (intern.php)...:
Fehler in Zeile 25 sagt er mir immer...
code: |
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:
|
<?php
include ("checkuser.php");
?>
<html>
<head>
<title>[Braeside Stables]</title>
<link rel="stylesheet" type="text/css" href="look.css">
</head>
<body>
<span class="text">
Herzlich Willkommen <b><?php echo $_SESSION["user_nickname"]; ?></b>!<br><br>
<a href="logout.php"><img src="../Grafiken/logout.bmp" border="0"></a>
<?php
// Hiermit wird der Wert geholt, der über die URL übergeben wurde. Dieser wird nun für die Abfrage genutzt.
// Somit werden nur genau die Daten abgefragt, die diese ID haben
$id = "$_GET[id]";
$Ergebnis = mysql_query( "SELECT * FROM benutzerdaten where ID='$id'" );
if (@mysql_num_rows($Ergebnis) == 0) {
echo "Dieses Pferd existiert nicht!";
}
else {
$Data = mysql_fetch_array( $Ergebnis );
//Anzeige der Links (Wenn du den Chara auf mehrere Seiten verteilst
//Hier die Angabe der Daten vom Pferd. Es kann wieder HTML verwendet werden ganz normal eben (; Nur an der Stelle wo die Daten sein sollen schreibt ihr $Data[Spaltenname] hin
echo "<a href="Pferd.php?id=$id">Dein Profil</a>
";
}
?>
</body>
</html>
|
|
Geschrieben von Jamaika am 01.08.2010 um 20:57:
Mhmm... Funktioniert irgendwie nicht...
Hier mal die Fehlermeldungen
Warning: mysql_query() [function.mysql-query]: Access denied for user 'www-data'@'localhost' (using password: NO) in /users/braeside-stables/www/filemanager/Gestuet/intern.php on line 25
Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /users/braeside-stables/www/filemanager/Gestuet/intern.php on line 25
Dieses Pferd existiert nicht!
Und wenn ich da jetzt aber in der Datei als ID = 1 mache, dann ist es ja immer 1 und nicht beim Nutzer 2 die 2.. . oder ?
Geschrieben von callous. am 01.08.2010 um 21:12:
Das "Datenbankzeugs" fehlt.
Also das, wo dann Name der Datenbank, Passwort usw. drin stehen
Ich weiß, mein Erklärungskünste sind die besten. Der Begriff fällt mir leider nicht mehr ein
Geschrieben von callous. am 01.08.2010 um 21:12:
Das "Datenbankzeugs" fehlt.
Also das, wo dann Name der Datenbank, Passwort usw. drin stehen
Ich weiß, mein Erklärungskünste sind die besten. Der Begriff fällt mir leider nicht mehr ein
Geschrieben von callous. am 01.08.2010 um 21:33:
Zitat: |
Original von BlackTear
Zitat: |
Original von fabbily
Das "Datenbankzeugs" fehlt.
Also das, wo dann Name der Datenbank, Passwort usw. drin stehen
Ich weiß, mein Erklärungskünste sind die besten. Der Begriff fällt mir leider nicht mehr ein
|
Die Datenbankverbindung fehlt
|
Jetzt sollte ich mich aber wirklich schämen
(oder mir in den Ferien mal Schlaf gönnen^^)
Geschrieben von Jamaika am 01.08.2010 um 21:56:
Ahh! Gut!! Dachte der greift immernoch auf die db zu, weil er das ja im login.php schon tut. Aber jetzt gehts.
Also wenn ich jetzt id=1 mache, dann gibt er auch den Link aus.
Nur was macht der User mit der id 2 jetzt...? weil das stimmt ja dann nicht mehr...
Ach und bei dem Link muss ich jetzt bestimmt auch die id = 1 machen oder..?
Da stellt sich gleich noch ne Frage; das ist ja bei dem Steckbrief eine php-Datei wo einfach die Daten immer ausgelesen werden.. Ich hätte es aber lieber in einer einfachen .htm-Datei oder geht das nicht?
Geschrieben von Jamaika am 02.08.2010 um 10:56:
Mhmm... Es will einfach nicht...
Also ich bin nicht so der MySQL-Profi, aber wäre es möglich, in der Datenbank ein drittes Feld anzulegen (z.B. Profil) und dann jedem Nutzer einen Pfad zu seinem Profil darin speichert. Weiß halt nicht ob man die ganz normal (bsp. "../Nutzer/index.html" o.ä.) dort angeben kann und dann nachher auch wieder ausgeben kann, wie mit dem Namen?
code: |
1:
|
Herzlich Willkommen <b><?php echo $_SESSION["user_nickname"]; ?></b>! |
|
Geschrieben von callous. am 02.08.2010 um 11:46:
Ich würds etwa so machen:
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:
|
<?php
include ("checkuser.php");
?>
<html>
<head>
<title>[Braeside Stables]</title>
<link rel="stylesheet" type="text/css" href="look.css">
</head>
<body>
<span class="text">
<?php
include("db.php"); // wie du es eben genannt hast
$Ergebnis = mysql_query( "SELECT * FROM benutzerdaten where user_nickname='$user_nickname'" );
if (@mysql_num_rows($Ergebnis) == 0) {
echo "Fehler!";
}
else {
$Data = mysql_fetch_array( $Ergebnis );
echo 'Herzlich Willkommen, ' . $user_nickname . '!<br><br>
<a href="logout.php"><img src="../Grafiken/logout.bmp" border="0"></a>';
}
?>
</body>
</html>
|
|
Geschrieben von Remember am 07.08.2010 um 17:40:
Habe in etwa das gleiche Problem. Ich möchte jedem Mitglied seine Turnierpferde anzeigen lassen. Aber irgendwie ... versteh ich leider nicht, was ihr gerade gesagt habt (bin leider noch nicht so gut in PHP und dem Zeug

)
Zitat: |
Die ID muss natürlich variabel übergeben werden.
Daher schreib wieder "WHERE ID = '$id'" hin, füll die Variable "$id" aber.
Also lass dir die Daten des Users beim Login ausgeben "SELECT * FROM mitglieder WHERE name = '$name' AND passwort = '$passwort'"; und speicher die ID des Mitglieds in der Sessionvariable.
Dann brauchst du später, da wo jetzt "WHERE ID = '$id'" steht, nur noch schrieben "WHERE ID = '$deineSessionVariable'.
Edit: Die Datei muss natürlich eine PHP Datei bleiben, weil der Code nicht geparst wird, wenn es eine .htm oder .html Endung hat. |
Wie kann ich etwas in der Sessionvariablen speichern? (wahrscheinlich sau dumme Frage, ich weiß

)
Geschrieben von callous. am 07.08.2010 um 17:54:
Zitat: |
Original von Cousquer
Wie kann ich etwas in der Sessionvariablen speichern? (wahrscheinlich sau dumme Frage, ich weiß
) |
php: |
1:
2:
3:
|
<?php
$_SESSION['name'] = "text";
?> |
|
Wobei ich persönlich diese Variante für umständlich halte...
Das reimt sich sogar!
Geschrieben von Remember am 07.08.2010 um 18:52:
Ohgott. Das geht mir grad alles viel zu hoch. xD
Hilfe Hilfe ich bin ein Fisch. (Frag mich nich, wie ich da grad draufkomm

)
Ich habe:
code: |
1:
|
$Ergebnis = mysql_query("SELECT * FROM pferd WHERE Tunierreiter = !''"); |
|
und möchte anstatt der Ausgabe von allen Pferden, die einen Turnierreiter haben, eine Ausgabe von den Turnierpferden des angemeldeten Users. Wenn ich das jetzt richtig verstanden habe, müsste ich dann sagen:
code: |
1:
2:
3:
4:
5:
|
<?php
$_SESSION['name'] = "$username";
blaaaa ...
$Ergebnis = mysql_query("SELECT * FROM pferd WHERE Tunierreiter = '$username'");?> |
|
?
e./
Okay, nein. Anscheinend nicht.
Ich bin überfordert. Hilfe.
Geschrieben von callous. am 07.08.2010 um 19:22:
In dem Fall kannst du die Session-Variable weglassen. Hast du ja schließlich schon oben stehn, wenns im Internbereich ist
Geschrieben von Remember am 07.08.2010 um 19:44:
Es will absolut nicht funktionieren -.- Schrecklcihes Teil. Wie ich PHP hasse, weil ichs nich richtig kann
Vielleicht siehst du ja auf den ersten Blick gleich irgendwas. *hoffnungsvoll schau*

Und weil ich keine Ahnung habe, post ich einfach mal das ganze Teil :S ^^ Hoffe, dass das nicht irgendwas noch mit einer andren Datei zu tun hat (?).
meinepferde.php
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:
|
<?php
include("checkuser.php");
?>
<html>
<head>
<title>SHAKESPEAR</title>
<link rel=stylesheet href=styli.css type=text/css>
</head>
<body><h2>Deine Tunierpferde</h2>
<?php
// Verbindung zur Datenbank
include("datenbank.php");
// Hier die Abfrage übersetzt: RUFE * (alle Spalten) VON der Tabelle Pferd auf WO in der Spalte Besitzer nichts steht.
$Ergebnis = mysql_query("SELECT * FROM pferd WHERE Tunierreiter = '$name'");
// Wenn das Ergebnis 0 ist gib aus
if (@mysql_num_rows($Ergebnis) == 0) {
echo "Für dich sind keine Tunierpferde eingetragen.";
}
else {
// Sonst zeige an ..
while($Data = mysql_fetch_array($Ergebnis)) {
// Der Name wird ausgegeben .. die HTML Elemente sind frei anpassbar- Vor " muss aber immer ein \.
// Der Steckbriefname lautet Pferd. Diesem wird jetzt die ID des Pferdes angehängt, damit die Datei nachher weiß, welche Daten sie abfragen muss.
// Ihr könnt die ganzen anderen Infos auch angeben .. sprich $Data[Jahrgang] oder $Data[Geschlecht]
echo "<h3><a href="pferd.php?id=$Data[ID]">$Data[Name]</a></h3>
<a href="pferd.php?id=$Data[ID]"> <img src='pferdebilder/$Data[ID]/vorschaubild.jpg' style="height:150px; float:right;" class="border;"></a>
<table>
<tr><td class="hengst"><b>von</b></td> <td>$Data[Vater]</td></tr>
<tr><td class="hengst"><b>a. d.</b></td> <td>$Data[Mutter]</td></tr></table><br>
<table>
<tr><td class="hengst"><b>Rasse</b></td> <td>$Data[Rasse]</td> <td class="hengst"><b>Alter</b></td> <td>$Data[Alter] Jahre</td></tr>
<tr><td class="hengst"><b>Fellfarbe</b></td> <td>$Data[Fellfarbe]</td> <td class="hengst"><b>Stockmaß</b></td> <td>$Data[Stockmaß]</td></tr>
<tr><td class="hengst"><b>Reitart</b></td> <td>$Data[Reitart]</td> <td class="hengst"><b>Schwerpunkt</b></td> <td>$Data[Schwerpunkt]</td></tr>
<tr><td class="hengst"><b>LGS</b></td> <td>$Data[Lebendgewinnsumme]</td></tr>
</table><br><br>
</div>";
}
}
?>
</body>
</html> |
|
Geschrieben von Oli am 07.08.2010 um 20:01:
Hi,
wo kommt denn $name überhaupt her? Ist das irgendwo definiert? Wenn nicht beinhaltet es natürlich auch nicht den Namen...
LG
Geschrieben von Remember am 07.08.2010 um 20:17:
Ich dachte, dass das in der checkuser.php da drin ist.
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
|
<?php
session_start();
if(!isset($_SESSION["name"]))
{
echo "Diese Seite ist nur für Mitglieder verfügbar.<br>Bitte <a href="login.php">einloggen</a>!.";
exit;
}
?> |
|
Weil da steht doch dieses Session[name].
Und das dachte ich ... Ach, es macht mich verrückt.
Ich blick da irgedndwie gar nicht mehr durch
Geschrieben von callous. am 07.08.2010 um 20:29:
Heißt die Spalte fürn Mitgliedernamen wirklich "name"? Wenn nicht, musst du es dementsprechend anpassen. Wenn du die Spalte z. B. "username" genannt hast, gehört das da auch hin
Geschrieben von Remember am 07.08.2010 um 20:31:
nää, die heißt definitiv "name".
angehängt mal alles, was im entferntesten (meiner meinung nach) damit zu tun haben könnte x(
Geschrieben von Oli am 07.08.2010 um 21:53:
Zitat: |
Original von Cousquer
Ich dachte, dass das in der checkuser.php da drin ist.
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
|
<?php
session_start();
if(!isset($_SESSION["name"]))
{
echo "Diese Seite ist nur für Mitglieder verfügbar.<br>Bitte <a href="login.php">einloggen</a>!.";
exit;
}
?> |
|
|
Ja, da steht
$_SESSION["name"] - aber nicht
$name
LG
Forensoftware: Burning Board, entwickelt von WoltLab GmbH