Woltlab-Board Bug - Hilfe pls
jives 27.03.2002 - 23:56 865 5
jives
And the science gets done
|
Ich hab von Woltlab bisher nur das Beste gehört, aber was ich da mit dem Board habe, ist schon ziemlich grausam Ein ganz schlimmer Bug, bei dem man sich selbst aussperren kann zB Was mich aber verzweifeln lässt ist, dass man sich 2 mal einloggen muss. Das ganze wird mit einer Form und über die "post" Methode gelöst, nur werden beim 1. Mal die Variablen nicht übergeben. Man muss zurück (nicht neu laden) und das Ganze nochmal eintippen, erst dann werden die Variablen übergeben. Ich finde den Fehler im Code einfach nicht: Das ist mal das Template (html): <table cellpadding=0 cellspacing=0 border=0 width="100%">
<tr>
<td width="75%"><font face="{font}" size=1><b>» Willkommen beim $master_board_name.</b>
blablabla.....</font></td>
<td width="25%" align="right" valign="top" nowrap>
<form method="post" action="action.php?action=login" name="login_form">
<font face="{font}" size=1>Login mit Username & Passwort:<br>
<input type="text" name="username" size="7" class="input">
<input type="password" name="kennwort" size="7" class="input">
<input type="submit" value="Login" class="input">
<input type="hidden" name="action" value="login">
<input type="hidden" name="boardid" value="$boardid">
$session_post
</font></form>
</td>
</tr>
</table>
Und hier die Auswerung (action.php): if($action=="login") {
if (!$username){echo "Kein Username übergeben!<br>";}
$kennwort = md5($kennwort);
$username = htmlspecialchars(trim($username));
$usercheck = checkUser($username,$kennwort);
if($usercheck==2) {
if(!$link) $ride = urldecode($url_jump);
else $ride = urldecode($link);
$user_id = getUserid($username);
$user_password = $kennwort;
session_register("user_id");
session_register("user_password");
setcookie("user_id", "$user_id", time()+(3600*24*365));
setcookie("user_password", "$user_password", time()+(3600*24*365));
eval ("\$output = \"".gettemplate("note1")."\";");
}
if($usercheck==0) eval ("\$output = \"".gettemplate("error1")."\";");
if($usercheck==1) eval ("\$output = \"".gettemplate("error2")."\";");
}
Kann mir da jemand helfen? Thx im vorraus EDIT: Sry für den grossen Code Das Template hab ich schon so verändert, dass "$action" bereits übergeben wird, aber dann schreit das Script natürlich, weil der Username und das Passwort fehlen Das "if (!$username){echo "Kein Username übergeben!<br>";}" stammt auch von mir, nur zu Testzwecken, falls sich jemand fragt was das dort verloren hat
Bearbeitet von jives am 28.03.2002, 00:05
|
jives
And the science gets done
|
Weiß denn niemad was? Ich bin draufgekommen, dass der Bug vom $session_post ausgelöst wird, aber ich hab keinen Schimmer warum. $session_post ist ein verstecktes Eingabefeld, das eine Session-ID enthält. Wenn ich das Ganze kurzerhand mal entferne geht alles, aber ich möchte nicht pfuschen, sondern den Bug fixen.
|
HP
Legend Moneymaker
|
frag beim support an.
|
noledge
CWNE #540
|
frag beim support an. rofl woltlab und support? für das gratisboard gibts keinen "richtigen" support, bei version 2 wirds vielleicht anders aussehn, da die ja imma gratis sein wird... mit solchen problem richtigen support bekommen wirds ned spielen, bugmeldung kannst machen, das wirds dann aber auch schon sein.
|
HP
Legend Moneymaker
|
tja, da merkt man halt warum man vb nimmt
|
jives
And the science gets done
|
vb ist mit Abstand das genialste Board, aber ich hab ka Geld Support bekommt man von anderen Membern, aber kaum vom Team. Die sind viel zu sehr mit WBB2 beschäftigt - ist ja kostenpflichtig. Naja... ab und zu erbarmt sich schon jemand, viellciht auch bei meinem perfekten Bugreport.
|