cfqueryparam mit like-operator in ColdFusion
Ich wurde beauftragt, mit der Sie durch eine Reihe von ColdFusion-Seiten, die vor kurzem war Gegenstand einer ziemlich bösen SQL-Injection-Angriff. Im Grunde meine Arbeit beinhaltet das hinzufügen <cfqueryparam
> - tags für alle inline-sql. Zum größten Teil habe ich es nach unten, aber kann mir jemand sagen wie verwenden cfqueryparam mit dem LIKE-operator?
Wenn meine Abfrage sieht wie folgt aus:
select * from Foo where name like '%Bob%'
was sollte mein <cfqueryparam
> - tag Aussehen?
Du musst angemeldet sein, um einen Kommentar abzugeben.
@Joel, dem muss ich widersprechen.
Nie empfehlen, jemand, dass Sie "wählen Sie Stern". Schlechte form! Auch für ein Beispiel! (Auch kopiert von der Frage!)
Die Abfrage vorkompiliert und Sie sollten die wild card character(s) als Teil der parameter an die Abfrage übergeben. Dieses format ist besser lesbar und effizienter ausgeführt werden.
Wenn dabei die string-Verkettung, verwenden Sie den operator kaufmännisches und-Zeichen (&), nicht das plus-Zeichen. Technisch, in den meisten Fällen plus funktioniert einwandfrei... bis Sie werfen einen NumberFormat() in der Mitte der Zeichenfolge und starten Sie Fragen sich, warum Sie gerade gesagt, dass du nicht durch eine gültige Nummer, wenn Sie geprüft haben und Sie sind.