Also mal Schritt für Schritt:
Eingegebener Name: "..."
Daraus wird beim absenden: \"...\"
Das wird in der usercp_register.php hier zur Variable $username:
Code: Alles auswählen
$strip_var_list = array('username' => 'username', 'email' => 'email', 'icq' => 'icq', 'aim' => 'aim', 'msn' => 'msn', 'yim' => 'yim', 'website' => 'website', 'location' => 'location', 'occupation' => 'occupation', 'interests' => 'interests');
$strip_var_list['confirm_code'] = 'confirm_code';
// Strip all tags from data ... may p**s some people off, bah, strip_tags is
// doing the job but can still break HTML output ... have no choice, have
// to use htmlspecialchars ... be prepared to be moaned at.
while( list($var, $param) = @each($strip_var_list) )
{
if ( !empty($HTTP_POST_VARS[$param]) )
{
$$var = trim(htmlspecialchars($HTTP_POST_VARS[$param]));
}
}
In $username steht dann das hier: \"...\"
Dann kommt das Teil in die Funktion validate_username() welche gleich am Anfang die Funktion phpbb_clean_username() bemüht. Diese sieht bekanntlich so aus:
Code: Alles auswählen
function phpbb_clean_username($username)
{
$username = substr(htmlspecialchars(str_replace("\'", "'", trim($username))), 0, 25);
$username = phpbb_rtrim($username, "\\");
$username = str_replace("'", "\'", $username);
return $username;
}
Da hier wieder htmlspecialchars() benutzt wird sieht die Variable dann so aus: \"...\"
Und darauf passt die if-Abfrage dann nicht mehr.
Das ist die Ursache. Ob das ein Problem ist: Keine Ahnung.

Das Profil-Problem betrifft die normale Suche z.B. nicht:
http://www.phpbb.de/search.php?search_author=%22...%22
Gruß Christian