Hola a todos, foreros!
Mi duda es bien sencilla pero me pierdo muchiisimo en este tema.
Os cuento: me llega por GET un nombre y tengo que ver si ese nombre existe en la BD, ¿que funciones utilizo para filtrar ese valor?
Muchas gracias.
| |||
Duda sencilla con GET Hola a todos, foreros! Mi duda es bien sencilla pero me pierdo muchiisimo en este tema. Os cuento: me llega por GET un nombre y tengo que ver si ese nombre existe en la BD, ¿que funciones utilizo para filtrar ese valor? Muchas gracias. |
| ||||
Respuesta: Duda sencilla con GET imagino que trabajas con mysql , sabes recibir el dato?? si es asi entonces ve este link y busca en google consulta con condicion ya que informacion sobre lo que necesitas hay bastante saludos
__________________ aprende d tus errores e incrementa tu conocimientos it's not a bug, it's an undocumented feature By @David php the right way |
| |||
Respuesta: Duda sencilla con GET Me as entendido mal, seleccionar los datos y todo eso no tengo ningun problema. Yo lo que quiero es filtrar el dato que me viene por GET, para la seguridad de la pagina, para evitar Inyection SQL, etc., entendiste? |
| ||||
Respuesta: Duda sencilla con GET Puedes hacer asi; Código PHP: puedes evitar esto para evitar SQL Injection; Código PHP:
__________________ Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación ¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies |
| |||
Respuesta: Duda sencilla con GET Colapso de mensajes a la misma hora, jeje. Se que hay muchas funciones: htmlentities(), adslashes(), etc, etc, etc Mi problema es que no se como utilizarlas en este caso ¿cuales utilizo y cuales no? |
| ||||
Respuesta: Duda sencilla con GET bueno seria bueno que usaras mysql_real_escape_string en tu consulta cuando pases los datos tanto por get como post, tambien intenta hacer validaciones de datos para estar seguro que te estan pasando lo que deseas saludos
__________________ aprende d tus errores e incrementa tu conocimientos it's not a bug, it's an undocumented feature By @David php the right way |
| ||||
Respuesta: Duda sencilla con GET Mira, todo depende de que valores quieras recibir en $_GET Ahi te puse por ejemplo la unica funcion que ocupas si requieres numeros.. Pero si requieres letras, existen diversas funciones como; Htmlentities - Si se introducen caracteres como < o >, se modifica por su entidad HTML para evitar XSS Injection Adslashes - MUY importante para evitar SQL Injection, ya que si se introducen comillas (simples o dobles), la funcion antepone barras invertidas para anular las comillas Por ejemplo, si tengo una consulta de este tipo; Código PHP: 'or '1'='1 La consulta se anula automaticamente, quedando asi; Código PHP: PD; En php.net encontraras muchas explicaciones de cada funcion, date una vueltecita
__________________ Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación ¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies |
| |||
Respuesta: Duda sencilla con GET Muchas gracias, me lo mirare. El dato es una categoria de un producto, estonces lo que quiero comprobar es que esa categoria exista. Otra cosilla, offtopic
Código PHP:
Esto que ocasionaria? Ver original |
| ||||
Respuesta: Duda sencilla con GET pues deberias de saberlo se nota a leguas con ver la consulta ya que metas las pass que metas siempre va a devolver datos xq estas diciendo un valor verdadero enla condicion or Cita: revisa como puede afectar eso en la web hay bastante informacion de injeccion sql y lo que ocaciona saludos or '1'='1'
__________________ aprende d tus errores e incrementa tu conocimientos it's not a bug, it's an undocumented feature By @David php the right way |
| ||||
Respuesta: Duda sencilla con GET Exacto, ahi le indicas a la query que saque todos los datos de usuarios siempre y cuando pass sea vacio O 1 sea igual a 1.. Obvio que, como siempre 1=1, va a sacar TODOS los datos... Asi es como funciona la sql injection mas o menos
__________________ Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación ¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies |
| |||
Respuesta: Duda sencilla con GET Sigo sin entenderlo, ¿cual es la finalidad de esa consulta? ¿sacar los datos de la fila en la que pass= x? o ¿comprobar si hay algun registro en esa tabla en la que pass coincida? Última edición por mariomon17; 07/11/2010 a las 16:34 |
| ||||
Respuesta: Duda sencilla con GET hiciste la consulta?? ya que la colocas como ejemplo tu mismo?? que te devolvio???? lo que hace esa consulta es que siempre es true y te trae todos los datos de la tabla usuarios ya ahi te esta abriendo un hueco de seguridad ya que una de tus validaciones fue true por defecto, como te dije en la web hay informacion sobre la injeccion sql ahi te lo explicaran mejor mira este articulos, incluso los comentarios hay dos partes de este velo esta bueno habla sobre la seguridad con php ahi explican muy bien lo que preguntas
__________________ aprende d tus errores e incrementa tu conocimientos it's not a bug, it's an undocumented feature By @David php the right way |
| ||||
Respuesta: Duda sencilla con GET Supongo que no hay diferencia... Pasate por el manual de php.net y compara; http://php.net/mysql_real_escape_string http://php.net/addslashes
__________________ Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación ¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies |
| |||
Respuesta: Duda sencilla con GET Vale! Joo, me ha costado, ehh... jaja Ya lo entendi, estaba dandole vueltas tontas :) Gracias a los dos, de momento voy a utilizar esto htmlentities(mysql_real_escape_string($_GET['categoria']) aparte de en la BD crear un nuevo usuario con los permisos justitos. Suficiente? |
Etiquetas: |