Foros del Web » Programando para Internet » PHP »

Problema con NokTemplate (Ejemplo 2)

Estas en el tema de Problema con NokTemplate (Ejemplo 2) en el foro de PHP en Foros del Web. Me he bajado el ejemplo 2 y me da un error que no he sabido como solucionarlo, no se si debe de ser problema de ...
  #1 (permalink)  
Antiguo 13/03/2005, 04:57
 
Fecha de Ingreso: diciembre-2003
Mensajes: 218
Antigüedad: 20 años, 4 meses
Puntos: 0
Problema con NokTemplate (Ejemplo 2)

Me he bajado el ejemplo 2 y me da un error que no he sabido como solucionarlo, no se si debe de ser problema de configuracion del php (server) o otra cosa.

Cuando ejecuto el php del ejemplo 2 (Sin modificar nada). Me da este error.

cuerpo.html
Código HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>{TITULO} - Powered by NokTemplate</title>
</head>
<body>
{CONTENIDO}<br>
</body>
</html> 


Tabla.html
Código HTML:
<table>
<tr>
<td>Nombre:</td>
<td>Apellido:</td>
</tr>
{FILAS}
</table> 

Fila.html
Código HTML:
<tr>
<td>{EL_NOMBRE}</td>
<td>{EL_APELLIDO}</td>
</tr> 

Ejemplo2.php
Código PHP:
<?php
// Incluimos la Clase.
include ('class.NokTemplate.php');

// Creamos una instancia del objeto.
// Definimos el lugar donde se encuentran los templates.
$html = new NokTemplate('./templates');

// Cargamos los templates necesarios y le asignamos una clave,
// o sea tTabla hace referencia a tabla.html y tFila a fila.html
$html->cargar('tCuerpo','cuerpo.html');
$html->cargar('tTabla','tabla.html');
$html->cargar('tFila','fila.html');

// Asignamos a TITULO un texto.
$html->asignar('TITULO','Ejemplo número 2');

// Formaremos una tabla a partir de un array asociativo.
// Que contiene la informacion de las personas. Este podría ser el
// caso de el result de una consulta a un motor de base de datos.
$datos = array('Jose' => 'Perez',      'Carlos' => 'Gonzales',      'Anibal' => 'Hugo');

// Con un bucle formamos la tabla.
foreach ($datos as $nombre => $apellido) {
    
// Asignamos nombre y apellido correspondientemente
    
$html->asignar('EL_NOMBRE'$nombre);
    
$html->asignar('EL_APELLIDO'$apellido);

    
// Ahora al expandir la variable FILAS con el template tFila
    // le indicamos por medio del signo '+' o '.' que le
    // agregue o concatene al contenido ya existente en FILAS el contenido de tFila
    // con sus respectivas variables expandidas. O sea, vamos agregando filas a la tabla
    // a medida que se ejecuta el bucle
    
$html->expandir('FILAS''+tFila');
}

// Una vez armada la tabla, volcamos el contedido de la tabla
// dentro de la variable CONTENIDO
$html->expandir('CONTENIDO''tTabla');

// Para ir terminado expandimos el contenido del template tCuerpo
// en una variable cualquiera, que puede no estar en ningun Template.
// Simplemente para intercambiar los valores de las variables que contenga
// tCuepo, que en este caso son TITULO y CONTENIDO.

$html->expandir('FINAL''tCuerpo');

// Y por último imprimimos la varible que contiene todo ya procesado.
$html->imprimir('FINAL');
?>
Código HTML:
Notice: Undefined index: FILAS in d:\archivos de programa\easyphp1-7\www\class.NokTemplate.php on line 293
Para mas informacion:
Sistema Operativo: Windows XP
Sistema EasyPHP 1.7 (Apache, PHP + MySQL)

Gracias.
  #2 (permalink)  
Antiguo 13/03/2005, 12:01
 
Fecha de Ingreso: marzo-2003
Mensajes: 277
Antigüedad: 21 años, 1 mes
Puntos: 0
a mi me funciona bien ese ejemplo es igual al que tengo

eso si yo tengo el appserv envez de easyphp

a lo que dice la linea 293 es

Código PHP:
    $this->_variablesArray[$variable] .= $nuevoValor
por si a alguien le sirve
__________________
http://www.manuales.astalaweb.com/Mprogramación.htm

diferentes manuales sobre programacion para descargar
  #3 (permalink)  
Antiguo 13/03/2005, 15:39
 
Fecha de Ingreso: diciembre-2003
Mensajes: 218
Antigüedad: 20 años, 4 meses
Puntos: 0
Muchas gracias por contestar.

He encontrado una solucion, aunq no creo q sea la mas apropiada. Pero por lo menos asi desaparace el problema.

En el fichero php.ini (de configuracion del Apache)
Buscar
Código HTML:
; Examples:
;
;   - Show all errors, except for notices
;
;error_reporting = E_ALL & ~E_NOTICE
;
;   - Show only errors
;
;error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR
;
;   - Show all errors
;
error_reporting  =  E_ALL
Y dejarlo asi.

Código HTML:
; Examples:
;
;   - Show all errors, except for notices
;
error_reporting = E_ALL & ~E_NOTICE
;
;   - Show only errors
;
;error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR
;
;   - Show all errors
;
;error_reporting  =  E_ALL
Osea el error_reporting = E_ALL & ~E_NOTICE.

Espero q os sirva. Un saludo.
  #4 (permalink)  
Antiguo 31/03/2005, 07:49
Nok
 
Fecha de Ingreso: abril-2001
Mensajes: 302
Antigüedad: 23 años
Puntos: 0
Hola Spyn_ET. Efectivamente esa es la solución al tu problema, ya que en realidad no es un mensaje de error, sino que un "aviso", que puede ser obviado ya que no causa ningun inconveniente.

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 .
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 14:59.