¿Cómo podría eliminar las etiquetas de script y todo lo que contiene PHP?Strip <script> etiquetas y todo lo demás con PHP?
Respuesta
Como dice David, filtrar solo las etiquetas de secuencia de comandos no es suficiente si lo que se busca es sanitizar los datos entrantes. HTML Purifier promesas para hacer el paquete completo:
Purificador HTML es una librería de filtros HTML compatible con los estándares escrito en PHP . Purificador HTML no sólo eliminará toda código malicioso (más conocida como XSS) con un fondo auditado, lista blanca todavía permisiva seguro, sino que también hará que sus documentos son compatible con las normas, algo que sólo puede conseguirse con un conocimiento exhaustivo de W3C de presupuesto.
Vaya con HTML Purifier como sugirió Pekka.
Nunca ir con expresiones regulares para ese caso
Aquí está un ejemplo, expresiones regulares filtros roto, funciona en navegadores (probado en Firefox)
<script script=">>><script></script><script>//" >
/**/
alert(1);
</script
>
se puede hacer eso con la función strip_tags
<?php
$text = '<p>Test paragraph.</p><!-- Comment --> <a href="#fragment">Other text</a>';
echo strip_tags($text);
// Allow <p> and <a>
echo strip_tags($text, '<p><a>');
?>
¡NO, no puede usar esa función! Esa función en ", según tengo entendido. –
Yo uso este:
$tag_para_remover_codigo_fonte_url_dentro_buscador = array("head","script","style","object","embed","applet","noscript","noframes","noembed");
for ($i=0;$i<count($tag_para_remover_codigo_fonte_url_dentro_buscador);$i++) {
$codigo_fonte_url_dentro_buscador = preg_replace("/< *" . $tag_para_remover_codigo_fonte_url_dentro_buscador[$i] . "[^>]*>(.*?)<\/" . $tag_para_remover_codigo_fonte_url_dentro_buscador[$i] . " *>/i"," ",$codigo_fonte_url_dentro_buscador);
}
$codigo_fonte_url_dentro_buscador = html_entity_decode(strip_tags($codigo_fonte_url_dentro_buscador));
Creo que esos nombres de variables deberían ser más largos. – xorinzor
- 1. Eliminar etiquetas de imagen html y todo lo demás de una cadena
- 2. PHP: cómo obtener solo las palabras entre paréntesis() y borrar todo lo demás
- 3. robots.txt permite solo root, no permite todo lo demás?
- 4. DataGridView: ¿Cómo seleccionar una columna completa y anular la selección de todo lo demás?
- 5. Deshabilitar el almacenamiento en caché, las cookies y todo lo demás en un WebView
- 6. Php <? etiquetas en WAMP
- 7. ¿Cómo puedo ocultar los ejes y las marcas en matlab sin ocultar todo lo demás?
- 8. Javascript y `<> ...</>` etiquetas
- 9. Strip php variable, reemplace los espacios en blanco con guiones
- 10. regexp para encontrar todo entre <a> y</a> etiquetas
- 11. jQuery, JavaScript, HTML: cómo cargar imágenes después de que todo lo demás se carga?
- 12. <?= ?> etiquetas especiales en php
- 13. Hacer que MSDeploy (Visual Studio) no elimine la carpeta App_Data, pero elimine todo lo demás
- 14. hacer comparación si lo demás en JasperReports
- 15. ¿Cómo lograr que el fabricante de la etiqueta no fuerce todo lo demás?
- 16. PHP - Quitar <?php ?> etiquetas de una cadena
- 17. Solicitud SOAP con <stdClass> etiquetas
- 18. <? ?> etiquetas que no trabajan en PHP 5.3.1
- 19. 'seleccionar todo' y 'eliminar todo' con choose.js
- 20. String strip() para JavaScript?
- 21. múltiples <nav> etiquetas
- 22. cómo añadir etiquetas de PHP con el analizador DOM
- 23. Diferencia entre <? Php y <?
- 24. Escapando literalmente <? Php y <? en un script PHP
- 25. espacios Extracción y todo lo que no es alfanumérico
- 26. En Javascript, ¿cómo puedo determinar si mi navegador actual es Firefox en una computadora frente a todo lo demás?
- 27. htaccess <Directory> negar todo
- 28. lista de lo que cada uno de los medios <% (<% #, <% =, etc ...)
- 29. Python y Unicode: ¿Cómo debería ser todo lo Unicode
- 30. PHP: cómo manejar <! [CDATA [con SimpleXMLElement?
espero que no está tratando de desinfectar la entrada del usuario con listas negras. Te perderás 'onclick',' onmouseover', 'href =" javascript: ',' src = "javascript:' y muchos otros. – Quentin
realmente deberías asistir a los consejos de David, pero para responder a tu pregunta, por favor mira mi publicación. – oezi
Por favor pregunte claramente a su necesidad – Karthik