Foros aprenderaprogramar.com
Aprender a programar => De todo un poco... => Mensaje iniciado por: DrKlauss en 05 de Septiembre 2011, 08:03
-
Saludos amigos, estoy tratando de hacer un reemplazo de una cadena de texto dentro de una base de datos por otra y me sale el siguiente error:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'iframe',size: {x:850, y: window.getSize().size.y-75} }"><font color="#0066cc"> H' at line 1
¿Alguien que haya resuelto errores de este tipo?
-
¿Puedes poner el código sql que has intentando ejecutar?
-
Te pongo el código: UPDATE `jos_content` SET `fulltext`= REPLACE (`fulltext`, 'Para visitar nuestra tienda de manualidades pulsa aquí: <a class="modal" href="index.php?option=com_ckforms&view=ckforms&id=1&template=tienda" id="popup" rel="{handler: 'iframe',size: {x:850, y: window.getSize().size.y-75} }"><font color="#0066cc"> Visitar la tienda de manualidades.</font></a><font color="#000000"> </font>', 'Ahora mismo hemos deshabilitado por mantenimiento la tienda de manualidades. En breve la rehabilitaremos. Gracias.');
-
Hola DrKlauss, te voy a dar unas indicaciones que creo te resuelvan el problema. Si te fijas dentro del texto que buscas reemplazar aparece el caracter comilla simple '. Dicho caracter es para mysql un identificador de fin de cadena; dentro del texto tienes dos caracteres de este tipo, además de los de apertura y cierre. Por cada caracter especial que tengas dentro del texto debes introducir precediéndolo el caracter de escape o backslash \, de forma que mysql pueda interpretar que no se trata de una apertura o cierre, sino simplemente de texto. En concreto, en vez de handler: 'iframe',size: , escribir handler: \'iframe\',size:
Prueba esto y ya nos cuentas si se resuelve o sigue dando problemas...
-
Resuelto! Efectivamente era el problema de las comillas simples, la verdad es que no se me había pasado por la cabeza que pudiera ser eso. Muy agradecido...