Foros del Web » Programando para Internet » PHP »

Imprimir etiquetas html literalmente

Estas en el tema de Imprimir etiquetas html literalmente en el foro de PHP en Foros del Web. @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original <?php   $texto = htmlentities ( "texto de \" ejemplo \" <a href= \" enlace.com \" >enlace</a>" ) ; ...
  #1 (permalink)  
Antiguo 18/07/2011, 00:21
 
Fecha de Ingreso: febrero-2011
Mensajes: 233
Antigüedad: 13 años, 2 meses
Puntos: 4
Pregunta Imprimir etiquetas html literalmente

Código PHP:
Ver original
  1. <?php
  2.  
  3. $texto = htmlentities("texto de \"ejemplo\"<a href=\"enlace.com\">enlace</a>");
  4.  
  5. echo $texto;
  6.  
  7. ?>

hasta ahí todo me muestra bien... se imprime texto... <a href="....">...</a>.
Lo que quiero es que algunos codigos se lean como etiquetas html y otros no.


¿ hay alguna manera de hacer eso en una sola cadena de una variable?
colocar algo para que desde el punto A al B lo lea el código como texto y no como etiqueta html ?
  #2 (permalink)  
Antiguo 18/07/2011, 00:25
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Imprimir etiquetas html literalmente

No se puede hacer exactamente lo que dices con dicha función, pero tal vez con un poco de ingenio lo podrías conseguir.

Sería interesante saber y conocer un ejemplo de lo que dices, así podríamos ver que se puede hacer.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 18/07/2011, 09:57
 
Fecha de Ingreso: febrero-2011
Mensajes: 233
Antigüedad: 13 años, 2 meses
Puntos: 4
Respuesta: Imprimir etiquetas html literalmente

Para no confundir:
hay alguna manera de "agarrar" desde un punto A al B.

$texto = "texto de prueba A <a href="">asdas</a>B asdasdassa";
aquí quiero sólo coger y modificar lo que se encuentra entre A y B... me entienden?
  #4 (permalink)  
Antiguo 18/07/2011, 10:10
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Imprimir etiquetas html literalmente

Supongo que si es posible, te sugiero revisar las funciones para cadenas de caracteres.
http://php.net/manual/en/book.strings.php

Con strpos() puede conseguir la posición de determinada sub cadena, luego recortas con substr(), y aplicas htmlentities(), vuelves a pegar las partes, etc.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 18/07/2011, 12:32
 
Fecha de Ingreso: febrero-2011
Mensajes: 233
Antigüedad: 13 años, 2 meses
Puntos: 4
Respuesta: Imprimir etiquetas html literalmente

Tengo el sgte código

Código PHP:
Ver original
  1. <?php
  2.  
  3. $cadena = "<p align=\"center\">texto de prueba</p> [E] <a href=\"enlace.com\">enlace</a>  [/E] <p align=\"center\">texto 2 de prueba</p>";
  4.  
  5. ?>

quiero que desde [E] hasta [/E] tome como una variable( el código) y cosa que le coloco la funcion htmlspecialchars() para que lo imprima tal y como se ve...

la cosa es que imprima así

(centrado)texto de prueba
<a href="enlace.com">...</a>
(centrado)texto2 de prueba
  #6 (permalink)  
Antiguo 18/07/2011, 13:21
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: Imprimir etiquetas html literalmente

¿Por qué preguntas de nuevo lo mismo?
pateketrueke te dio la idea a la perfección
Ni siquiera has probado a usar las funciones que te han dicho, sólo has puesto la cadena que quieres editar. ¿Se supone que lo quieres hecho?
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #7 (permalink)  
Antiguo 18/07/2011, 16:26
 
Fecha de Ingreso: febrero-2011
Mensajes: 233
Antigüedad: 13 años, 2 meses
Puntos: 4
Respuesta: Imprimir etiquetas html literalmente

ok ok vean tengo el sgte código y muestra tal y como yo quise:

Código PHP:
Ver original
  1. <?php
  2.  
  3. $cadena = "<p align=\"center\">texto de prueba</p> [E] <a href=\"enlace.com\">enlace</a> [/E] <p align=\"center\">texto 2 de prueba</p>";
  4.  
  5. $sip = strpos("$cadena", "[E]");
  6. $sip2 = strpos("$cadena", "[/E]");
  7.  
  8. $sip3 = $sip2 - $sip + 5;
  9.  
  10. $codigo = str_replace("[E] ", "", str_replace("[/E]", "", htmlspecialchars(substr("$cadena", "$sip", "$sip3"))));
  11.  
  12. $t1 = str_replace("[E] ", "", substr($cadena, "0", "$sip"));
  13. $t2 = str_replace("[/E] ", "", substr($cadena, "$sip2"));
  14. echo "$t1 $codigo $t2";
  15.  
  16. ?>

pero cuando en $cadena coloco adelante otro "código ([E]..[/E])"

Código PHP:
Ver original
  1. $cadena = "<p align=\"center\">texto de prueba</p> [E] <a href=\"enlace.com\">enlace</a> [/E] <p align=\"center\">texto 2 de prueba</p> [E] <a href=\"enlace2.com\">enlace2</a> [/E]";

no lee el último código...
  #8 (permalink)  
Antiguo 18/07/2011, 16:42
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Imprimir etiquetas html literalmente

Yo en este caso usaría el formato de BBCode, o al menos la técnica de expresiones regulares para conseguirlo.

Te sugiero investigar al respecto, hay algunos buenos ejemplos en el foro.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: etiqueta, html, literal
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 12:55.