SQLiteとPHPでバグって困ってます。

FORMから空文字送って、それをSQLiteに入れて取り出すと
"ネes"などの変な文字が出てきます。

しかし、if($_POST['hoge'] == ""){ $hoge = ""; }
を挟むとこの問題が回避でき、SQLiteに空文字が保管されます。

不可解なのは、もしフォームからの値が""で無いならば
if($_POST['hoge'] == "")には引っかからないはずなのに
この処理をしないで、sqlite_query_stringsのみをして
保存すると変な文字列が出現すると言うことです。

これは何故なんでしょう。