hola a todos!
Estoy comenzando con POO, estuve leyendo bastante teoría, pero ya no entendía nada así que pase a la práctica de una vez y es acá donde comienzan a surgir las dudas.
Estoy siguiendo básicamente el esquema utilizado por
Eugenia Bahit en su pequeño pero interesante libro "POO y MVC en PHP"
Entonces mi duda puntualmente es como presento los datos cuando tengo que utilizar un bucle
for o
while para mostrar los datos?
Este es el ejemplo del libro(un poco modificado):
El controlador hace una consulta a traves del model y junta los datos enviandolos a la lógica de la vista:
controlador Código PHP:
...
$usuario->get($user_data);
$data = array(
'nombre'=>$usuario->nom_usuario,
'email'=>$usuario->email_usuario
);
retornar_vista(VIEW_EDIT_USER, $data);
...
y la vista va poniendo estos datos en el template y lo imprime:
vista Código PHP:
...
function retornar_vista($vista, $data=array()) {
global $diccionario;
$tmp_encabezado = '../site_media/html/globales/encabezado.html';
$encabezado = file_get_contents($tmp_encabezado);
$html = get_template('template');
$html = str_replace('{encabezado}', $encabezado, $html);
$html = str_replace('{subtitulo}', $diccionario['subtitulo'][$vista],$html);
$html = str_replace('{formulario}', get_template($vista), $html);
$html = render_dinamic_data($html, $diccionario['form_actions']);
$html = render_dinamic_data($html, $diccionario['links_menu']);
$html = render_dinamic_data($html, $data);
print $html;
}
...
templatede usuarios :
Código HTML:
Ver original...
<h2>Administración de usuarios
</h2> <a href="/recetas_beta/{VIEW_GET_USER}" title="Buscar usuario" >Editar usuario
</a> <a href="/recetas_beta/{VIEW_SET_USER}" title="Nuevo usuario" >Agregar usuario
</a> {mensaje}
{formulario}
...
formulario usuario (que se introduce dentro de template en
{formulario})
Código HTML:
Ver original<form action="{EDIT}" method="POST">
<input type="text" name="nombre" id="nombre" value="{nombre}" required/> <input type="email" name="email" id="email" readonly="readonly" value="{email}" required/>
<input type="submit" name="enviar" id="enviar" value="Guardar cambios" />
Eso esta muy claro, pero como hago para presentar el dato de muchos usuarios si fuera el caso, donde pongo el "for" o el "while", tengo entendido que poner código php en la vista no se puede....pero en la lógica de la vista no encuentro la forma de hacerlo.
Alguien podria ayudarme a encontrar la manera correcta de hacer esto en POO con MVC?
Desde ya muchas gracias!