No se puede incluir un enlace HTML en el script PHP, pero funciona bien como consulta MySQL

2

Estoy usando lo siguiente como parte de un script PHP:

mysqli_query($con,"UPDATE table
SET description='<a href="http://123456.biz/index.php/123/321/456/*/789">text</a>' 
WHERE description IS null;");

La consulta funciona bien con MySQL, pero aparece el siguiente error al ejecutarla como parte del script PHP:

Error de análisis de PHP: error de sintaxis, 'href' inesperado (T_STRING)

¿Qué necesito cambiar?

Arthur Walker
fuente

Respuestas:

2

No tenga PHP instalado, no puedo probar si esto funciona, intente lo siguiente:

   mysqli_query($con,"UPDATE table
    SET description='<a href=\"http://123456.biz/index.php/123/321/456/*/789\">text</a>' 
    WHERE description IS null;");
Bilo
fuente
2

Sus citas son el problema. Estás usando comillas dobles ( ") dos veces en la cadena y el analizador se está confundiendo. Intenta escapar de ellos con una barra invertida ( \):

mysqli_query($con,"UPDATE table
    SET description='<a href=\"http://123456.biz/index.php/123/321/456/*/789\">text</a>' 
    WHERE description IS null;");
Huey
fuente
1

Problema

El valor que está configurando tiene comillas dobles. Necesita escapar de estos mediante la barra invertida \

Esto le dice al script que use los caracteres como parte del valor y no como parte del script en sí.

Solución

Solo un simple error en su codificación, intente ...

mysqli_query($con,"UPDATE table SET description='<a href=\"http://123456.biz index.php/123/321/456/*/789\">text</a>' WHERE description IS null;");

Otras lecturas

PHP AddSlashes

Secuencias de escape de PHP

Personajes especiales de escape de PHP

Craig Lowe
fuente