Um, no.
What is says above is:
$sql = "update terms set property=\"$def\", info=\"$text\", type=\"$type\" where id=$id ";
What is the final output or the final result of $sql, as in what data are you shoving in the variables? And is that data actually getting there? By dumping this string out to the browser and posting it here, we can identify if there's a hang up on the data.