PDA

View Full Version : php & mysql search


klusener
Oct11-06, 05:20 PM
Hi everyone,

I'm just beginning to learn php, but I'm working on a small script where I'm trying to search a few fields in a table and if the values match, other fields in the same row are displayed.

The db has just one table with 6 fields: ID (primary key), words, definitions, roots, prefixes, and suffixes.

I'm trying to make the search engine get the value from a search form, check it against roots, prefixes, and suffixes. If any of them equal the value, the values from words, and definitions need to be displayed.

But, for some reason it just doesn't work when I arrange the code like this:

$query = "SELECT words, definitions FROM Etym WHERE roots = '$trimm' OR prefixes = '$trimm' OR suffixes = '$trimm'";

I'm attaching both the search.php and the search form, if any of you would like to help me out of this mess. I would really appreciate any advice.

Thanks.

NoTime
Oct12-06, 07:10 PM
Not familiar with PHP, but doubt it would parse that string.
Chances are you need to use a string concatenation operater to insert your variables in the string.
Like
$query = "SELECT words, definitions FROM Etym WHERE roots = '" + $trimm + "' OR prefixes = '" +

j777
Oct13-06, 09:27 AM
I think the string concatination operator in PHP is a period.

$query = "SELECT words, definitions FROM Etym WHERE roots = " . $trimm . " OR prefixes = " . $trimm . " OR suffixes = " . $trimm;

klusener
Oct13-06, 02:25 PM
I think the string concatination operator in PHP is a period.

$query = "SELECT words, definitions FROM Etym WHERE roots = " . $trimm . " OR prefixes = " . $trimm . " OR suffixes = " . $trimm;

It says : Unknown column 'ab' in 'where clause'

(ab was the input).

NoTime
Oct13-06, 08:01 PM
Notice that j777 didn't put your ' in when he updated the statement. SQL does require the ' around literals.

klusener
Oct14-06, 10:17 AM
Thanks j777 and NoTime, it works like a charm.

j777
Oct16-06, 12:34 PM
Oops, sorry about the missing single quotes.