Dupechecker
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?
$rows = mysql_num_rows($dupe);
$dupe = mysql_query("SELECT * FROM users WHERE username='$username' IN ( SELECT r_ip FROM users GROUP BY r_ip HAVING COUNT(1) > 1 )");
if($rows > 1) {
echo "<tr><td><b>$dupe->username</a></td> <td>$dupe->r_ip</td><td><a href= '../ban.php?banwho=$dupe->username'>Ban</a></td></td></tr>";
}
}
?>
$rows = mysql_num_rows($dupe);
$dupe = mysql_query("SELECT * FROM users WHERE username='$username' IN ( SELECT r_ip FROM users GROUP BY r_ip HAVING COUNT(1) > 1 )");
if($rows > 1) {
echo "<tr><td><b>$dupe->username</a></td> <td>$dupe->r_ip</td><td><a href= '../ban.php?banwho=$dupe->username'>Ban</a></td></td></tr>";
}
}
?>
Ik wil graag als uitkomst
[NAAM] [IP] [BANN]
Dat de dupes/dubbele IP's zich zo vertonen... HELP AUB :)
group by aan de gang
JIj moet met Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?
$rows = mysql_num_rows($dupe);
$dupe = mysql_query("SELECT * FROM users GROUP BY username, r_ip HAVING COUNT(*) > 1 )");
if($rows > 1) {
echo "<tr><td><b>$dupe->username</a></td> <td>$dupe->r_ip</td><td><a href= '../ban.php?banwho=$dupe->username'>Ban</a></td></td></tr>";
}
}
?>
$rows = mysql_num_rows($dupe);
$dupe = mysql_query("SELECT * FROM users GROUP BY username, r_ip HAVING COUNT(*) > 1 )");
if($rows > 1) {
echo "<tr><td><b>$dupe->username</a></td> <td>$dupe->r_ip</td><td><a href= '../ban.php?banwho=$dupe->username'>Ban</a></td></td></tr>";
}
}
?>
Btw heb niet naar de query gekeken
zoiets anders:
Je code (buite je query lijkt nergens op:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
$qIp = "SELECT * FROM users GROUP BY username, r_ip HAVING COUNT(*) > 1 )";
$rIp = mysql_query($rIp);
if($rIp)
{
while($aRows = mysql_fetch_row($rIp))
{
echo '<tr><td><b>'.$aRows['username'].'</a></td> <td>'.$aRows['ip'].'</td><td><a href= "../ban.php?banwho='.$aRows['username'].'">Ban</a></td></td></tr>';
}
}
else
{
echo mysql_error().' in '.$qIp;
}
?>
$qIp = "SELECT * FROM users GROUP BY username, r_ip HAVING COUNT(*) > 1 )";
$rIp = mysql_query($rIp);
if($rIp)
{
while($aRows = mysql_fetch_row($rIp))
{
echo '<tr><td><b>'.$aRows['username'].'</a></td> <td>'.$aRows['ip'].'</td><td><a href= "../ban.php?banwho='.$aRows['username'].'">Ban</a></td></td></tr>';
}
}
else
{
echo mysql_error().' in '.$qIp;
}
?>
Edit:
Tips:
Doe wat aan foutafhandeling
Lees eens de basis tutorials door op deze website
Dit script is misschien iets te hoog gegrepen
Doe aan logische naamgeving
Doe aan netjes programeren
Tips:
Doe wat aan foutafhandeling
Lees eens de basis tutorials door op deze website
Dit script is misschien iets te hoog gegrepen
Doe aan logische naamgeving
Doe aan netjes programeren
Gewijzigd op 01/01/1970 01:00:00 door Citroen Anoniem Graag
Hmm ok ziet er idd wat overzichterlijker uit zo, maar nu werkt het helemaal niet meer krijg nu gewoon een wit scherm
Query was empty in SELECT * FROM users GROUP BY r_ip HAVING COUNT(*) > 1
Hoe ik te werk ga is met een begin- en einddatum/tijd. Vervolgens heb je een simpele query waar je groepeerd op het ipadres en vervolgens de MAX() functie gebruikt om alleen de bans op te halen die nog in de toekomst liggen.
Bedankt voor de reactie, maar eerlijk gezegt snap ik het niet helemaal
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
$qIp = "SELECT * FROM users GROUP BY username, r_ip HAVING COUNT(*) > 1 )";
$rIp = mysql_query($qIp);
if($rIp)
{
while($aRows = mysql_fetch_row($rIp))
{
echo '<tr><td><b>'.$aRows['username'].'</a></td> <td>'.$aRows['ip'].'</td><td><a href= "../ban.php?banwho='.$aRows['username'].'">Ban</a></td></td></tr>';
}
}
else
{
echo mysql_error().' in '.$qIp;
}
?>
$qIp = "SELECT * FROM users GROUP BY username, r_ip HAVING COUNT(*) > 1 )";
$rIp = mysql_query($qIp);
if($rIp)
{
while($aRows = mysql_fetch_row($rIp))
{
echo '<tr><td><b>'.$aRows['username'].'</a></td> <td>'.$aRows['ip'].'</td><td><a href= "../ban.php?banwho='.$aRows['username'].'">Ban</a></td></td></tr>';
}
}
else
{
echo mysql_error().' in '.$qIp;
}
?>
Er zat een type fout op de derde regel, probeer nu nog eens
Hij geeft inderdaad geen foutmelding meer, maar hij geeft ook niet de "dupes/dubbele r_ip's" weer
Fréek schreef op 03.06.2008 23:08:
Volgens mij heb je hier nog niks aan, ik ga er vanuit dat de username uniek is dus waarom zou je ze groupen?, ik denk dat er nog een relatie tussen users en group moet
edit:
Zie dat het niet 2 tabellen zijn,.. sorry zal volgende keer beter lezen :)
Gewijzigd op 01/01/1970 01:00:00 door Willz
Zelfde als ervoor geen foutmelding en ook geen dupes
GROUP BY username, r_ip
HAVING COUNT(username) > 1
ik ga ervanuit dat username uniek is
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
$qIp = "SELECT DISTINCT username, r_ip FROM users
GROUP BY username, r_ip
HAVING COUNT(username) > 1 ";
$rIp = mysql_query($qIp);
if($rIp)
{
$aRows = mysql_fetch_row($qIp);
echo '<pre>'.print_r($aRows, true).'</pre>';
}
else
{
echo mysql_error().' in '.$qIp;
}
?>
$qIp = "SELECT DISTINCT username, r_ip FROM users
GROUP BY username, r_ip
HAVING COUNT(username) > 1 ";
$rIp = mysql_query($qIp);
if($rIp)
{
$aRows = mysql_fetch_row($qIp);
echo '<pre>'.print_r($aRows, true).'</pre>';
}
else
{
echo mysql_error().' in '.$qIp;
}
?>
Edit:
Query van persoon bovenmij toegevoegd
Give it a try again
Gewijzigd op 01/01/1970 01:00:00 door Citroen Anoniem Graag
Ja klopt username is uniek ik heb je query geprobeert maar blijft nog steeds hetzelfde
Blijft nog steeds hetzelfde en btw je hebt steeds een syntax error in regel 2 :) je hebt een overbodige )
anders doe eens
SELECT DISTINCT(username) from users GROUP BY username HAVING COUNT(username) > 1
Als dat geen rijen geeft zijn ze er echt niet
Dit zal in ieder geval enige output moeten hebben.
Ook met de edited tag werkt het niet
Ik zal volledige code plaatsen om misverstanden tegen te gaan:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
session_start();
include "../includes/datcon.php";
include "../includes/functions.php";
echo "$style";
logincheck();
$userlevl = mysql_query("SELECT userlevel FROM users WHERE username='$username'");
while($successa = mysql_fetch_row($userlevl)){
$userlevel = $successa[0];
}
if ($userlevel == 0){
echo "Error.";
}elseif ($userlevel > 0){
?>
session_start();
include "../includes/datcon.php";
include "../includes/functions.php";
echo "$style";
logincheck();
$userlevl = mysql_query("SELECT userlevel FROM users WHERE username='$username'");
while($successa = mysql_fetch_row($userlevl)){
$userlevel = $successa[0];
}
if ($userlevel == 0){
echo "Error.";
}elseif ($userlevel > 0){
?>
<html>
<link rel="stylesheet" href="../includes/in.css" type="text/css">
<center>
<table border=1 cellspacing=0 cellpadding=2 width=50% class=main bordercolor=black><tr>
<td colspan=3 align=center><font color='#FFFFFF'>Dupes</font></td></tr>
<div id="lt">
<td class=tableheading align=center width=33%>Username</td>
<td class=tableheading align=center width=33%>IP</td>
<td class=tableheading align=center width=33%>Ban</td>
</tr>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
$qIp = "SELECT DISTINCT username, r_ip FROM users GROUP BY username, r_ip HAVING COUNT(username) > 1 ";
$rIp = mysql_query($qIp);
if($rIp)
{
echo '<pre>'.print_r($aRows, true).'</pre>';
}
else
{
echo mysql_error().' in '.$qIp;
}
}
?>
$qIp = "SELECT DISTINCT username, r_ip FROM users GROUP BY username, r_ip HAVING COUNT(username) > 1 ";
$rIp = mysql_query($qIp);
if($rIp)
{
echo '<pre>'.print_r($aRows, true).'</pre>';
}
else
{
echo mysql_error().' in '.$qIp;
}
}
?>