PEAR MDB2 Oracle için Quoting

Thursday February 21st 2008, 19:42 pm |   |  Web Teknolojileri | by eser s.

Diyelim ki veritabanına gireceğiniz ve formdan gelen string bir değişkeni quote etmek istiyorsunuz. Mysql kullandığınızda PHP’nin addslashes() fonksiyonu elbette iş görüyor. Zira Mysql’e uygun biçimde formdan gelen ve “Adana’nın kebabı” şeklindeki bir değeri “Adana’nın kebabı” biçiminde quote edecek ve bu da Mysql’de sorun çıkarmayacaktır. Ancak eğer Oracle kullanıyorsanız quote işlemi ve karakterleri Mysql’dekinden farklı olduğu için addslashes() fonksiyonu işe yaramayacak. Örnek olarak ‘ (tek tırnak) karakterini aynısı ile escape etmeniz gerekiyor. Yani ” haline getirmek.

İşte sağolsun MDB2′ciler bu işleri kolaylaştırmışlar. Yapmanız gereken $db->quote($formdan_gelen_deger); şeklinde $db nesnesinin quote fonksiyonunu çağırmak.

Yani

  1. $sql = "INSERT INTO table1 (field1) VALUES (" . $db->quote($formdan_gelen_deger) . ")";

şeklinde kullanmak gerekiyor.

Dikkat etmeniz gereken bir nokta $db->quote($formdan_gelen_deger) kisminin başına ve sonuna tek tırnak koymamak. Yani

  1. $sql = "INSERT INTO table1 (field1) VALUES (’" . $db->quote($formdan_gelen_deger)."’)";

şeklinde kullanmamak lazım.


Comments
No Comments   |    |  Comments RSS on this post.  |  
No comments yet.

Sorry, the comment form is closed at this time.

 
SHATO Web Hosting Services