$query = sprintf("SELECT id, word FROM words WHERE word = '%s'", myaddslashes(escape(trim(uservar('synonym_new'))))); $db->query($query); $word_id = 0; $exists = 0; $existing_id = 0; # make sure the comparison is case-sensitive: while ($db->next_record()) { if ($db->f('word') == escape(trim(uservar('synonym_new')))) { $exists = 1; $existing_id = $db->f('id'); break; } } if (!$exists) { # word does not exists in database yet $word_id = $db->nextid("words"); $lookup_word = trim(getLookupWord(uservar('synonym_new'))); if ($lookup_word == trim(uservar('synonym_new'))) { $lookup_word = "NULL"; } else { $lookup_word = "'" . myaddslashes(escape($lookup_word)) . "'"; } $query = sprintf("INSERT INTO words\n\t\t\t\t(id, word, lookup) VALUES (%d, '%s', %s)", $word_id, myaddslashes(escape(trim(uservar('synonym_new')))), $lookup_word); $db->query($query); } else { $db->next_record(); $word_id = $existing_id; } if ($word_id == 0) { die("No word_id found."); }