He estado desarrollando un pequeño script en POO, pero me encuentro con una serie de problemas a la hora de mostrar los resultados en la parte de la vista. Antes de nada, os dejo un ejemplo de cómo tengo programado y organizado todo:
/class/class_user.php
Código PHP:
class users {
//vars
function __construct() {
//constructor
}
function infoUsers($id = null) {
//query
while($row = $this->db->getResult($query)) {
$this->arrayuser[$row['ID']] = array('ID' => $row['ID'],
'name' => $row['name']);
}
return $this->arrayuser;
}
}
Vamos con el index.php, que une la clase con el template:
index.php
Código PHP:
require_once(dirname(__FILE__).'/class/class_user.php');
require_once(dirname(__FILE__).'/template/user.tpl');
user.tpl
Código PHP:
<?php
$users = new users();
$users->infoUsers($id);
foreach($users->arrayuser as $users):
?>
<div class="name"><?php echo $users[name]; ?></div>
<div class="ID"><?php echo $users[ID]; ?></div>
<?php endforeach; ?>
user.tpl
Código PHP:
<?php foreach($users->arrayuser as $users): ?>
<div class="name"><?php echo $users[name]; ?></div>
<div class="ID"><?php echo $users[ID]; ?></div>
<?php endforeach; ?>
Y otra duda más, con este ejemplo:
user.tpl
Código PHP:
<?php
$users = new users();
$users->infoUsers(5);
foreach($users->arrayuser as $users):
?>
<div class="name"><?php echo $users[name]; ?></div>
<div class="ID"><?php echo $users[ID]; ?></div>
<?php endforeach; ?>
<?php
$users->infoUsers(6);
foreach($users->arrayuser as $users):
?>
<div class="name"><?php echo $users[name]; ?></div>
<div class="ID"><?php echo $users[ID]; ?></div>
<?php endforeach; ?>
Código PHP:
<?php
$users = new users();
$users->infoUsers(5);
foreach($users->arrayuser as $users):
?>
<div class="name"><?php echo $users[name]; ?></div>
<div class="ID"><?php echo $users[ID]; ?></div>
<?php endforeach; ?>
<?php
$users2 = new users();
$users2->infoUsers(6);
foreach($users2->arrayuser as $users):
?>
<div class="name"><?php echo $users[name]; ?></div>
<div class="ID"><?php echo $users[ID]; ?></div>
<?php endforeach; ?>