Benim web uygulama çerçevesi olarak CodeIgniter'ı kullanın. Ben basit bir try / catch kullanılır ve bunu test etmek için örnek bir değer gönderilir ve başarısız!
Benim veri sorunu çözmek için $this->db->escape()
işlevini kullanabilirsiniz biliyorum ama sadece bilmek istiyorum: Neden CATCH Bu hatayı yakalamak olamaz / YTL!
Kontrolcü kodu:
$this->load->model('user_model');
$result = $this->user_model->test_user("tes'ti");
Model kodu:
function test_user($username){
try {
$query_str = "SELECT * FROM tbl_user WHERE username = '".$username."'";
$result = $this->db->query($query_str);
return $result;
} catch (Exception $e) {
return;
}
}
Çıktı:
A Database Error Occurred
Error Number: 1064
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ti'' at line 1
SELECT * FROM tbl_user WHERE username = 'tes'ti'
Ben nerede hata yaptım ben yaptım eğer bana, haberim olsun!
Zaman ve başkalarına yardım için teşekkür ederiz. ;)