pragmaMx Support Forum

pragmaMx => Individuelle Anpassungen => Thema gestartet von: jondan in 14 Juli 2004, 00:54:33

Titel: Username bei Neuanmeldung automatisch vergeben...
Beitrag von: jondan in 14 Juli 2004, 00:54:33
Hallo Leute,

ich habe folgende, vielleicht etwas ungewöhnliche Frage: ist es möglich, jedem User, der sich neu registriert, automatisch einen Usernamen zu vergeben. Gedacht habe ich dabei an NUmmern in aufsteigender Reihenfolge.
Ausserdem läuft die Registration  nur über die Freischaltung durch einen Admin.

Vielen Dank schonmal für eure Hilfe!

Gruß,
jondan
Titel: Re: Username bei Neuanmeldung automatisch vergeben...
Beitrag von: Andi in 26 Juli 2004, 20:46:11
Hi jondan :)

machbar ist das....
Man könnte einfach die User-ID gleichzeitig auch als Username eintragen. Wobei ich nicht ganz den Sinn dahinter verstehe.

Die Adminfreischaltung kannst du ja im vkpMx bereits über das Adminmenü aktivieren.
Titel: Re: Username bei Neuanmeldung automatisch vergeben...
Beitrag von: jondan in 29 Juli 2004, 04:51:39
Hi Tora,

kannst du mir noch verraten, wie das machbar ist?  :)
Der SInn dahinter ist der, dass meine Kumpels ne Community aufziehen wollen, wo jeder, der sich anmeldet einfach ne Nummer bekommt, statt sich nen Usernamen auszusuchen.

Wär supi, wenn du mir noch helfen könntest! :)

Dankeschöön!

Gruß,
andy
Titel: Re: Username bei Neuanmeldung automatisch vergeben...
Beitrag von: Andi in 29 Juli 2004, 15:56:50
Hehehe, das namenlose internet hält Einzug....

Oki, müsste über die mx_userfunctions_option.php zu machen sein. Ich schau mir das mal an ;)
Titel: Re: Username bei Neuanmeldung automatisch vergeben...
Beitrag von: jondan in 30 Juli 2004, 04:21:38
supi, danke dir! :D
Titel: Re: Username bei Neuanmeldung automatisch vergeben...
Beitrag von: jondan in 12 August 2004, 03:24:08
Huhu Tora,

hast schonmal gekuckt wegen der automatischen Namensvergabe?
WIll nicht stressen, bräuchte es aber dringen! :)

Vielen Dank schonmal!

Grüsse,
Andy
Titel: Re: Username bei Neuanmeldung automatisch vergeben...
Beitrag von: Andi in 12 August 2004, 09:19:59
Hi Andy :)

sorry, vergessen....

Der Weg über die mx_userfunctions_options.php ist doch etwas zu aufwändig, es geht einfacher:

Im Modul User_Registration/index.php in der Funktion new_user() Zeile ~75-76 steht folgendes:

."<tr valign=\"top\"><td width=\"20%\" bgcolor=\"$bgcolor2\"><b>"._NICKNAME.":</b></td><td colspan=\"3\" bgcolor=\"$bgcolor3\">\n"
."<input type=\"text\" name=\"uname\" size=\"50\" maxlength=\"25\" value=\"".((isset($oldvals['uname'])) ? mxPrepareToDisplay($oldvals['uname']) : "")."\">  <font class=\"tiny\">"._REQUIRED."</font></td></tr>\n";


Diese beiden Zeilen kommentierst du mit einem # davor aus.
Und schreibst als zusätzliche Zeile folgendes darunter:

."<input type=\"hidden\" name=\"uname\" value=\"**********\">";


In der Funktion confirmNewUser() kommentierst du die Zeile ~172 ebenfalls mit einem # davor aus:

#echo "<tr valign=\"top\"><td width=\"20%\" bgcolor=\"$bgcolor2\"><b>"._NICKNAME.":</b></td><td bgcolor=\"$bgcolor3\"><b>".$pvs['uname']."</b></td></tr>\n";


In der Funktion finishNewUser() Zeile ~256 befindet sich folgendes:

extract($sqlvars);


Direkt darunter schreibst du folgende 2 zusätzlichen Zeilen:

$list($xuid) = sql_fetch_row(sql_query("SELECT max(uid) from ${user_prefix}_users"));
$uname = intval($xuid+20);


In der gleichen Funktion finishNewUser() Zeile ~309 befindet sich folgendes:
$viewvars['uid'] = sql_insert_id();

Direkt darunter schreibst du als zusätzliche Zeile:

sql_query("UPDATE ${user_prefix}_users SET uname='".$viewvars['uid']."' WHERE uid='".$viewvars['uid']."'");



Im Eingabeformular wird dadurch der Nickname nicht mehr angezeigt, sondern durch ein verstecktes Feld mit dem Wert '*********' ersetzt.
Dieser Wert wird dann auf der bestätigungsseite auch als Nickname angezeigt.
In der Usertabelle wird beim Einfügen als Benutzername die höchste bereits vorhandene User-ID + 20 gespeichert.
Nach dem Einfügen wird dann der Benutzername durch die eigentliche Benutzer-ID ersetzt.

Fertig ;)

Titel: Re: Username bei Neuanmeldung automatisch vergeben...
Beitrag von: jondan in 05 Oktober 2004, 23:23:32
hi tora,

so, alles hat sich verschoben, wie es leider viel zu häufig passiert.
na, auf jeden fall bin ich erst jetzt dazu gekommen, obwohl es anfangs ja ach so eilig war.
leider bekomme ich so einen parse-error in folgender zeile:

$list($xuid) = sql_fetch_row(sql_query("SELECT max(uid) from ${user_prefix}_users"));

ich hoffe, es ist nicht sehr unverschämt, dich nochmal um hilfe zu bitten!  :-[

vielen dank!
Titel: Re: Username bei Neuanmeldung automatisch vergeben...
Beitrag von: Andi in 07 Oktober 2004, 15:07:55
Hi Jondan :)

die Zeile selbst scheint aber in Ordnung zu sein.
Wie lautet die Fehlermeldung genau?

Evtl. poste hier mal die paar Zeilen davor und danach...