Hello
I’m creating an admin dashboard with a list of user details. I have built the query as such:
$sql = "SELECT *,
c.username cuid
FROM customers c
LEFT JOIN (SELECT * FROM radius.radacct f1
INNER JOIN
(SELECT MAX(radacctid) id
FROM radius.radacct
GROUP BY username) f2
ON f1.radacctid = f2.id) f3
ON c.username = f3.username";
It’s selecting all the rows from two different tables, from two different databases, inner joining the second table to get a filtered row, then left joining the two tables based on that filtered value.
The query is working like a charm, and there’s a reason it’s constructed that way, so if it’s possible I will prefer no changes to it.
Now, I am trying to add a search filter to the above as well, but having a hard time doing so. This is how I would ususally create a search filter:
if (isset($_GET['item'])) {
$inShort = "%".$_GET['item']."%";
$sql .= " WHERE ((cuid LIKE '$inShort') OR (ipaddress LIKE '$inShort')";
//concatenate the search filter to the query
}
And if I type a search item to the URL, the query throws an error. I tried other varieties of using the WHERE and LIKE clauses with my first query, but for the life of me I can not get it to work. Please advise.