Unfortunately my osTicket system had 1339 users and I found that 711 users didn't post any tickets (99% of are users left after deleting their spamming tickets).Deleting these users manually would have been a great pain, so I managed to do a custom php script to do it.The idea is to select the count of tickets of that user in tickets table. I got it from ntozier reply. Thanks very much.The script it attached with my reply. It may help anyone else.That's the php code as well.<?$DBTYPE = 'mysql';$DBHOST = 'localhost';$DBUSER = '';$DBPASSWORD = '';$DBNAME = '';require_once('adodb/adodb-errorhandler.inc.php');require_once('adodb/adodb.inc.php');//ini_set("display_errors", 1);define('ADODB_ERROR_LOG_TYPE', 3);define('ADODB_ERROR_LOG_DEST', 'adodb_errors.log');$dbconn = &ADONewConnection($DBTYPE);//$dbconn->debug = true ;$dbconn->PConnect($DBHOST, $DBUSER, $DBPASSWORD, $DBNAME);@[deleted]("SET NAMES 'UTF8'");$users_array = array();$query = "SELECT A.*, B.* from ost_user A, ost_user_email B WHERE A.id=B.user_id";$executequery = $dbconn->Execute($query);$users = $executequery->getrows();foreach ($users as $user){ $user_id = $user; $user_email = $user; $query1 = "SELECT count(*) as total from ost_ticket where user_id='".$user_id."' order by ticket_id desc"; $executequery1 = $dbconn->Execute($query1); $totalposts = $executequery1->fields; if ($totalposts == 0) { $users_array = $user; $query = "DELETE FROM ost_user WHERE id='".$user_id."'"; $dbconn->Execute($query); $query = "DELETE FROM ost_user_email WHERE user_id='".$user_id."'"; $dbconn->Execute($query); }}echo "Done";?>
[support.zip](https://forum.osticket.com/assets/files/migrated/FileUpload/05/f7b4225084ab88dd16303be8565fcb.zip)