PHP - Problema con comillas simples y dobles

   
Vista:

Problema con comillas simples y dobles

Publicado por Jaime Cruz (4 intervenciones) el 11/01/2012 20:40:53
Tengo este codigo para una consulta mysql:

$sql = '
SELECT DISTINCT
titulaciones.titulaciones_sin_abreviaturas,
asignat_titulac.id_titulaciones
FROM
asignat_titulac ,
titulaciones ,
centros
WHERE
titulaciones.id_Titulaciones = asignat_titulac.id_titulaciones AND
titulaciones.tipo = "'.$_GET["tipo"].'"
ORDER BY
titulaciones.titulaciones_sin_abreviaturas ASC
';

El caso es que sé que el fallo está en la linea donde comienza por "titulaciones.tipo=..." del WHERE ya que si pongo esa linea como titulaciones.tipo = "Normal" hace bien la consulta.
He probado a darle mil vueltas (con la barra invertida, cambiando comillas dobles por simples...), pero no consigo que me funcione.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Problema con comillas simples y dobles

Publicado por xve (5523 intervenciones) el 11/01/2012 23:40:11
Hola Jaime, nos puedes indicar el error que te da?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con comillas simples y dobles

Publicado por jaime cruz (4 intervenciones) el 11/01/2012 23:54:30
Ahora mismo no sale ningún mensaje de error, pero no funciona como debería, ya que debería mostrar los resultados de la base de datos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con comillas simples y dobles

Publicado por Miguel (2 intervenciones) el 12/01/2012 01:13:46
Te has hecho la pilla un lío con las comillas dobles y simples, prueba así:
$sql = "
SELECT DISTINCT

titulaciones.titulaciones_sin_abreviaturas,

asignat_titulac.id_titulaciones

FROM

asignat_titulac ,

titulaciones ,

centros

WHERE

titulaciones.id_Titulaciones = asignat_titulac.id_titulaciones AND

titulaciones.tipo = ".$_GET['tipo']."

ORDER BY

titulaciones.titulaciones_sin_abreviaturas ASC

";
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con comillas simples y dobles

Publicado por jaime cruz (4 intervenciones) el 12/01/2012 02:04:29
Ahora da este error:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/httpd/html/adminpubli/titulaciones.php on line 80

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in /home/httpd/html/adminpubli/titulaciones.php on line 84

La linea 80 pone: while($sql_a = mysql_fetch_array($sql_q)){
La linea 84 pone: mysql_free_result($sql_q);
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con comillas simples y dobles

Publicado por Miguel (2 intervenciones) el 12/01/2012 04:01:58
$_GET['tipo'] anulaba la comilla simple porque le ponía la barra invertida delante \' y claro luego para la consulta sql daba error, con la función stripslashes se quita la barra invertida y ya furruncha

$poti="SELECT DISTINCT titulaciones.titulaciones_sin_abreviaturas,
asignat_titulac.id_titulaciones

FROM asignat_titulac,titulaciones,centros
WHERE

titulaciones.id_Titulaciones = asignat_titulac.id_titulaciones AND

titulaciones.tipo =";

$tarugo=$_GET['tipo'];
$tas=stripslashes($tarugo);
$perdio="ORDER BY titulaciones.titulaciones_sin_abreviaturas ASC";

$sql = $poti."$tas ".$perdio;


$sql_q = mysql_query($sql);

while($sql_a = mysql_fetch_array($sql_q)){

echo '<li><a href="asignaturas.php?idtit='.$sql_a["id_titulaciones"].'" class="enlacesweb">'.$sql_a["titulaciones_sin_abreviaturas"].'</a></li><br />';

}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con comillas simples y dobles

Publicado por jaime cruz (4 intervenciones) el 12/01/2012 10:54:06
Pues muchisimas gracias. Esa era la solución
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar