Bonjour,
Je débute en POO, et je viens d'amorcer un projet avec le framework CodeIgniter (je sais qu'il n'est plus maintenu, mais il est + abordable que Laravel, c'est la raison pour laquelle j'ai décidé de me faire la main sur celui-ci)
Malgré une doc pas mal foutue, je ne m'en sors carrément pas quand il s'agit d'afficher les données issues de ma DB.
La base de données est donc créée (pas par le biais du framework, j'ai créé mon SQL indépendamment).
Les paramètres de ma DB sont bien renseignés dans le fichier database.php
Ne reste donc qu'à coder au niveau MVC...
Mais tout ce que j'essaie est vain. J'enchaine les erreurs...
J'ai donc une table employes avec une entrée dedans.
Pour afficher les données, voici ce que j'ai piteusement tenté de faire :
Au niveau du modèle (employe.php) :
Au niveau du contrôleur :
Au niveau de la vue :
Et donc l'erreur actuelle est :
( ! ) Fatal error: Call to a member function viewEmploye() on a non-object in C:\wamp\www\codeIgniter\application\controllers\vue.php on line 75
L'erreur est sans doute très parlante, mais... Je ne sais quand même pas comment y remédier !
Si ça vous parait complètement abracadabrant, c'est bien parce que je ne sais vraiment pas comment je dois faire, faute d'avoir trouvé sur le net un exemple qui stipule clairement quoi mettre dans quel fichier...
Merci d'avance pour votre aide !
Je débute en POO, et je viens d'amorcer un projet avec le framework CodeIgniter (je sais qu'il n'est plus maintenu, mais il est + abordable que Laravel, c'est la raison pour laquelle j'ai décidé de me faire la main sur celui-ci)
Malgré une doc pas mal foutue, je ne m'en sors carrément pas quand il s'agit d'afficher les données issues de ma DB.
La base de données est donc créée (pas par le biais du framework, j'ai créé mon SQL indépendamment).
Les paramètres de ma DB sont bien renseignés dans le fichier database.php
Ne reste donc qu'à coder au niveau MVC...
Mais tout ce que j'essaie est vain. J'enchaine les erreurs...
J'ai donc une table employes avec une entrée dedans.
Pour afficher les données, voici ce que j'ai piteusement tenté de faire :
Au niveau du modèle (employe.php) :
<?php
class Employe extends CI_Model {
function __construct()
{
// il parait que cette mention est obligatoire
parent::__construct();
}
function viewEmploye() {
$this->load->database();
$query = $this->db->query('SELECT t_nom_employe, t_prenom_employe, t_commentaire_employe FROM employes');
if($query->num_rows() > 0){
foreach ($query->result_array() as $data) {
echo $data['t_nom_employe'];
echo $data['t_prenom_employe'];
echo $data['t_commentaire_employe'];
}
} else { echo "Pas d'article."; }
$query->free_result();
}
}
Au niveau du contrôleur :
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Vue extends CI_Controller {
public function vueEmploye() {
$this->load->model('Employe');
$data = array();
$data['employesall'] = $this->employe->viewEmploye();
$this->load->view('vue/test', $data);
}
}
Au niveau de la vue :
<?php echo $employesall; ?>
Et donc l'erreur actuelle est :
( ! ) Fatal error: Call to a member function viewEmploye() on a non-object in C:\wamp\www\codeIgniter\application\controllers\vue.php on line 75
L'erreur est sans doute très parlante, mais... Je ne sais quand même pas comment y remédier !
Si ça vous parait complètement abracadabrant, c'est bien parce que je ne sais vraiment pas comment je dois faire, faute d'avoir trouvé sur le net un exemple qui stipule clairement quoi mettre dans quel fichier...
Merci d'avance pour votre aide !