Ik wil dat een query dubbele ipadressen uit de database haalt.
Als er bij 2 gebruikers hetzelfde ipadres staat, dat dat wordt weergegeven op mijn admin pagina.
Is dit mogelijk? Zoja weet iemand hoe?
1.692 views
<? $query = mysql_query("SELECT gebruikersnaam,ip, count(ip) AS COUNTED FROM users GROUP BY ip HAVING COUNTED > 1 ORDER BY COUNTED");
while($row = mysql_fetch_array($query)){
echo $row['gebruikersnaam'].'<br>';
}
?>
<?php
// Standard variables:
$TriggerError = 'Houston, we hava a problem!';
// Standard database connection:
require_once('mysqli_connect.inc.php');
// Define the database variables:
$Conn = mysqli_connect(MYSQLI_SERVER, MYSQLI_USERNAME, MYSQLI_PASSWORD, MYSQLI_DATABASENAME) or trigger_error($TriggerError);
// Select multiply items out of a database:
$SelectIP = mysqli_query($Conn, "SELECT username,ip, count(ip) AS COUNTED FROM accounts GROUP BY ip HAVING COUNTED > 1 ORDER BY COUNTED") or trigger_error($TriggerError);
// Kijken hoeveel rijen er zijn:
if(mysqli_num_rows($SelectIP) >= 1) {
// Meerdere gevonden, dus van 1 de gegevens splitsen en de andere selecteren:
while($Row = mysqli_fetch_array($SelectIP)) {
$SelectMultiply = mysqli_query($Conn, "SELECT username,ip FROM accounts WHERE ip = '".$Row['ip']."'") or trigger_error($TriggerError); }
// Nu de andere met een foreach lus tonen:
foreach($SelectMultiply as $Seperated) {
while($Row = mysqli_fetch_array($SelectMultiply)) {
echo $Row['username'].'<br />';
echo $Row['ip'].'<br />'; } } }
?>
SELECT gebruikersnaam,ip
FROM users a
WHERE EXISTS (
SELECT count(b.ip) as counted
FROM users b
WHERE a.ip = b.ip
group by b.ip
having counted > 1)
;