• Login
  • Register
  • Zoek
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Filebase Entry
  • More Options

ICTscripters

Dé plek voor IT

Dé plek voor IT

Login

Geavanceerde opties
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Dé plek voor IT - ICTscripters
  2. Forum
  3. Scripting & programmeren
  4. PHP + SQL

Forum

  • Na 15 jaar terug van weggeweest: iCriminals.nl is terug (BETA)!

    Syntax 19 januari 2026 om 09:34
  • Developer Gezocht

    Mikevdk 10 januari 2026 om 18:57
  • Op zoek naar de legends

    Syntax 5 januari 2026 om 13:50
  • [FREE] WeFact Hosting module

    Jeroen.G 13 oktober 2025 om 14:09
  • Help testers nodig voor android app Urgent

    urgentotservices 26 september 2025 om 10:21
  • Versio vervanger

    Jeroen.G 25 augustus 2025 om 15:56
  • Afspraken systeem met planbeperking

    Lijno 1 augustus 2025 om 23:04
  • Partner Gezocht om meerdere NFT Collecties op Open Sea te Plaatsen

    NFT Art Designer 1 maart 2025 om 14:08

Marktplaats

  • 321 Nieuwe Domeinnamen December 2025

    shiga 1 januari 2026 om 10:26
  • Meerdere mafia game template te koop

    Syntax 26 december 2025 om 00:07
  • Van een pixelige afbeelding naar een strakke, moderne website

    Syntax 21 december 2025 om 17:05

Account vraagje

  • mafiasnextkill
  • 25 oktober 2017 om 18:07
  • mafiasnextkill
    MafiasNextKill | Who's your next kill!
    Ontvangen Reacties
    8
    Berichten
    134
    • 25 oktober 2017 om 18:07
    • #1

    Ik zit met een probleempje en ik kan even niet zo goed bedenken hoe ik dat moet doen. Weet iemand hoe ik leden kan laten zien op een pagina die meerdere accounts op 1 IP adres hebben?Dus dat ik dan een pagina heb met de namen, maar dan alleen van degene met dubbelaccounts en niet de leden die dat niet hebben?

    MaffiasNextKill | Who´s Your Next Kill !

    https://maffiasnextkill.nl/v3/register.php?refid=39 :thumbup:

    Maffia Plaform -

    Maffia4Gangsters | ben jij een echte maffiabaas?

    Crime Valley | The world of Crime and Corruption!

  • Guest, wil je besparen op je domeinnamen? (ad)
  • FangorN
    Professional
    Ontvangen Reacties
    196
    Articles
    2
    Berichten
    737
    • 25 oktober 2017 om 19:32
    • #2

    Simpele SQL-query? Moet je wel de IP-informatie hebben uiteraard:

    SQL
    SELECT ip, COUNT(ip) AS aantal
    FROM leden
    GROUP BY ip
    HAVING aantal > 1

    Ik ken de exacte tabel- en kolomnamen uiteraard niet, maar bovenstaande query dekt de lading wel lijkt mij.

    Ook zou je iets als GROUP_CONCAT(gebruikersnaam) kunnen doen, om gelijk de bijbehorende account- of gebruikersnamen weer te geven. En als je hostingprovider een soort controlepaneel heeft zit daar vaak ook iets bij als phpMyAdmin. En als je shell access hebt doe je het direct via de prompt :p.

  • mafiasnextkill
    MafiasNextKill | Who's your next kill!
    Ontvangen Reacties
    8
    Berichten
    134
    • 25 oktober 2017 om 19:59
    • #3

    Deze doet het niet, hij geeft nu 2 verschillende ip adressen aan, in plaats van dezelfde.

    MaffiasNextKill | Who´s Your Next Kill !

    https://maffiasnextkill.nl/v3/register.php?refid=39 :thumbup:

    Maffia Plaform -

    Maffia4Gangsters | ben jij een echte maffiabaas?

    Crime Valley | The world of Crime and Corruption!

  • Thisguyisgone
    Elite members
    Ontvangen Reacties
    197
    Berichten
    7.880
    • 26 oktober 2017 om 03:03
    • #4

    met een where van de ip..

  • mafiasnextkill
    MafiasNextKill | Who's your next kill!
    Ontvangen Reacties
    8
    Berichten
    134
    • 26 oktober 2017 om 09:16
    • #5

    En hoe moet ik dat doen dan? SELECT ip From speler Where ???

    MaffiasNextKill | Who´s Your Next Kill !

    https://maffiasnextkill.nl/v3/register.php?refid=39 :thumbup:

    Maffia Plaform -

    Maffia4Gangsters | ben jij een echte maffiabaas?

    Crime Valley | The world of Crime and Corruption!

  • Thisguyisgone
    Elite members
    Ontvangen Reacties
    197
    Berichten
    7.880
    • 26 oktober 2017 om 14:04
    • #6

    SELECT ip FROM users where ip = data ip

    Dan tel je of er meer zijn dan 2..

  • FangorN
    Professional
    Ontvangen Reacties
    196
    Articles
    2
    Berichten
    737
    • 26 oktober 2017 om 14:55
    • #7

    Met mijn query vraag je de IP's op via welke meerdere accounts (meer dan één) geregistreerd staan. Vervolgens kun je daarbij de concrete accounts zoeken, of, zoals aangegeven, iets met GROUP_CONCAT() doen.

    Citaat van mafiasnextkill

    Deze doet het niet, hij geeft nu 2 verschillende ip adressen aan, in plaats van dezelfde.

    Dit houdt in dat beide IP's meerdere accounts herbergen. De "aantal" kolom geeft aan hoeveel accounts onder elk IP-adres geregistreerd staan.

    Als dit aantal laag is wil dat in principe niet veel zeggen. Denk aan een huishouden of een studentenhuis, naar buiten toe hebben vaak alle, of in ieder geval meerdere, computers eenzelfde IP-adres omdat ze via hetzelfde netwerk aan het internet hangen.

  • mafiasnextkill
    MafiasNextKill | Who's your next kill!
    Ontvangen Reacties
    8
    Berichten
    134
    • 26 oktober 2017 om 17:45
    • #8
    Citaat van Ferhat.Remory

    SELECT ip FROM users where ip = data ip

    Dan tel je of er meer zijn dan 2..

    Met data ip weergeeft die alleen het ip van mijn eigen account en niet de andere accounts die ook een dubbelaccount hebben.

    MaffiasNextKill | Who´s Your Next Kill !

    https://maffiasnextkill.nl/v3/register.php?refid=39 :thumbup:

    Maffia Plaform -

    Maffia4Gangsters | ben jij een echte maffiabaas?

    Crime Valley | The world of Crime and Corruption!

  • mafiasnextkill
    MafiasNextKill | Who's your next kill!
    Ontvangen Reacties
    8
    Berichten
    134
    • 26 oktober 2017 om 17:48
    • #9
    Citaat van FangorN

    Met mijn query vraag je de IP's op via welke meerdere accounts (meer dan één) geregistreerd staan. Vervolgens kun je daarbij de concrete accounts zoeken, of, zoals aangegeven, iets met GROUP_CONCAT() doen.

    Dit houdt in dat beide IP's meerdere accounts herbergen. De "aantal" kolom geeft aan hoeveel accounts onder elk IP-adres geregistreerd staan.
    Als dit aantal laag is wil dat in principe niet veel zeggen. Denk aan een huishouden of een studentenhuis, naar buiten toe hebben vaak alle, of in ieder geval meerdere, computers eenzelfde IP-adres omdat ze via hetzelfde netwerk aan het internet hangen.

    Deze deed het helaas niet, misschien dat ik iets fout deed?

    "SELECT `rank`,`ip`,`username` FROM `leden` WHERE `username` != 'Admin' AND `dead` = '0' ORDER BY `ip` DESC LIMIT 0,30");

    MaffiasNextKill | Who´s Your Next Kill !

    https://maffiasnextkill.nl/v3/register.php?refid=39 :thumbup:

    Maffia Plaform -

    Maffia4Gangsters | ben jij een echte maffiabaas?

    Crime Valley | The world of Crime and Corruption!

  • Thisguyisgone
    Elite members
    Ontvangen Reacties
    197
    Berichten
    7.880
    • 26 oktober 2017 om 18:04
    • #10

    in sommige scripts.vind je dubbel account scripts.

  • FangorN
    Professional
    Ontvangen Reacties
    196
    Articles
    2
    Berichten
    737
    • 26 oktober 2017 om 19:26
    • #11

    Bekijk mijn query nogmaals. Als je het principe begrijpt kun je dit omschrijven naar wat jij wilt hebben.

    SQL
    SELECT ip, COUNT(ip) AS aantal
    FROM leden

    De eerste regel bevat de kolomnamen waarin je geinteresseerd bent en een COUNT() op de IP-kolom, dit is het argument waar je op gaat groeperen. Deze sla je op als de (alias)kolom "aantal" om hier later makkelijker aan te refereren.

    De tweede regel bevat de betrokken tabel(len).

    SQL
    GROUP BY ip

    Het argument waarop je de resultaatrijen samenvoegt. Dit doe je op IP-adres.

    Code
    HAVING aantal > 1

    Hiermee geef je aan dat je alleen in de IP-adressen geinteresseerd bent die meer dan één keer voorkomen in je leden-tabel. Dit is dus een soort van filter op je resultaatset. Alle accounts met een uniek IP vallen hierdoor af uit de resultaten. Wat je overhoudt is een lijst van IP-adressen waaronder meerdere accounts (ten minste twee) geregistreerd staan.

    Omdat je groepeert op IP wordt het lastig om meer informatie in een enkele resultaatkolom te proppen omdat de resultaten al worden samengevoegd maar je zou hier bijvoorbeeld de waarden van de gebruikersnamen in op kunnen nemen door middel van GROUP_CONCAT().

    Toegepast op de informatie hierboven wordt dit dus zoiets als:

    SQL
    SELECT ip, GROUP_CONCAT(username), COUNT(ip) AS aantal
    FROM leden
    GROUP BY ip
    HAVING aantal > 1

    Wil je vervolgens meer account informatie ophoesten kun je dit het beste met een aparte query doen. Ik ging er in eerste instantie vanuit dat je vlug een overzicht wilde van mensen die zich mogelijk meerdere keren hadden geregistreerd.

  • mafiasnextkill
    MafiasNextKill | Who's your next kill!
    Ontvangen Reacties
    8
    Berichten
    134
    • 26 oktober 2017 om 21:03
    • #12

    Het hoeft ook niet perse meer info te zijn als de naam en het ip er maar op staan. Maar met jouw query krijg ik echter maar 2 accounts te zien met verschillende ip adressen terwijl er meer accounts zijn en meerdere accounts op 1 ip zijn geregistreerd. Hij werkt nog steeds niet. Het enige wat erop moet staat is de naam en het ip adres, de rest is allemaal bijzaak en hoeft eigenlijk niet als het maar correct werkt.

    MaffiasNextKill | Who´s Your Next Kill !

    https://maffiasnextkill.nl/v3/register.php?refid=39 :thumbup:

    Maffia Plaform -

    Maffia4Gangsters | ben jij een echte maffiabaas?

    Crime Valley | The world of Crime and Corruption!

  • FangorN
    Professional
    Ontvangen Reacties
    196
    Articles
    2
    Berichten
    737
    • 26 oktober 2017 om 22:48
    • #13

    Realiseer je je dat elk IP-adres maar één keer voorkomt in de resultaatset omdat je groepeert op IP?

    Weet niet precies wat er misgaat maar als ik dit test werkt dit prima.

    SQL
    CREATE TABLE leden (
        ip VARCHAR(255) NOT NULL,
        username  VARCHAR(255) NOT NULL
    ) ENGINE=InnoDb DEFAULT CHARSET=utf8;
    
    
    INSERT INTO leden VALUES
    ('127.0.0.1', 'Henk'),
    ('127.0.0.1', 'Piet'),
    ('127.0.0.1', 'Klaas'),
    ('127.0.0.2', 'Harry'),
    ('127.0.0.2', 'Hennie'),
    ('127.0.0.3', 'Gonnie');
    Toon Meer

    De volgende query:

    SQL
    SELECT ip, GROUP_CONCAT(username), COUNT(ip) AS aantal
    FROM leden
    GROUP BY ip
    HAVING aantal > 1


    Levert precies wat ik verwacht:

    Bash
    ip		GROUP_CONCAT(username)		aantal
    127.0.0.1	Henk,Piet,Klaas			3
    127.0.0.2	Harry,Hennie			2
  • mafiasnextkill
    MafiasNextKill | Who's your next kill!
    Ontvangen Reacties
    8
    Berichten
    134
    • 27 oktober 2017 om 14:09
    • #14
    Citaat van FangorN

    Realiseer je je dat elk IP-adres maar één keer voorkomt in de resultaatset omdat je groepeert op IP?

    Weet niet precies wat er misgaat maar als ik dit test werkt dit prima.

    SQL
    CREATE TABLE leden (
        ip VARCHAR(255) NOT NULL,
        username  VARCHAR(255) NOT NULL
    ) ENGINE=InnoDb DEFAULT CHARSET=utf8;
    
    
    INSERT INTO leden VALUES
    ('127.0.0.1', 'Henk'),
    ('127.0.0.1', 'Piet'),
    ('127.0.0.1', 'Klaas'),
    ('127.0.0.2', 'Harry'),
    ('127.0.0.2', 'Hennie'),
    ('127.0.0.3', 'Gonnie');
    Toon Meer

    De volgende query:

    SQL
    SELECT ip, GROUP_CONCAT(username), COUNT(ip) AS aantal
    FROM leden
    GROUP BY ip
    HAVING aantal > 1

    Levert precies wat ik verwacht:

    Bash
    ip		GROUP_CONCAT(username)		aantal
    127.0.0.1	Henk,Piet,Klaas			3
    127.0.0.2	Harry,Hennie			2

    Ik snap het nu inderdaad wel. Maar hoe krijg ik dan de juiste namen bij het IP adres? Want nu krijg ik maar één naam daar te staan en niet 2 of 3 zoals jij het hebt. Maar dan heb ik wel SELECT naam,ip gedaan om die naam daar zichtbaar te maken. Hoe doe jij dat dan, want anders heb ik daar geen naam staan?

    MaffiasNextKill | Who´s Your Next Kill !

    https://maffiasnextkill.nl/v3/register.php?refid=39 :thumbup:

    Maffia Plaform -

    Maffia4Gangsters | ben jij een echte maffiabaas?

    Crime Valley | The world of Crime and Corruption!

  • FangorN
    Professional
    Ontvangen Reacties
    196
    Articles
    2
    Berichten
    737
    • 27 oktober 2017 om 20:16
    • #15

    Dat is het "nadeel" van het groeperen: je groepeert meerdere account-records op basis van IP. Het is dan redelijk willekeurig welke (enkele) naam wordt getoond in een resultaatrij. Daarom gebruik je GROUP_CONCAT(). Deze trekt de namen van meerdere kolommen samen in één rij.

    Zoals ik al aangaf, een alternatief is dat je, uitgaande van die IP's een nieuwe query (of subquery) bakt waarin je die records dus wel apart (in meerdere rijen) opvraagt.

    Maar dan nog, als je deze informatie vervolgens toont op een scherm dan zul je deze IP's toch op een of andere manier "grafisch" moeten groeperen, door tijdens het uitlezen bij te houden welke accounts -op basis van IP- bij elkaar horen.

    Misschien heb je iets aan het volgende, voortbordurend op het vorige voorbeeld:

    PHP
    <?php
    // Voor debugging.
    error_reporting(E_ALL);
    ini_set('display_errors', 'stdout');
    
    
    // Voor output.
    header('Content-Type: text/html; charset=UTF-8');
    
    
    // Maak database connectie.
    $db = new mysqli('<host_of_ip>', '<username>', '<password>', '<database>');
    $db->set_charset('utf8');
    
    
    // We maken hier gebruik van een subquery die bepaalt welke IP's meerdere keren voorkomen.
    // Vervolgens vragen we alle relevante account-informatie op met die IP's.
    $res = $db->query(
        'SELECT l.ip, l.username
        FROM leden l
        WHERE l.ip IN (
            SELECT ip
            FROM leden
            GROUP BY ip
            HAVING COUNT(ip) > 1
        )
        ORDER BY l.ip, l.username'
    );
    
    
    $currentIp = '';
    while ($row = $res->fetch_assoc()) {
        // Wanneer het IP verandert tijdens het uitlezen van accounts met eenzelfde IP, toon nieuw kopje.
        if ($row['ip'] != $currentIp) {
            // IP is veranderd sinds vorige iteratie, sla deze op.
            $currentIp = $row['ip'];
            ?><h2><?php echo $row['ip'] ?></h2><?php
        }
        // Toon informatie van account, dit kun je uiteraard nog uitbreiden met meer informatie.
        ?><p><?php echo $row['username'] ?></p><?php
    }
    // Geef resultaat vrij.
    $res->free();
    ?>
    Toon Meer

    En als dit allemaal abracadabra is, dan loont het misschien de moeite om je ofwel wat meer te verdiepen in de materie, of een programmeur in te huren/aan te nemen.

  • mafiasnextkill
    MafiasNextKill | Who's your next kill!
    Ontvangen Reacties
    8
    Berichten
    134
    • 27 oktober 2017 om 20:51
    • #16
    Citaat van FangorN

    Dat is het "nadeel" van het groeperen: je groepeert meerdere account-records op basis van IP. Het is dan redelijk willekeurig welke (enkele) naam wordt getoond in een resultaatrij. Daarom gebruik je GROUP_CONCAT(). Deze trekt de namen van meerdere kolommen samen in één rij.

    Zoals ik al aangaf, een alternatief is dat je, uitgaande van die IP's een nieuwe query (of subquery) bakt waarin je die records dus wel apart (in meerdere rijen) opvraagt.

    Maar dan nog, als je deze informatie vervolgens toont op een scherm dan zul je deze IP's toch op een of andere manier "grafisch" moeten groeperen, door tijdens het uitlezen bij te houden welke accounts -op basis van IP- bij elkaar horen.

    Misschien heb je iets aan het volgende, voortbordurend op het vorige voorbeeld:

    PHP
    <?php
    // Voor debugging.
    error_reporting(E_ALL);
    ini_set('display_errors', 'stdout');
    
    
    // Voor output.
    header('Content-Type: text/html; charset=UTF-8');
    
    
    // Maak database connectie.
    $db = new mysqli('<host_of_ip>', '<username>', '<password>', '<database>');
    $db->set_charset('utf8');
    
    
    // We maken hier gebruik van een subquery die bepaalt welke IP's meerdere keren voorkomen.
    // Vervolgens vragen we alle relevante account-informatie op met die IP's.
    $res = $db->query(
        'SELECT l.ip, l.username
        FROM leden l
        WHERE l.ip IN (
            SELECT ip
            FROM leden
            GROUP BY ip
            HAVING COUNT(ip) > 1
        )
        ORDER BY l.ip, l.username'
    );
    
    
    $currentIp = '';
    while ($row = $res->fetch_assoc()) {
        // Wanneer het IP verandert tijdens het uitlezen van accounts met eenzelfde IP, toon nieuw kopje.
        if ($row['ip'] != $currentIp) {
            // IP is veranderd sinds vorige iteratie, sla deze op.
            $currentIp = $row['ip'];
            ?><h2><?php echo $row['ip'] ?></h2><?php
        }
        // Toon informatie van account, dit kun je uiteraard nog uitbreiden met meer informatie.
        ?><p><?php echo $row['username'] ?></p><?php
    }
    // Geef resultaat vrij.
    $res->free();
    ?>
    Toon Meer

    En als dit allemaal abracadabra is, dan loont het misschien de moeite om je ofwel wat meer te verdiepen in de materie, of een programmeur in te huren/aan te nemen.

    Het is toch gelukt. GROUP_CONCAT(username) moest zijn GROUP_CONCAT(username) AS gebruikersnaam. Net zoals die IP. Evengoed bedankt voor de hulp. Hier kan een slotje op.

    MaffiasNextKill | Who´s Your Next Kill !

    https://maffiasnextkill.nl/v3/register.php?refid=39 :thumbup:

    Maffia Plaform -

    Maffia4Gangsters | ben jij een echte maffiabaas?

    Crime Valley | The world of Crime and Corruption!

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!

Maak een account aan Login

ICT Nieuws

  • Fijne feestdagen

    tcbhome 28 december 2025 om 13:55
  • Kritieke update voor Really Simple Security-plug-in

    K.Rens 16 november 2024 om 16:12
  • ING Nederland streeft naar ondersteuning van Google Pay tegen eind februari

    K.Rens 2 november 2024 om 16:09

Blogs

  • Functioneel ontwerp

    Dees 28 december 2014 om 12:38
  • Access Control List implementatie in PHP/MySQL - deel 1/2

    FangorN 28 december 2018 om 12:35
  • Access Control List implementatie in PHP/MySQL - deel 2/2

    FangorN 29 december 2018 om 12:37
  1. Marktplaats
  2. Design
  3. Voorwaarden
  4. Ons team
  5. Leden
  6. Geschiedenis
  7. Regels
  8. Links
  9. Privacy Policy
ICTscripters ©2005 - 2026 , goedkope hosting door DiMoWeb.com, BE0558.915.582
Sponsors: Beste kattenhotel provincie Antwerpen | Beste Zetes eid kaartlezer webshop
Style: Nexus by cls-design
Stylename
Nexus
Manufacturer
cls-design
Licence
Commercial styles
Help
Supportforum
Visit cls-design