Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Cambiar texto html por texto plano

Estas en el tema de Cambiar texto html por texto plano en el foro de PHP en Foros del Web. Hola buenos días, Tengo un problema que no se muy bien como solucionar. Al rescatar varios registros de la base de datos he comprobado que ...
  #1 (permalink)  
Antiguo 21/03/2016, 05:47
 
Fecha de Ingreso: marzo-2016
Ubicación: Londres
Mensajes: 3
Antigüedad: 8 años, 1 mes
Puntos: 0
Cambiar texto html por texto plano

Hola buenos días,

Tengo un problema que no se muy bien como solucionar.

Al rescatar varios registros de la base de datos he comprobado que el texto almacenado en la tabla está guardado como formato HTML. El caso es que ahora quiero mostrarlo solo parte del contenido y además como un texto plano, pero no tengo ni idea de como lograrlo.

$messa = $rowdb['MessageText'];


$dom = new DOMDocument();

libxml_use_internal_errors(true);

$dom->loadHTML($messa);



foreach($dom->getElementsByTagName('div') as $div) {


if ($div->getAttribute('id') == "UserInputtedText") {

$message = $dom->saveXML($div);

$MessageTextOnly = $div->nodeValue;



}

}


Lo intento con así pero me dice que el valor que le paso a DOM está vacío.

Probé a guardar el contenido de uno de los mensajes como una pagina html y cargarla y lo hace perfectamente, pero si trato de guardarlo directamente desde la base de datos no funciona. ¿Alguna idea?

Muchas gracias
  #2 (permalink)  
Antiguo 21/03/2016, 07:04
 
Fecha de Ingreso: octubre-2010
Ubicación: España
Mensajes: 1.007
Antigüedad: 13 años, 6 meses
Puntos: 123
Respuesta: Cambiar texto html por texto plano

Si lo que quieres es eliminar las etiquetas html del texto, puedes probar con strip_tags()
Código PHP:
Ver original
  1. strip_tags($text);
  #3 (permalink)  
Antiguo 21/03/2016, 07:39
 
Fecha de Ingreso: marzo-2016
Ubicación: Londres
Mensajes: 3
Antigüedad: 8 años, 1 mes
Puntos: 0
Respuesta: Cambiar texto html por texto plano

Cita:
Iniciado por xerifandtomas Ver Mensaje
Si lo que quieres es eliminar las etiquetas html del texto, puedes probar con [URL="http://php.net/manual/es/function.strip-tags.php"]strip_tags()[/URL]
Código PHP:
Ver original
  1. strip_tags($text);
Gracias, pero no es eso.

El campo MessageText de la base de datos está guardado como una web completa. No sé porqué. El caso es que yo solo quiero extraer el texto que pertenece a la etiqueta "UserInputtedText" que es un mensaje mucho más corto.
  #4 (permalink)  
Antiguo 21/03/2016, 08:03
 
Fecha de Ingreso: marzo-2016
Ubicación: Londres
Mensajes: 3
Antigüedad: 8 años, 1 mes
Puntos: 0
Respuesta: Cambiar texto html por texto plano

Finalmente encontré la manera. Sólo tenía que usar la función "html_entity_decode"

Etiquetas: html, plano, registro, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:06.