Naamswijziging loopt fout bij dezelfde gebruikersnaam

Plaats reactie
Gebruikersavatar
BennyBernaer
Berichten: 416
Lid geworden op: 05 jan 2008, 17:02
Locatie: Antwerpen
Contacteer:

Naamswijziging loopt fout bij dezelfde gebruikersnaam

Bericht door BennyBernaer » 10 jul 2016, 19:25

  • Adres van je forum: http://www.zelfmoord-forum.nl/
    Event. modificaties op je forum: /
    Wanneer ontstond het probleem? Niet van toepassing
    phpBB versie: 3.1.9


    Heb je onlangs iets veranderd aan je forum? Neen
    Wat is het probleem?
Op een forum wat ik regelmatig mee technisch ondersteun hebben ze het volgende probleem:

Een lid genaamd "Angel" heeft een tijd geleden gevraagd om haar account te verwijderen.
Verwijdering ging goed en haar berichten zijn blijven staan onder (gastaccount Angel)

Nu enkele maanden later: Een nieuw lid registreert zich onder de naam Angel. Beheerders vragen om een ander gebruikersnaam te kiezen, omdat er onder een oud account Angel nog berichten te vinden zijn op het forum.

De naam van de nieuwe gebruiker wordt gewijzigd. Maar vanaf dan gaat er toch iets fout. Als het account van (het nieuwe lid) Angel wordt gewijzigd naar een andere gebruikersnaam, hebben de berichten van het oude verwijderde account van Angel ook deze nieuwe gebruikersnaam.

Hoe kan dit?

Gebruikersavatar
BennyBernaer
Berichten: 416
Lid geworden op: 05 jan 2008, 17:02
Locatie: Antwerpen
Contacteer:

Re: Naamswijziging loopt fout bij dezelfde gebruikersnaam

Bericht door BennyBernaer » 10 jul 2016, 20:47

Ik heb dit voor mezelf eens op twee andere fora getest,
en ook hier het zelfde probleem:


Bijvoorbeeld:

bennybernaer is lid van phpbb.nl (3.1) en vraagt om zijn account te verwijderen en berichten te behouden.
bennybernaer wordt door het beheer verwijderd.

Een nieuw lid registreert zich onder bennybernaer en activeert zijn account.
het beheer wijzigt zijn gebruikersnaam van het nieuwe lid (bennybernaer) en het gastaccount van het vroeger lid (bennybernaer) wordt eveneens mee gewijzigd.

Het lijkt me onwaarschijnlijk dat dit een normale functie is van phpBB?
(aangezien het vroeger lid verwijderd is)

Een bug????

Jim
Berichten: 3900
Lid geworden op: 21 feb 2007, 14:53
Locatie: Groningen
Contacteer:

Re: Naamswijziging loopt fout bij dezelfde gebruikersnaam

Bericht door Jim » 10 jul 2016, 23:16

Dat klinkt mij ook als een bug in de oren, zou je deze willen rapporteren in de Bug Tracker?

Volgens mij is het dit stukje code in includes/functions_user.php die het probleem veroorzaakt.

Code: Selecteer alles

function user_update_name($old_name, $new_name)
{
    global $config, $db, $cache, $phpbb_dispatcher;

    $update_ary = array(
        FORUMS_TABLE            => array('forum_last_poster_name'),
        MODERATOR_CACHE_TABLE    => array('username'),
        POSTS_TABLE                => array('post_username'),
        TOPICS_TABLE            => array('topic_first_poster_name', 'topic_last_poster_name'),
    );

    foreach ($update_ary as $table => $field_ary)
    {
        foreach ($field_ary as $field)
        {
            $sql = "UPDATE $table
                SET $field = '" . $db->sql_escape($new_name) . "'
                WHERE $field = '" . $db->sql_escape($old_name) . "'";
            $db->sql_query($sql);
        }
    }
Dit betekent o.a. dat in de phpbb_posts tabel bij het veranderen van de gebruikersnaam de oude gebruiker wordt geselecteerd op gebruikersnaam i.p.v. op user ID. Het zou beter zijn om eerst te checken of je het juiste user ID wel te pakken hebt, en dan pas deze queries toe te passen. Ik heb er zelf niet genoeg verstand van om dat zo voor je op te lossen, maar de ontwikkelaars op phpBB.com vast wel.
Jim Mossing Holsteyn - Beheerder
Documentatie | Algemene voorwaarden | Wiki

Heb je suggesties over het verbeteren van phpBB.nl of andere site-gerelateerde vragen? Stuur me een PB!

Gebruikersavatar
Paul
Beheerder
Beheerder
Berichten: 20316
Lid geworden op: 23 okt 2003, 11:38
Locatie: Utrecht
Contacteer:

Re: Naamswijziging loopt fout bij dezelfde gebruikersnaam

Bericht door Paul » 11 jul 2016, 07:30

Als een gebruiker verwijderd is, is het user_id weg, en kan er dus niet meer gecontroleerd worden of dit de oorspronkelijke gebruiker was, of de nieuwe. De username in de posts table is enkel gevuld wanneer het door een gast is gepost, wanneer een gebruiker verwijderd wordt, worden de posts op de gastgebruiker gezet.

Gebruikersavatar
BennyBernaer
Berichten: 416
Lid geworden op: 05 jan 2008, 17:02
Locatie: Antwerpen
Contacteer:

Re: Naamswijziging loopt fout bij dezelfde gebruikersnaam

Bericht door BennyBernaer » 11 jul 2016, 10:59

Paul schreef:Als een gebruiker verwijderd is, is het user_id weg, en kan er dus niet meer gecontroleerd worden of dit de oorspronkelijke gebruiker was, of de nieuwe. De username in de posts table is enkel gevuld wanneer het door een gast is gepost, wanneer een gebruiker verwijderd wordt, worden de posts op de gastgebruiker gezet.
Wat wil zeggen?
Is het nu een bug of niet?


Want dit is bijvoorbeeld een verwijderd lid:
Afbeelding


Als er in de toekomst iemand zich registreert onder dezelfde naam, en de persoon wijzigt zijn naam, is
het toch niet normaal dat eveneens het verwijderd lid zijn berichten onder deze (nieuwe naam nieuw lid) naam komen te staan????

Gebruikersavatar
Paul
Beheerder
Beheerder
Berichten: 20316
Lid geworden op: 23 okt 2003, 11:38
Locatie: Utrecht
Contacteer:

Re: Naamswijziging loopt fout bij dezelfde gebruikersnaam

Bericht door Paul » 11 jul 2016, 12:10

phpBB kan simpelweg niet meer weten of het dezelfde of een andere gebruiker is/was. Het is dus misschien niet wenselijk, maar de data is er niet meer (Want user verwijderd) en kan dus enkel een best guess gedaan worden.

Jim
Berichten: 3900
Lid geworden op: 21 feb 2007, 14:53
Locatie: Groningen
Contacteer:

Re: Naamswijziging loopt fout bij dezelfde gebruikersnaam

Bericht door Jim » 11 jul 2016, 12:20

Paul schreef: phpBB kan simpelweg niet meer weten of het dezelfde of een andere gebruiker is/was. Het is dus misschien niet wenselijk, maar de data is er niet meer (Want user verwijderd) en kan dus enkel een best guess gedaan worden.
Dan zou er gecheckt moeten worden of het user_id van de gebruiker niet het user_id van de gastgebruiker is, en alleen dan de query uitvoeren. Dat zou het probleem ook oplossen.

Je kan toch een "AND user_id != 1" of iets dergelijks toevoegen?
Dan zou het alleen de echte gebruikersnaam aanpassen en niet diegene die nu als gast staat.
Jim Mossing Holsteyn - Beheerder
Documentatie | Algemene voorwaarden | Wiki

Heb je suggesties over het verbeteren van phpBB.nl of andere site-gerelateerde vragen? Stuur me een PB!

Gebruikersavatar
BennyBernaer
Berichten: 416
Lid geworden op: 05 jan 2008, 17:02
Locatie: Antwerpen
Contacteer:

Re: Naamswijziging loopt fout bij dezelfde gebruikersnaam

Bericht door BennyBernaer » 23 jul 2016, 23:24

Is hier al een eventuele toekomstige oplossing voor?
Want het is eigenlijk wel een struikelblok voor phpBB

Gebruikersavatar
Paul
Beheerder
Beheerder
Berichten: 20316
Lid geworden op: 23 okt 2003, 11:38
Locatie: Utrecht
Contacteer:

Re: Naamswijziging loopt fout bij dezelfde gebruikersnaam

Bericht door Paul » 24 jul 2016, 10:32

Heb je het al als bug gerapporteerd in de bugtracker op phpBB.com?

Jim
Berichten: 3900
Lid geworden op: 21 feb 2007, 14:53
Locatie: Groningen
Contacteer:

Re: Naamswijziging loopt fout bij dezelfde gebruikersnaam

Bericht door Jim » 24 jul 2016, 12:58

Op verzoek van BennyBernaer heb ik de bug gerapporteerd in de Bug Tracker. ;)

Wat je ondertussen als tijdelijke oplossing voor je probleem kan doen is een paar SQL queries runnen die het probleem dat phpBB hier creëert herstelt. Verander de tekst "VERANDERDE GEBRUIKERSNAAM" naar de gebruikersnaam die je het nieuwe account uiteindelijk hebt gegeven (en hoe de oude posts er nu dus ook nog uitzien, die je wilt terugveranderen naar Angel). Verander wanneer nodig ook het prefix.

Maak zoals altijd eerst een goede back-up van je database voor het geval we elkaar toch verkeerd begrepen hebben of er om een andere reden iets misgaat!

Code: Selecteer alles

UPDATE phpbb_forums SET forum_last_poster_name = 'Angel' WHERE forum_last_poster_name = 'VERANDERDE GEBRUIKERSNAAM' AND forum_last_poster_id = '1';

UPDATE phpbb_posts SET post_username = 'Angel' WHERE post_username = 'VERANDERDE GEBRUIKERSNAAM' AND poster_id = '1';

UPDATE phpbb_topics SET topic_first_poster_name = 'Angel' WHERE topic_first_poster_name = 'VERANDERDE GEBRUIKERSNAAM' AND topic_poster = '1';

UPDATE phpbb_topics SET topic_last_poster_name = 'Angel' WHERE topic_last_poster_name = 'VERANDERDE GEBRUIKERSNAAM' AND topic_last_poster_id = '1'; 
Nog even ter verduidelijking, dit werkt ALLEEN als je de naamswijziging al hebt doorgevoerd en deze queries zorgen ervoor dat de gebruikersnaam van het verwijderde account terugverandert naar Angel.
Jim Mossing Holsteyn - Beheerder
Documentatie | Algemene voorwaarden | Wiki

Heb je suggesties over het verbeteren van phpBB.nl of andere site-gerelateerde vragen? Stuur me een PB!

Gebruikersavatar
BennyBernaer
Berichten: 416
Lid geworden op: 05 jan 2008, 17:02
Locatie: Antwerpen
Contacteer:

Re: Naamswijziging loopt fout bij dezelfde gebruikersnaam

Bericht door BennyBernaer » 24 jul 2016, 21:50

Bedankt voor het rapporteren!
Ik ga je SQL queries zo spoedig mogelijk uittesten.

Jim
Berichten: 3900
Lid geworden op: 21 feb 2007, 14:53
Locatie: Groningen
Contacteer:

Re: Naamswijziging loopt fout bij dezelfde gebruikersnaam

Bericht door Jim » 01 aug 2016, 09:32

Kleine update, een phpBB developer heeft een fix hiervoor ingediend. :)
Hij is nog niet gemerged en dus ook nog niet definitief, maar het laat in ieder geval voortgang zien.
Jim Mossing Holsteyn - Beheerder
Documentatie | Algemene voorwaarden | Wiki

Heb je suggesties over het verbeteren van phpBB.nl of andere site-gerelateerde vragen? Stuur me een PB!

Gebruikersavatar
BennyBernaer
Berichten: 416
Lid geworden op: 05 jan 2008, 17:02
Locatie: Antwerpen
Contacteer:

Re: Naamswijziging loopt fout bij dezelfde gebruikersnaam

Bericht door BennyBernaer » 01 aug 2016, 15:25

Dat is heel goed nieuws!
Ik hou het mee in de gaten. :)

Gebruikersavatar
BennyBernaer
Berichten: 416
Lid geworden op: 05 jan 2008, 17:02
Locatie: Antwerpen
Contacteer:

Re: Naamswijziging loopt fout bij dezelfde gebruikersnaam

Bericht door BennyBernaer » 17 aug 2016, 21:44


Jim
Berichten: 3900
Lid geworden op: 21 feb 2007, 14:53
Locatie: Groningen
Contacteer:

Re: Naamswijziging loopt fout bij dezelfde gebruikersnaam

Bericht door Jim » 18 aug 2016, 11:11

BennyBernaer schreef:Hier zou een fix voor zijn:

https://github.com/phpbb/phpbb/pull/4397/files
Klopt, die fix zit inderdaad verbonden aan de bug report die hierboven gelinked staat en gaat dus hoogstwaarschijnlijk mee in de volgende phpBB release.
Jim Mossing Holsteyn - Beheerder
Documentatie | Algemene voorwaarden | Wiki

Heb je suggesties over het verbeteren van phpBB.nl of andere site-gerelateerde vragen? Stuur me een PB!

Plaats reactie