Comunidad de diseño web y desarrollo en internet online

Envio de Variables, Help!!

Citar            
MensajeEscrito el 07 May 2007 06:22 pm
Hola

Por Romi

40 de clabLevel



 



Ultima edición por Romi el 02 Jul 2007 01:37 am, editado 1 vez

msie
Citar            
MensajeEscrito el 07 May 2007 06:39 pm

Código :

$sql = "SELECT * FROM m2_art WHERE division = '$division'"; 

^^

Por Darel

725 de clabLevel

5 tutoriales

 

I'm a human

firefox
Citar            
MensajeEscrito el 07 May 2007 07:02 pm
Recuerda que la variable la estas enviado por GET

Código :

$sql = "SELECT * FROM m2_art WHERE division = '".$_GET['division']."'";

:)

Por psycho-vnz

Claber

1186 de clabLevel

7 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 07 May 2007 07:13 pm
Deben validar que la variable $_GET['division'] ó $division tengan el valor que se espera para hacer la sentencia sql , sino es un tremendo error de seguridad.

saludos

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 07 May 2007 07:20 pm

Maikel escribió:

Deben validar que la variable $_GET['division'] ó $division tengan el valor que se espera para hacer la sentencia sql , sino es un tremendo error de seguridad.

saludos


Cierto, gravisimo error

Código :

<?php 
   if(isset($_GET['division'])){
      $sql = "SELECT * FROM m2_art WHERE division = '".$_GET['division']."'";
   }else{
      // Mensaje de error
   }
?>

^^

Por psycho-vnz

Claber

1186 de clabLevel

7 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 07 May 2007 08:48 pm
ehhmmm psycho-vnz aun en tu código esta el error.

saludos

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 07 May 2007 08:58 pm

Maikel escribió:

ehhmmm psycho-vnz aun en tu código esta el error.

saludos


Claro estaba pendiente de que recibiera el dato por el GET nada mas.... :(

Código :

<?php 
   if(isset($_GET['division']) && $_GET['division'] > 0){
      $sql = "SELECT * FROM m2_art WHERE division = '".$_GET['division']."'";
   }else{
      // Mensaje de error
   }
?>

Por psycho-vnz

Claber

1186 de clabLevel

7 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 23 May 2007 04:10 pm
perdon!
pero me sigue tirando el mismo error
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/m/m2librerias.com.ar/public_html/libreria10.php on line 172
Ayudaaaaa, cuando hago el click sobre la pagina me reconoce la variable me pone division=Abrochadora, pero cuando me abre la otra pagina me tira el error!!
Alguna idea?

Por Romi

40 de clabLevel



 

msie
Citar            
MensajeEscrito el 23 May 2007 08:26 pm
1) Dices que division es "Abrochadora", pero en el if de psyco-vnz te aseguras de que sea un valor numerico($_GET['division'] > 0), osea nunca entrara al if y $sql resultara vacio.

2) estas usando una variable que se crea en el if fuera de el. Si el If nunca se ejecuta te dara error, la solucion correcta es:

Código :

<?php 
   if(isset($_GET['division'])){
      $sql = "SELECT * FROM m2_art WHERE division = '".$_GET['division']."'";
      $result = mysql_query($sql,$db);
      while ($myrow = mysql_fetch_array($result)) { 
            $m2_id = $myrow["m2_id"];
            $m2_div = $myrow["division"];
      }
   }else{
      //mensaje de error
   }
?>

Por neohunter

Claber

563 de clabLevel

1 tutorial

 

Bogota, Colombia

opera
Citar            
MensajeEscrito el 23 May 2007 08:31 pm
3) isset no verifica que el contenido de $_GET['division'] sea seguro. Se pueden pasar querrys adicionales si haces eso asi.

Osea: Ese codigo es muuuuuy inseguro.

Por neohunter

Claber

563 de clabLevel

1 tutorial

 

Bogota, Colombia

opera
Citar            
MensajeEscrito el 23 May 2007 08:33 pm
acabo de leer y maikel lo comento. pero creo que psycho-vnz no le entendip =P

Por neohunter

Claber

563 de clabLevel

1 tutorial

 

Bogota, Colombia

opera
Citar            
MensajeEscrito el 23 May 2007 08:56 pm

neohunter escribió:

acabo de leer y maikel lo comento. pero creo que psycho-vnz no le entendip =P

:roll: :roll:
Maikel lo que me quiso decir fue que si aun utilizaba

Código :

isset()

No validaba la operación de la división por ejemplo dividir entre 0
:roll:

Por psycho-vnz

Claber

1186 de clabLevel

7 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 24 May 2007 12:05 am
y lo que aclaro neohunter.

Es decir, si esperas que esa variable se use para comparar en la sentencia sql con un numero entonces valida que sea realmente un numero(y en el rango que esperas) antes de ejecutar las sentencias; por otro lado si es una cadena escapea las comillas y demas; si el dato viene de una lista de seleccion, pues valida que la variable contenga un valor de esa lista y no otro, y asi sucesivamente.

saludos

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 24 May 2007 02:35 pm
Bueno, ya tuve un avance ahora me muestra los titulos fijos, y no tira error, pero no me trae nada de la base, alguna idea??
Muchas Gracias.

Por Romi

40 de clabLevel



 

msie
Citar            
MensajeEscrito el 24 May 2007 03:09 pm
ya lo solucionamos por msn ;).

Por neohunter

Claber

563 de clabLevel

1 tutorial

 

Bogota, Colombia

opera
Citar            
MensajeEscrito el 24 May 2007 04:38 pm

psycho-vnz escribió:

Maikel escribió:

ehhmmm psycho-vnz aun en tu código esta el error.

saludos


Claro estaba pendiente de que recibiera el dato por el GET nada mas.... :(

Código :

<?php 
   if(isset($_GET['division']) && $_GET['division'] > 0){
      $sql = "SELECT * FROM m2_art WHERE division = '".$_GET['division']."'";
   }else{
      // Mensaje de error
   }
?>


Tambien tiene falla de seguridad. Hay que verificar que el dato no contenga como por ejemplo ";"

Por york3rs

Claber

561 de clabLevel

1 tutorial

Genero:Masculino  

LA___Chile

msie

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.