On 10/20/07, -:Nacho:- <[EMAIL PROTECTED]> wrote:
> tratando de hacer una busqueda en mysql de la siguiente forma:
>
> @resultado = Contacto.find(:all, :conditions => ["? = ?",
> params[:eleccion], params[:campo]])
>
> realiza la siguiente consulta por ejemplo:
>
> SELECT * FROM contactos WHERE ('dni' = '111111')
>
> pero la consulta correcta que necesito enviar es:
>
> SELECT * FROM contactos WHERE (dni = '111111')
>
> (el campo sin comillas)
>
> Como envio los parametros para corregir esto??

Esta haciendo eso para evitar el conocido SQLExploit (evita que sea
posible inyectar SQL en tu query, que puede venir del lado del
usuario.

No se si funcione, justo sale de mi cabeza:

@resultado = Contacto.find(:all, :conditions => {
params[:eleccion].to_sym => params[:campo] } )

-- 
Luis Lavena
Multimedia systems
-
Leaders are made, they are not born. They are made by hard effort,
which is the price which all of us must pay to achieve any goal that
is worthwhile.
Vince Lombardi
_______________________________________________
Ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar

Responder a