Foros del Web » Programando para Internet » PHP »

Sobre Nok y plantillas en gral

Estas en el tema de Sobre Nok y plantillas en gral en el foro de PHP en Foros del Web. Hola. Estoy haciendo pruebas con el motor de Nok y tengo una duda: cuando quiero poner en una plantilla un texto del tipo {hola} no ...
  #1 (permalink)  
Antiguo 17/10/2003, 13:44
 
Fecha de Ingreso: junio-2002
Ubicación: Buenos Aires, Argentina
Mensajes: 876
Antigüedad: 22 años, 5 meses
Puntos: 0
Sobre Nok y plantillas en gral

Hola.
Estoy haciendo pruebas con el motor de Nok y tengo una duda: cuando quiero poner en una plantilla un texto del tipo {hola} no me lo imprime. O sea, ese texto quisiera que aparezca, va, solo de rompebolas. Pero la pregunta es, se puede? O todo lo que este entre {} son considerados variables y se imprime el contenido de la misma o nada?

Y por favor, ayuda con el post http://www.forosdelweb.com/s/msg159492.html

Muchas gracias.

Última edición por zeus_bsas; 17/10/2003 a las 13:46
  #2 (permalink)  
Antiguo 17/10/2003, 14:15
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
Por lo menos NokTemplate interpreta {algo} como códigos própios que le indican que ahí va una variable ..

Si necesitas mostrar exactamente (literalmente):

{hola} ..

Deberías hacerlo desde el método asignar (que dispone dicho motor de template .. en este caso NokTemplate)

Código PHP:
$html->asignar('TEXTO','{hola}'); 
Y tu plantilla debería hacer referencia a {TEXTO} .. pues es la "variable" que vamos a asinar ese valor (en tu caso ese texto con esos caracteres ..)

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 18/10/2003, 08:51
Nok
 
Fecha de Ingreso: abril-2001
Mensajes: 302
Antigüedad: 23 años, 7 meses
Puntos: 0
Si bien, la solución que te presenta Cluster funciona para algunos casos, si despues de el primer expandir, vuelves a generar otro expandir, se le asignara nulo a la variable. Para superar este inconveniente utiliza los siguientes caracteres especiles

%7B para {
y
%7D para }

de esa manera te quedara %7BHola%7D.

Saludos
Nok.
__________________
La casa de Noktemplate.
Zonaphp.com - Php en español.

¿Que esperas de NokTpl 2? Deja tu comentario.

Blog
Mas o menos asi .
  #4 (permalink)  
Antiguo 18/10/2003, 10:21
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
mm Nok, tienes razón .. en tal caso sería bueno aplicar un:

htmlentities() a todo lo que se mande en $html->asignar() .. Es más .. ¿sería bueno implementarlo dentro del método asignar? .. Tal vez con algún "flag" extra tipo "htmlentities=si/no .."

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 18/10/2003, 11:37
 
Fecha de Ingreso: junio-2002
Ubicación: Buenos Aires, Argentina
Mensajes: 876
Antigüedad: 22 años, 5 meses
Puntos: 0
Coincido, me gusto la idea, seria muy util, y no lo digo por mi caso, sino para asignar a las variables textos correctos, con entidades html.
  #6 (permalink)  
Antiguo 20/10/2003, 02:00
 
Fecha de Ingreso: junio-2002
Ubicación: Buenos Aires, Argentina
Mensajes: 876
Antigüedad: 22 años, 5 meses
Puntos: 0
Cita:
Mensaje Original por Nok
Si bien, la solución que te presenta Cluster funciona para algunos casos, si despues de el primer expandir, vuelves a generar otro expandir, se le asignara nulo a la variable. Para superar este inconveniente utiliza los siguientes caracteres especiles

%7B para {
y
%7D para }

de esa manera te quedara %7BHola%7D.

Saludos
Nok.
Estos "caracteres especiales" son propios de NokTemplate? Porque no son html verdad? O por lo menos los probe como tales y no tienen efecto alguno.
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 13:07.