Anda harus keluar dari setiap string ini (di kedua cuplikan) dengan mysql_real_escape_string()
.
http://us3.php.net/mysql-real-escape-string
Alasan kedua kueri Anda berperilaku berbeda kemungkinan karena Anda memiliki magic_quotes_gpc
dihidupkan (yang harus Anda ketahui adalah ide yang buruk). Ini berarti bahwa string yang dikumpulkan dari $_GET, $_POST dan $_COOKIES diloloskan untuk Anda (yaitu, "O'Brien" -> "O\'Brien"
).
Setelah Anda menyimpan data, dan kemudian mengambilnya kembali, string yang Anda dapatkan dari database tidak secara otomatis lolos untuk Anda. Anda akan mendapatkan kembali "O'Brien"
. Jadi, Anda harus meneruskannya melalui mysql_real_escape_string()
.