código fuente de ubb
Mira tu programa:
g_HtmlUn=replace(g_HtmlUn, "amp", amp)
¿Sabes lo que significa esta oración? Esta oración significa no hacer nada (funcionalmente hablando). Para decirlo sin rodeos, ¡es una pérdida de tiempo! Utilice la sustitución de caracteres. Personajes, ¿es esto interesante?
Esto es para visualización, es decir, el código fuente de UBB se muestra en HTML. Entonces, el contenido es sólo un código UBB. Si queremos convertirlo correctamente, primero debemos saber qué convención usar en UBB.
Por ejemplo, [i][/i] o [I][/I] en el código UBB significa que el contenido en el medio está en cursiva, lo que significa que se mostrará como
Pero si UBB tiene [i], usaremos
1. Reemplazo de caracteres de entidad HTML
2. Reemplazar el código UBB con caracteres HTML.
Entonces los pasos que debemos seguir son:
1 para que este personaje sea procesado. Requerido; use caracteres de reemplazo; esta es una pantalla física.
Reemplazo de 2 HTML,
Reemplazo de 3 UBB. En otras palabras, los tres pasos de reemplazar [ con
deben realizarse en este orden; de lo contrario, se producirán errores. En cuanto al motivo, puede analizarlo usted mismo, que es para evitar reemplazos repetidos.
Estos tres pasos implementan las funciones de deshabilitar HTML y usar código UBB. De acuerdo con este requisito, su programa eventualmente puede formarse de la siguiente manera:
Función g_HtmlUn(content)
dim tempstring as string = content
If content lt gt " " Entonces
tempstring=replace(tempstring, "amp," amp)
tempstring=replace(tempstring, "lt," lt)
tempstring=replace ( cadena temporal, " >, " >)
cadena temporal=reemplazar(cadena temporal, chr(34), """)
cadena temporal=reemplazar(cadena temporal, chr(13)," ltbr >;)
tempstring=reemplazar(tempstring,chr(32),"?)
tempstring=reemplazar(tempstring,"["," lt)
tempstring=replace(tempstring, "]", "gt")
Terminará si...
g_HtmlUn = tempstring
Finalizar función
La razón por la que se agregan las dos primeras oraciones aquí es porque se usa el código UBB y los clientes no pueden ingresar los símbolos [o], lo cual rara vez se usa aquí. Pero eso en realidad no impide que los clientes creen UBB. Si el cliente ingresa [lenguaje de script = JavaScript] código JavaScript[/script]
se implementará este formulario, por lo que generalmente usamos expresiones regulares para el reemplazo selectivo cuando usamos [], pero no puede simplemente reemplazar [] . Además, si el cliente ingresa [], puede ocurrir un error. Por lo tanto, el reemplazo de las dos últimas oraciones generalmente se basa en expresiones regulares, en lugar de un simple reemplazo. ¡En este momento, se pueden realizar las dos últimas frases de modificación y reemplazo! La primera parte sólo desactiva HTML, las dos últimas frases activan UBB.
¡Simplemente haga algunas modificaciones al comprender las expresiones regulares y listo!
Sin embargo, todavía es imposible prevenir ataques de inyección SQL con un programa de este tipo.