JSHINER Posted July 30, 2007 Share Posted July 30, 2007 <?php session_start(); require('php/functions.php'); require('php/Database.php'); $page = array(); function Get_Results($db, $n = false, $c = false) { $arr = $db->getArray("SELECT * FROM table WHERE name LIKE %$n% AND company LIKE %$c% AND category_id = 81"); return $arr; } $db = new Database(); $page['results'] = Get_Results($db, $_GET['n'], $_GET['c']); $db->close(); // Results echo 'Search Results'; foreach ($page['results'] as $r) { echo'Name:', $r['name'], ' - Company: ', $r['company'], ''; } //-------- ?> I am using a form to submit to the above page with "n" and "c" submitted in the form. To test I simply put "page.php?n=John&c=Company" in the address bar, and get the following error: Notice: Error in database query. Query was [sELECT * FROM table WHERE name LIKE %John% AND company LIKE %Company% AND category_id = 81] and the error returned was [You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '%Sandra% AND company LIKE %Keller% AND category_id = 81' at line 1] in folder on line 71 Search Results Warning: Invalid argument supplied for foreach() in folder/page.php on line 34 Does anyone know where my errors are here? Quote Link to comment Share on other sites More sharing options...
GingerRobot Posted July 30, 2007 Share Posted July 30, 2007 Try: $arr = $db->getArray("SELECT * FROM table WHERE name LIKE '%$n%' AND company LIKE '%$c%' AND category_id = 81"); If you are searching for a string, you have to enclose the string in quotes. Quote Link to comment Share on other sites More sharing options...
JSHINER Posted July 30, 2007 Author Share Posted July 30, 2007 I still get the same error, it just now puts ' ' around the '%JOHN%' Quote Link to comment Share on other sites More sharing options...
JSHINER Posted July 30, 2007 Author Share Posted July 30, 2007 Problem resolved. Needed to do '%$n%' Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.