tutorial girona español curso html oracle plsql escaping html-escape-characters

html - girona - qgis manual



Cómo escapar de los caracteres<,> y & a las entidades html en Oracle PL/SQL (3)

Puedes usar la función htf.escape_sc:

SQL> select htf.escape_sc(''Please escape <this> tag'') from dual; HTF.ESCAPE_SC(''PLEASEESCAPE<THIS>TAG'') ------------------------------------------------------------------ Please escape &lt;this&gt; tag

Necesito enviar correos electrónicos HTML directamente desde el paquete oracle PL / SQL. Esto funciona casi bien.

Tengo problemas con el hecho de que algunos de los datos extraídos de una tabla contienen elementos como <S> , <L> y fragmentos similares, que a veces se tratan como etiquetas HTML, e incluso si no, siempre se ignoran y nunca se muestran .

Por lo tanto, necesito escapar de esta columna antes de insertarla en el cuerpo del correo electrónico.

¿Existe una función para escapar los caracteres especiales html en entidades automáticamente? ¿O necesito replace(''<'', ''&lt;'', string) manualmente todos los caracteres especiales?



HTF.BDY : /* SPECIAL FUNCTIONS */ function escape_sc(ctext in varchar2 character set any_cs) return varchar2 character set ctext%charset is begin return(replace( replace( replace( replace(ctext, ''&'', ''&'' || ''amp;''), ''"'', ''&'' || ''quot;''), ''<'', ''&'' || ''lt;''), ''>'', ''&'' || ''gt;'')); end;

Puedes crear esta función tú mismo

Pero mejor use esta variante de la función dbms_xmlgen.convert

SQL> select dbms_xmlgen.convert(''<test>&''''"</test>'') from dual 2 / DBMS_XMLGEN.CONVERT(''<TEST>&''''"</TEST>'') -------------------------------------------------------------------------------- &lt;test&gt;&amp;&apos;&quot;&lt;/test&gt;