Comunidad de diseño web y desarrollo en internet online

Variable Get en select

Citar            
MensajeEscrito el 23 Nov 2008 01:30 pm
Hola tengo el siguiente problema alguien me podría ayudar???

No se que sintasis utilizar en la select para recoger la variable "$Marcas" enviada desde el formulario por el método get

Como se ve en la ruta Marcas tiene el valor 8
http://localhost:81/ver2.php?Marcas=8&Submit=Buscar


$sqlbis = 'SELECT Anagrama FROM marcas WHERE Codigo = $Marcas';

echo $sqlbis;

La select que sale por pantalla es: SELECT Anagrama FROM marcas WHERE Codigo = "$Marcas"

No me coge el 8, ¿que sintasis deberia utilizar?

Gracias a todos

Por Vicos

11 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 24 Nov 2008 12:04 am

  1. Para capturar el dato "Marcas" que viene por GET, usas

    Código PHP :

    $_GET['Marcas']

  2. Si usas comillas simples, debes concatenar la variable, no meterla en el texto:

    Código PHP :

    $sqlbis = 'SELECT Anagrama FROM marcas WHERE Codigo = ' . $_GET['Marcas'];


En vías de optimizar tu código, deberías cargar el valor de "Marcas" en una variable, quedando:

Código PHP :

$marcas = $_GET['Marcas'];
$sqlbis = 'SELECT Anagrama FROM marcas WHERE Codigo = ' . $marcas;
echo $sqlbis;

Por The Fricky!

Presidente

6168 de clabLevel

3 tutoriales
8 articulos

Genero:Masculino   Bastard Operators From Hell Héroes

Piccola Venezia...

firefox
Citar            
MensajeEscrito el 24 Nov 2008 04:53 am
error de seguridad

Código PHP :

$marcas = $_GET['Marcas'];
$sqlbis = 'SELECT Anagrama FROM marcas WHERE Codigo = ' . $marcas;
echo $sqlbis;



pero antes de ingrasar la variable directamanete a tu sql debes validarla para evitar ataque o almenos evitar caracteres especiales

Código PHP :

$marcas = htmlentities($_GET['Marcas']);
$sqlbis = 'SELECT Anagrama FROM marcas WHERE Codigo = ' . $marcas;
echo $sqlbis;

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox
Citar            
MensajeEscrito el 24 Nov 2008 02:53 pm
Muchas gracias The Fricky! e Inyaka, ya lo solucioné!!!

Otro problema que me surge ahora es el siguiente:

Poner el GET en la la consulta junto con el operador "like" y entre el operador %

ANTES: $where .=" AND Modelo like '% $Modelo %'";

DESPUES: $where .=" AND Modelo like" % . $_GET['Modelo']%;

GRACIAS POR TODO Y SALUDOS

Por Vicos

11 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 25 Nov 2008 04:08 pm
Saludos Vicos, bueno primero que nada la siguiente linea tiene un par de errores, ya sea porque lo copiaste mal u otra razón:

DESPUES: $where .=" AND Modelo like" % . $_GET['Modelo']%;

Si notas bien antes del primer porcentaje (%) te falto la comilla simple (') y luego de $_GET['Modelo'] no concatenaste el otro porcentaje y la comilla simple, deberia ser mas bien algo asi (no se va a notar mucho pero tiene las comillas simples :lol: ):

DESPUES: $where .=" AND Modelo like" '%".$_GET['Modelo']."%'";

Como extra para que conozcas... Para no estar concatenando con puntos las variables tipo vector, array y de ese estilo (yo odio concatenar con puntos :crap: ) lo haces de la siguiente manera:

DESPUES: $where .=" AND Modelo like" '%{$_GET['Modelo']}%'";

Como puedes ver lo que hay que hacer es encerrar la variable tipo vector, array, etc entre llaves { } y la metes así como así dentro de un string sin problema alguno y te olvidas de los puntos, si la metes sin las llaves te daré el error "unexpected T_VARIABLE" o algo así :D

Pero en fin, la mejor manera de hacer lo que intentas es la siguiente porque no se cuantas veces utilizarás el valor de $_GET['Modelo']:

$model = $_GET['Modelo'];
$where .=" AND Modelo like '%$model%'";

Espero te haya servido de ayuda... C Ya..!

Por KB-27

Claber

301 de clabLevel



 

My very secret HQ

firefox
Citar            
MensajeEscrito el 25 Nov 2008 04:19 pm
¿por que odian la etiqueta .[code] ?


por favor para sus codigos usen esta etiqueta y asi salvaran un gatito (el de takag)

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox
Citar            
MensajeEscrito el 25 Nov 2008 07:25 pm
jajaja tienes toda la razon iny ahora postie una respuesta para eso en un post aqui revisen chicos revisen ;-)

Por talcual

686 de clabLevel



 

Colombia

firefox

 

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