Guten Tag
Ich habe ein sehr einfaches Forum script gemacht, da ich für die Schule eins benötige.
Jetzt arbeite ich immer weiter daran.
Aber ich habe auf einmal ein Problem:
Ein Script dass anhand der GET uid oder SESSION uid die profildetails anzeigen soll, ändert die session uid
ich weis nicht wie ich das geschafft habe, ich bitte um hilfe
wahrscheinlich habe ich einen kleinen fehler aber den habe ich trotz zig fachem durchschauen übersehen.
Vielen dank den Helfern
ich denke dass ich ales richtig gemacht habe
die uid ist einfach eine fortlaufende nummer
ich habe 2 mysql tabellen
eine für die benutzer und eine für die forenbeiträge(es gibt nur ein forum)
und die uid ist primary key und auto increasment
und wenn ich mich normal einlogge (danach werden die wichtigsten daten in der session gespeichert) und diese seite aufrufe geht alles
aber wenn ich eine andere uid aufrufe(also zB profil.php?uid=3) dann zeigt er das an
wenn ich jetzt wieder nur die seite ohne gets aufrufe kommt der uid 3 obwohl ich 1 habe
und wenn ich das session array printe
dann zeigt er mir als uid 3 an:
das geht auch für uid s die gar nicht existieren, sogar buchstaben
so dass war jetzt ausführlich und ich hoffe verständlich
sollten noch fragen offen sein dann stehe ich gerne zur verfügung
Gruß und vielen Dank schon im vorraus
vanGoss
Ich habe ein sehr einfaches Forum script gemacht, da ich für die Schule eins benötige.
Jetzt arbeite ich immer weiter daran.
Aber ich habe auf einmal ein Problem:
Ein Script dass anhand der GET uid oder SESSION uid die profildetails anzeigen soll, ändert die session uid
ich weis nicht wie ich das geschafft habe, ich bitte um hilfe
wahrscheinlich habe ich einen kleinen fehler aber den habe ich trotz zig fachem durchschauen übersehen.
Vielen dank den Helfern
PHP:
<?php
session_start();
if(!isset($_SESSION["vorname"]))
{
echo "Bitte erst <a href=\"login.php\">einloggen</a>";
exit;
}
include "head.htm";
include "constant.php"; // die Konfigurationsdateien lesen.
// Verbindung zu MySQL Aufbauen
@mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR die(mysql_error());
mysql_select_db(MYSQL_DATABASE) OR die(mysql_error());
$suid = $_SESSION['uid'];
$guid = $_GET["uid"] ;
echo $suid;
echo $guid;
echo "<a href=\"home.php\">Forum</a><br>";
echo "<a href=\"profil_aendern.php\">Eigenes Profil ändern</a><br>";
echo "<form action=\"logout.php\">";
echo "<input type=\"submit\" value=\"Logout\">";
echo "</form>";
echo "<br><br><br>";
if(isset($_GET["uid"])) {
$uid = $guid;
}else{
$uid = $suid;
}
$abfrage = "SELECT * FROM user WHERE uid = '$uid'";
$ergebnis = mysql_query($abfrage);
echo $ergebnis;
while($row = mysql_fetch_object($ergebnis))
{
echo "<h2>Profil von $row->nickname</h2><br><br><br><br>Vorname: $row->vorname<br>Nachname: $row->nachname<br>Logindatum: $row->logindatum<br>Email: <a href=\"mailto:$row->email?subject=AW: Forum\">$row->email</a><br>";
if($row->homepage != ''){ echo "Homepage: <a href=\"$row->homepage\" target=\"_blank\">$row->homepage</a><br>";}
}
include "footer.htm";
?>
die uid ist einfach eine fortlaufende nummer
ich habe 2 mysql tabellen
eine für die benutzer und eine für die forenbeiträge(es gibt nur ein forum)
und die uid ist primary key und auto increasment
und wenn ich mich normal einlogge (danach werden die wichtigsten daten in der session gespeichert) und diese seite aufrufe geht alles
aber wenn ich eine andere uid aufrufe(also zB profil.php?uid=3) dann zeigt er das an
wenn ich jetzt wieder nur die seite ohne gets aufrufe kommt der uid 3 obwohl ich 1 habe
und wenn ich das session array printe
PHP:
<?php
session_start();
print_r($_SESSION);
?>
Code:
Array ( [uid] => 3 ....
so dass war jetzt ausführlich und ich hoffe verständlich
sollten noch fragen offen sein dann stehe ich gerne zur verfügung
Gruß und vielen Dank schon im vorraus
vanGoss