Woltlab-Board Bug - Hilfe pls

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/woltlab-board_bug_hilfe_pls_29797/page_1 - zur Vollversion wechseln!


jives schrieb am 27.03.2002 um 23:56

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 :D

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):

Code: PHP
<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):
Code: 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 :D
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 ;)


jives schrieb am 28.03.2002 um 12:04

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 schrieb am 28.03.2002 um 12:08

frag beim support an.


noledge schrieb am 28.03.2002 um 12:17

Zitat von h4p3
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 schrieb am 28.03.2002 um 12:27

tja, da merkt man halt warum man vb nimmt ;)


jives schrieb am 28.03.2002 um 12:55

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 :D Bugreport.




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026